예제 #1
0
        /// <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);
        }
예제 #2
0
 /// <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;
 }
예제 #3
0
 /// <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();
     }
 }
예제 #4
0
 /// <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();
 }
예제 #5
0
 /// <summary>
 /// Cargars the lista.
 /// </summary>
 /// <param name="entidad">The entidad.</param>
 private void CargarLista(Mensaje entidad)
 {
     objBLMensaje = new BLMensaje();
     listaMensajes = objBLMensaje.GetMensajes(entidad);
 }
예제 #6
0
 /// <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);
     }
 }
예제 #7
0
        /// <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);
        }
예제 #8
0
        /// <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);
            }
        }
예제 #9
0
 /// <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);
 }
예제 #10
0
 /// <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();
 }