/// <summary> /// Enviars the mensaje. /// </summary> private void EnviarMensaje(int idCursoCicloLectivo) { Mensaje objMensaje = new Mensaje(); objMensaje.asuntoMensaje = txtAsunto.Value; objMensaje.textoMensaje = textoMensaje.contenido; objMensaje.remitente.username = ObjSessionDataUI.ObjDTUsuario.Nombre; objMensaje.fechaEnvio = DateTime.Now; objMensaje.horaEnvio = Convert.ToDateTime(DateTime.Now.Hour + ":" + DateTime.Now.Minute); objMensaje.cursoCicloLectivo.idCursoCicloLectivo = idCursoCicloLectivo; Persona destinatario; int cantidad = 0; foreach (ListItem item in ddlDestino.Items) { if (item.Selected) { destinatario = new Persona(); destinatario.idPersona = Convert.ToInt32(item.Value); objMensaje.ListaDestinatarios.Add(destinatario); cantidad++; } } BLMensaje objBLMensaje = new BLMensaje(objMensaje); objBLMensaje.Save(); AccionPagina = enumAcciones.Salir; if (cantidad == 1) Master.MostrarMensaje(this.Page.Title, UIConstantesGenerales.MensajeUnicoDestino, enumTipoVentanaInformacion.Satisfactorio); else Master.MostrarMensaje(this.Page.Title, UIConstantesGenerales.MensajeMultiDestino, enumTipoVentanaInformacion.Satisfactorio); }
/// <summary> /// Cargars the mensaje en pantalla. /// </summary> /// <param name="idMensajeDestinatario">The id mensaje destinatario.</param> private void CargarMensajeEnPantalla(int idMensajeDestinatario) { foreach (GridViewRow item in gvwReporte.Rows) { item.BackColor = Color.Transparent; } Mensaje objMensaje = new Mensaje(); objMensaje = listaMensajes.Find(p => p.idMensajeDestinatario == idMensajeDestinatario); if (!objMensaje.leido) { //objMensaje.idMensajeDestinatario = idMensajeDestinatario; objMensaje.leido = true; BLMensaje objBLMensaje = new BLMensaje(objMensaje); objBLMensaje.LeerMensaje(); listaMensajes.Find(p => p.idMensajeDestinatario == idMensajeDestinatario).leido = true; //Master.RaiseCallbackEvent(e.ToString()); CargarGrilla(); } litAsunto.Text = objMensaje.asuntoMensaje; litFecha.Text = objMensaje.fechaEnvio.ToShortDateString() + " " + objMensaje.horaEnvio.Hour.ToString().PadLeft(2, '0') + ":" + objMensaje.horaEnvio.Minute.ToString().PadLeft(2, '0'); litRemitente.Text = objMensaje.remitente.apellido + " " + objMensaje.remitente.nombre + " <b>(" + objMensaje.remitente.tipoPersona.nombre + ")</b>"; litContenido.Text = objMensaje.textoMensaje; divContenido.Visible = true; divPaginacion.Visible = true; divReply.Visible = false; }
/// <summary> /// Eliminars the seleccionados. /// </summary> private void EliminarSeleccionados() { Mensaje objMensajesEliminar = new Mensaje(); for (int i = 0; i < gvwReporte.Rows.Count; i++) { CheckBox checkbox = (CheckBox)gvwReporte.Rows[i].FindControl("checkEliminar"); if (checkbox != null && checkbox.Checked) { int idMensajeDestinatario = 0; Int32.TryParse(checkbox.Text, out idMensajeDestinatario); if (idMensajeDestinatario > 0) objMensajesEliminar.listaIDMensaje += string.Format("{0},", idMensajeDestinatario.ToString()); } } if (!string.IsNullOrEmpty(objMensajesEliminar.listaIDMensaje)) { objMensajesEliminar.listaIDMensaje = objMensajesEliminar.listaIDMensaje.Substring(0, objMensajesEliminar.listaIDMensaje.Length - 1); objMensajesEliminar.idMensajeDestinatario = 1; objMensajesEliminar.idMensaje = 0; objMensajesEliminar.leido = true; objMensajesEliminar.activo = false; objBLMensaje = new BLMensaje(objMensajesEliminar); objBLMensaje.EliminarListaMensajes(); } }
/// <summary> /// Buscars the entidads. /// </summary> /// <param name="entidad">The entidad.</param> private void BuscarMensajes() { Mensaje entidad = new Mensaje(); entidad.destinatario.username = ObjSessionDataUI.ObjDTUsuario.Nombre; CargarLista(entidad); CargarGrilla(); }
/// <summary> /// Cargars the lista. /// </summary> /// <param name="entidad">The entidad.</param> private void CargarLista(Mensaje entidad) { objBLMensaje = new BLMensaje(); listaMensajes = objBLMensaje.GetMensajes(entidad); }
/// <summary> /// Método que se llama al hacer click sobre las acciones de la grilla /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.Web.UI.WebControls.GridViewCommandEventArgs"/> instance containing the event data.</param> protected void gvwReporte_RowCommand(object sender, GridViewCommandEventArgs e) { try { int idMensajeDestinatario = Convert.ToInt32(e.CommandArgument); Mensaje objMensaje = null; switch (e.CommandName) { case "Leer": CargarMensajeEnPantalla(idMensajeDestinatario); GridViewRow row = (GridViewRow)((Control)e.CommandSource).NamingContainer; gvwReporte.Rows[row.RowIndex].BackColor = Color.Gainsboro; break; case "Responder": objMensaje = new Mensaje(); objMensaje = listaMensajes.Find(p => p.idMensajeDestinatario == idMensajeDestinatario); txtAsunto.Text = "Re: " + objMensaje.asuntoMensaje; lblDestinatario.Text = objMensaje.remitente.apellido + " " + objMensaje.remitente.nombre; hdfDestinatario.Value = objMensaje.remitente.idPersona.ToString(); textoMensaje.contenido = "<br /><hr style='border-style: dashed' />" + objMensaje.textoMensaje; btnEnviar.Visible = true; btnVolver.Visible = true; btnEliminar.Visible = false; udpReporte.Visible = false; divContenido.Visible = false; divPaginacion.Visible = false; divReply.Visible = true; break; case "Eliminar": AccionPagina = enumAcciones.Eliminar; propMensaje.idMensajeDestinatario = Convert.ToInt32(e.CommandArgument.ToString()); divContenido.Visible = false; divReply.Visible = false; Master.MostrarMensaje(this.Page.Title, UIConstantesGenerales.MensajeEliminar, enumTipoVentanaInformacion.Confirmación); break; } udpGrilla.Update(); } catch (Exception ex) { Master.ManageExceptions(ex); } }
/// <summary> /// Handles the Click event of the btnEnviar control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected void btnEnviar_Click(object sender, EventArgs e) { Mensaje objMensaje = new Mensaje(); objMensaje.asuntoMensaje = txtAsunto.Text; objMensaje.textoMensaje = textoMensaje.contenido; objMensaje.remitente.username = ObjSessionDataUI.ObjDTUsuario.Nombre; objMensaje.fechaEnvio = DateTime.Now; objMensaje.horaEnvio = Convert.ToDateTime(DateTime.Now.Hour + ":" + DateTime.Now.Minute); Persona destinatario = new Persona(); destinatario.idPersona = Convert.ToInt32(hdfDestinatario.Value); objMensaje.ListaDestinatarios.Add(destinatario); BLMensaje objBLMensaje = new BLMensaje(objMensaje); objBLMensaje.Save(); AccionPagina = enumAcciones.Limpiar; Master.MostrarMensaje(this.Page.Title, UIConstantesGenerales.MensajeUnicoDestino, enumTipoVentanaInformacion.Satisfactorio); }
/// <summary> /// Método que se llama al hacer click sobre las acciones de la grilla /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.Web.UI.WebControls.GridViewCommandEventArgs"/> instance containing the event data.</param> protected void gvwReporte_RowCommand(object sender, GridViewCommandEventArgs e) { try { int idMensajeDestinatario = Convert.ToInt32(e.CommandArgument); Mensaje objMensaje = null; switch (e.CommandName) { case "Leer": foreach (GridViewRow item in gvwReporte.Rows) { item.BackColor = Color.Transparent; } objMensaje = new Mensaje(); objMensaje = listaMensajes.Find(p => p.idMensaje == idMensajeDestinatario); litAsunto.Text = objMensaje.asuntoMensaje; litFecha.Text = objMensaje.fechaEnvio.ToShortDateString() + " " + objMensaje.horaEnvio.Hour.ToString() + ":" + objMensaje.horaEnvio.Minute.ToString(); litRemitente.Text = objMensaje.destinatario.nombre + " " + objMensaje.destinatario.apellido; if (!objMensaje.destinatario.nombre.Contains("-")) litRemitente.Text += " <b>(" + objMensaje.destinatario.tipoPersona.nombre + ")</b>"; litContenido.Text = objMensaje.textoMensaje; divContenido.Visible = true; divPaginacion.Visible = true; GridViewRow row = (GridViewRow)((Control)e.CommandSource).NamingContainer; gvwReporte.Rows[row.RowIndex].BackColor = Color.Gainsboro; break; case "Eliminar": AccionPagina = enumAcciones.Eliminar; propMensaje.idMensajeDestinatario = Convert.ToInt32(e.CommandArgument.ToString()); divContenido.Visible = false; Master.MostrarMensaje(this.Page.Title, UIConstantesGenerales.MensajeEliminar, enumTipoVentanaInformacion.Confirmación); break; } udpGrilla.Update(); } catch (Exception ex) { Master.ManageExceptions(ex); } }
/// <summary> /// Cargars the lista. /// </summary> /// <param name="entidad">The entidad.</param> private void CargarLista(Mensaje entidad) { objBLMensaje = new BLMensaje(); listaMensajes = objBLMensaje.GetMensajesEnviados(entidad); dtMensajes = UIUtilidades.BuildDataTable<Mensaje>(listaMensajes); }
/// <summary> /// Buscars the entidads. /// </summary> /// <param name="entidad">The entidad.</param> private void BuscarMensajes() { Mensaje entidad = new Mensaje(); entidad.destinatario.username = Context.User.Identity.Name; CargarLista(entidad); CargarGrilla(); }