using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Extensiones; public partial class OI_RepReuniones : ClsPaginas { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { // ORDEN ASIGNADAS ViewState["Orden"] = ""; CargaFiltros(); CargaDatosOIMinutas(); CargaDatosReunion(); } } private void CargaFiltros() { TxtFechaI.Text = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).ToShortDateString(); TxtFechaF.Text = DateTime.Now.ToShortDateString(); TxtCFechaInicio.Text = TxtFechaI.Text; TxtCFechaFin.Text = TxtFechaF.Text; } public void CargaDatosReunion() { GVConvocatoria.DataSource = new DataTable(); using (ClsOIEventos ObjProspectos = new ClsOIEventos()) { DateTime FechaI, FechaF; FechaI = TxtCFechaInicio.Text.ToDate(); FechaF = TxtCFechaFin.Text.ToDate(); if (ObjProspectos.GetRepEventos(-1, 11, -1, "-1", "-1", -1, -1, -1, -1, -1, -1, "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FechaI, FechaF)) { GVConvocatoria.DataSource = ObjProspectos.DtResultados.FiltraParametros("", "FechaInicio DESC"); } } GVConvocatoria.DataBind(); UpContenido.Update(); } public void CargaDatosOIMinutas() { using (ClsOIEventos ObjProspectos = new ClsOIEventos()) { DateTime FechaI, FechaF; int CveEventoEstatus; FechaI = TxtFechaI.Text.ToDate(); FechaF = TxtFechaF.Text.ToDate(); if (DdlEventoEstatus.SelectedValue.ToEntero() > 0) CveEventoEstatus = DdlEventoEstatus.SelectedValue.ToEntero(); else CveEventoEstatus = -1; if (ObjProspectos.GetRepEventos(-1, 5, -1, "-1", "-1", -1, -1, -1, -1, -1, -1, "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FechaI, FechaF)) ViewState["DTOIMinutas"] = ObjProspectos.DtResultados; } if (ViewState["Orden"].ToString() != string.Empty) { CargaGridOIMinutas(ViewState["Orden"].ToString()); } else { CargaGridOIMinutas(""); } UpContenido.Update(); } protected void GvDatosOIMinutas_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { // e.Row.Cells(0).Width = Unit.Pixel(100) 'FechaInicio // e.Row.Cells(1).Width = Unit.Pixel(200) 'Asunto // e.Row.Cells(2).Width = Unit.Pixel(550) 'Descripcion // e.Row.Cells(3).Width = Unit.Pixel(70) 'TareasTotal //e.Row.FCLiteral("LtlFechaInicio").Text = string.Format("{1}", e.Row.DBCampo("CveEvento"), e.Row.DBCampo("FechaInicio").ToDateTime().ToString("dd/MM/yyyy")); //e.Row.FCLiteral("LtlAsunto").Text = string.Format("{1}", e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto")); } } //protected void LbOrden_Click(object sender, EventArgs e) //{ // string Orden = ""; // string Campo = ""; // Literal Literal = null/* TODO Change to default(_) if this is not a reference type */; // const string OrdenInicial = ""; // string[] Arg = new string[3]; // Arg = (LinkButton)sender.CommandArgument().ToString.Split(';'); // Campo = Arg[0]; // Literal = (Literal)(LinkButton)sender.NamingContainer.FindControl("Img" + Campo.Replace(",", "_")); // if (ViewState(string.Format("O{0}", Campo)) != null && ViewState(string.Format("O{0}", Campo)).ToString == string.Format("{0} DESC", Campo)) // { // ViewState(string.Format("O{0}", Campo)) = string.Format("{0} ASC", Campo); // Literal.Text = string.Format(""); // } // else // { // ViewState(string.Format("O{0}", Campo)) = string.Format("{0} DESC", Campo); // Literal.Text = string.Format(""); // } // Orden = OrdenInicial + ViewState(string.Format("O{0}", Campo)).ToString; // ViewState("Orden") = Orden; // CargaGridOIMinutas(Orden); //} private void CargaGridOIMinutas(string Orden) { if (Orden != string.Empty) { DataView DV = new DataView((DataTable)ViewState["DTOIMinutas"], "", Orden, DataViewRowState.CurrentRows); GvDatosOIMinutas.DataSource = DV.ToTable(); DV.Dispose(); } else { GvDatosOIMinutas.DataSource = (DataTable)ViewState["DTOIMinutas"]; } GvDatosOIMinutas.DataBind(); } protected void BtnConsultar_Click(object sender, EventArgs e) { CargaDatosOIMinutas(); UpContenido.Update(); } protected void BtnCargarReunion_Click(object sender, EventArgs e) { CargaDatosReunion(); UpContenido.Update(); } protected void LnkAddMinuta_Click(object sender, EventArgs e) { GridViewRow gvrow = (GridViewRow)((LinkButton)sender).NamingContainer; int RCveEvento = gvrow.DataKey("CveEvento").ToEntero(); bool Continuar = false; int CveEvento = -1; List LCveUsuarioCCP = new List(); using (ClsOIEventos ObjOI_E = new ClsOIEventos()) { if (ObjOI_E.GetEventosUsuario2(RCveEvento, UsuarioActual.CveEmpresa)) { LCveUsuarioCCP.Clear(); foreach (System.Data.DataRow item in ObjOI_E.DtResultados.Select("CveEvento >0")) { int CveUsuario = item["CveUsuario"].ToString().ToEntero(); LCveUsuarioCCP.Add(CveUsuario); } } } int Folio = -1; using (ClsOIEventos ObjOI_E = new ClsOIEventos()) { if (ObjOI_E.GetEventos2(RCveEvento, UsuarioActual.CveEmpresa) && ObjOI_E.DtResultados.Rows.Count > 0) { System.Data.DataRow drow = ObjOI_E.DtResultados.Rows[0]; ObjOI_E.IniciaTransacSQL(); Continuar = ObjOI_E.AddOI_Eventos2(OITipoEventos.Minuta, drow["Asunto"].ToString(), drow["descripcion"].ToString(), drow["Prioridad"].ToString().ToEntero(), drow["cveUsuarioDe"].ToString().ToEntero(), drow["cveUsuarioPara"].ToString().ToEntero(), string.Format("{0:yyyy/MM/dd HH:mm}", drow["fechaInicio"]), string.Format("{0:yyyy/MM/dd HH:mm}", drow["fechaFin"]), drow["cveRevision"].ToString().ToEntero(), "", LCveUsuarioCCP, new List(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CorreoExterno: drow["CorreoExterno"].ToString(), Lugar: drow["Lugar"].ToString(), CveEventoPadre: RCveEvento); CveEvento = ObjOI_E.CveEvento; Folio = ObjOI_E.Folio; if (CveEvento == 0) { Continuar = false; } if (Continuar) { Continuar = ObjOI_E.UpdateEstatusEvento2(2, -1, RCveEvento, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa); } if (Continuar) { ObjOI_E.Commit(); ObjEventosCorreo o = ObjOI_E.objCorreo; } else { ObjOI_E.RollBack(); Continuar = false; } } } if (Continuar) { BtnCargarReunion_Click(null, null); this.Alert(string.Format("Se ha iniciado la minuta
para ir a la minuta click aquí", CveEvento), ModExtensiones.TipoMensaje.ToastInformacion, "", 0); } } protected void LnkEnviarRecordatorio_Click(object sender, EventArgs e) { GridViewRow gvrow = (GridViewRow)((LinkButton)sender).NamingContainer; int RCveEvento = gvrow.DataKey("CveEvento").ToEntero(); enviarConvocatoria(RCveEvento); Alert("se ha enviado la convocatoria",ModExtensiones.TipoMensaje.ToastInformacion); } private string GetDominio(string addstr = "") { return string.Format("{0}/{1}", HttpContext.Current.Request.Url.ToString().Replace(HttpContext.Current.Request.Url.PathAndQuery, ""), addstr); } private void enviarConvocatoria(int RCveEvento) { string Body; Asuntoconvocatoria = "Convocatoria: "; Body = MailgetBodyConvocatoria(RCveEvento); string ArrayCC = ""; //ViewState("Para") = GlobalDTUsuarios(CveUsuarioIng)(0)("correo").ToString; //ViewState("Asunto") = string.Format("SIG - Minuta {0}", TxtAsunto.Text); //ViewState("Body") = Body; //System.Threading.Thread Hilo = new System.Threading.Thread(MandaCorreo); //Hilo.Start(); string abre = ""; using (ClsOIEventos ObjOI_E = new ClsOIEventos()) { if (ObjOI_E.GetEventosUsuario2(RCveEvento, UsuarioActual.CveEmpresa) && ObjOI_E.DtResultados != null && ObjOI_E.DtResultados.Rows.Count > 0) { foreach (System.Data.DataRow item in ObjOI_E.DtResultados.Rows) { if (item["Correo"].ToString().Trim().Length > 0) ArrayCC = string.Format("{0}{1}{2}", ArrayCC, abre, item["Correo"].ToString().Trim()); abre = ";"; } } } List LSRutasMail = new List(); ClsSisMail.ArchivoMail mailfile = new ClsSisMail.ArchivoMail { Ruta = string.Format("{0}Imagenes\\Bell.png", ModExtensiones.DirectorioBaseEmpresas), NombreArchivo = "Bell.png" }; LSRutasMail.Add(mailfile); ClsSisMail.ArchivoMail itemMail = new ClsSisMail.ArchivoMail(); ClsSisMail Mail = new ClsSisMail(); Mail.SendMail(EmpresaNotificaciones, get_GlobalDTUsuarios(UsuarioActual.CveUsuario).Rows[0]["correo"].ToString()+";" + CorreoExternoconvocatoria, Asuntoconvocatoria, Body, CCP: ArrayCC, Archivos: LSRutasMail); } private string Asuntoconvocatoria; private string CorreoExternoconvocatoria; private string MailgetBodyConvocatoria(int RCveEvento) { int Folio = 0; string Link = ""; string Asunto = ""; string Acuerdos = ""; string Descripcion = ""; DateTime DFechai = DateTime.MinValue; DateTime DFechaf = DateTime.MinValue; string UsuarioDe = ""; string UsuarioPara = ""; string UsuarioDeAbr = ""; System.Data.DataTable dttareas; using (ClsOIEventos ObjOI_E = new ClsOIEventos()) { if (ObjOI_E.GetEventos2(RCveEvento, UsuarioActual.CveEmpresa) && ObjOI_E.DtResultados.Rows.Count > 0) { System.Data.DataRow drow = ObjOI_E.DtResultados.Rows[0]; UsuarioDe = drow["NombreRegistro"].ToString(); Folio = drow["Folio"].ToString().ToEntero(); Link = GetDominio(string.Format("OI/ConvocatoriaDetalle.aspx?CveEvento={0}", RCveEvento)); Asuntoconvocatoria = string.Format("⏰ {1} te ha invitado a una reunión, {0}", drow["Asunto"].ToString(), UsuarioDe); CorreoExternoconvocatoria =drow["CorreoExterno"].ToString(); Asunto = drow["Asunto"].ToString(); Descripcion = drow["Descripcion"].ToString(); Acuerdos = drow["Acuerdos"].ToString(); DateTime.TryParse(drow["FechaInicio"].ToString(), out DFechai); DateTime.TryParse(drow["FechaFin"].ToString(), out DFechaf); //OIE.[CveEvento], OIE.[CveTipoEvento], OIE.[Folio], OIE.[Asunto], OIE.[Descripcion], OIE.[Prioridad], OIE.[CveUsuarioDe], OIE.[CveUsuarioPara], //OIE.[CveEventoEstatus], OIE.[FechaInicio], OIE.[FechaFin], OIE.[FechaRealTermino], OIE.[CveRevision], OIE.[Archivo], OIE.[FechaIng], //OIE.[CveUsuarioIng], OIE.[CveEmpresa], OIE.[CveUsuarioModifico], OIE.[Avance] NombreRegistro } ObjOI_E.GetEventos2(-1, UsuarioActual.CveEmpresa, RCveEvento); dttareas = ObjOI_E.DtResultados; } if (UsuarioDe != null) { string[] str = UsuarioDe.Split(' '); if (str.Length > 0 && str[0].Length > 0) { UsuarioDeAbr = str[0].Substring(0, 1).ToUpper(); } if (str.Length > 1 && str[1].Length > 0) { UsuarioDeAbr = string.Format("{0}{1}", UsuarioDeAbr, str[1].Substring(0, 1).ToUpper()); } } string UsuariParaAbr = ""; if (UsuarioPara != null) { string[] str = UsuarioPara.Split(' '); if (str.Length > 0 && str[0].Length > 0) { UsuariParaAbr = str[0].Substring(0, 1).ToUpper(); } if (str.Length > 1 && str[1].Length > 0) { UsuariParaAbr = string.Format("{0}{1}", UsuariParaAbr, str[1].Substring(0, 1).ToUpper()); } } StringBuilder StrMail = new StringBuilder(); StrMail.Append(""); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
SIG Notificaciones
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append(" "); StrMail.Append(" "); StrMail.Append(" "); StrMail.Append(" "); StrMail.Append(" "); StrMail.Append(" "); StrMail.Append("
"); StrMail.Append(" Moderador:"); StrMail.Append($" {UsuarioDeAbr}"); StrMail.Append($" {UsuarioDe}
"); StrMail.Append(" Fecha:"); StrMail.Append($" {DFechai: dd} de {DFechai: MMMM yyyy HH:mm}
"); StrMail.Append("
"); StrMail.Append(" Convocatoria "); StrMail.Append(" "); StrMail.Append(" "); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append(""); StrMail.Append("
"); StrMail.Append($" {Asunto}"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append(" Folio:"); StrMail.Append($" {Folio}"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append($" {Descripcion}"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append(" ORDEN DEL DÍA"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append(Acuerdos); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append($" Minuta"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append("
"); StrMail.Append(""); return StrMail.ToString(); } }