protected void Page_Load(object sender, EventArgs e) { //-- Filtro las encuestas del usuario logueado. //----------------------------------------------- ViewState_vEncuestaHeaderEntityFilter.OrderBy = "EncuestaNro"; ViewState_vEncuestaHeaderEntityFilter.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; ViewState_vEncuestaHeaderEntityFilter.UserId = MyUsers.GetLoggedUserId(); Menu1.nameSelectedOption = "GOTO_ALIMENTOS_POR_ENCUESTAS"; }
protected void lnkNuevaDieta_Click(object sender, EventArgs e) { CustomBus busCustom = new CustomBus(); EncuestaAlimentariaBus busEncuesta = new EncuestaAlimentariaBus(); EncuestaAlimentariaEntityInsert insertEncuesta = new EncuestaAlimentariaEntityInsert(); EncuestaAlimentariaEntityFilter filter = new EncuestaAlimentariaEntityFilter(); vExtendedPropertiesBus busEp = new vExtendedPropertiesBus(); vExtendedPropertiesEntityFilter filterEp = new vExtendedPropertiesEntityFilter(); //-- Obtengo la cantidad de encuestas configuradas //----------------------------------------------------- filterEp.OpeUserName = Helpers.Operators.Operadores_NVarChar.Igual; filterEp.UserName = Page.User.Identity.Name; DataTable dtEp = busEp.Search(filterEp); if (dtEp != null && dtEp.Rows.Count > 0) { Int32 limiteDeEncuestas = int.Parse("0" + dtEp.Rows[0]["LimiteDeEncuestas"].ToString()); MembershipUser oUser = Membership.GetUser(Page.User.Identity.Name); if (oUser != null) { filter.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filter.UserId = new Guid(oUser.ProviderUserKey.ToString()); DataTable dtEncuesta = busEncuesta.SearchCount(filter); if (dtEncuesta != null && dtEncuesta.Rows.Count > 0) { Int32 cantidadDeEncuestas = int.Parse("0" + dtEncuesta.Rows[0]["Column1"].ToString()); if (cantidadDeEncuestas >= limiteDeEncuestas) { ltrMessage.Text = "<div style='background-color:#ffebe8;color:black;padding:5px;border:solid 1px #dd3c10;font-family:\"lucida grande\",tahoma;'><b>ATENCION</b>: Usted ha llegado al límite de encuestas. Para agregar una encuesta nueva, elimine una previamente creada o bien pida al Administrador del Sistema que amplíe su <b>Limite de Encuestas</b> !!!</div>"; ltrMessage.Visible = true; return; } else { //-- INSERTO ENCUESTA VACIA //------------------------------------------------------------------- insertEncuesta.UserId = MyUsers.GetLoggedUserId(); Int32 encuestaNro = busEncuesta.Insert_Return_Scalar(insertEncuesta); if (encuestaNro > 0) { busCustom.InsertarAlimentos(encuestaNro); Response.Redirect(string.Format("EncuestasAdd.aspx?EncuestaNro={0}", encuestaNro)); } } } } } }
protected void ChangePasswordPushButton_Click(object sender, EventArgs e) { try { MembershipUser oUser = Membership.GetUser(MyUsers.GetLoggedUserId()); if (oUser.ChangePassword(ChangePassword1.CurrentPassword, ChangePassword1.NewPassword)) { ltrMessages.Text = "<span style='color:green;'>Su contraseña se cambió correctamente!</span>"; } else { ltrMessages.Text = "<span style='color:red;'>Oooops, ocurrió un error!<br /> Quizá ingresó mal su contraseña <b>actual</b>. Por favor vuelva a intentarlo!"; } } catch (Exception ex) { Logger.LogExceptionStatic(ex); } }
protected void Page_Load(object sender, EventArgs e) { ltrMensajeHeader.Text = ""; cnt_general.Visible = false; if (Request["EncuestaNro"] == null) { Response.Redirect("EncuestaList.aspx"); } else { //-- Verifico que el UserId sea el dueño de la ENCUESTA //-------------------------------------------------------- filterEncuesta.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filterEncuesta.UserId = MyUsers.GetLoggedUserId(); filterEncuesta.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filterEncuesta.EncuestaNro = int.Parse("0" + Request["EncuestaNro"]); DataTable dtEncuesta = busEncuesta.Search(filterEncuesta); if (dtEncuesta != null && dtEncuesta.Rows.Count > 0) { cnt_general.Visible = true; EncuestaNro = int.Parse("0" + Request["EncuestaNro"]); if (!IsPostBack) { DataToControls(dtEncuesta.Rows[0]); } ltrNroEncuesta.Text = EncuestaNro.ToString(); } else { mensaje.Text = "<span style='color:green;font-size:12px;'>ATENCION: No hemos encontrado el Nro de Encuesta!!!</span>"; } } filterTipoDeAlimentos.OrderBy = "OrdenDeVisualizacion"; filterTipoDieta.OrderBy = "TipoDeDieta"; }
protected void Page_Load(object sender, EventArgs e) { //-- Se puede exportar //-- 1 - UNA SOLA ENCUENTAS //-- 2 - TODAS LAS ENCUESTAS //--------------------------------------------- if (Request.QueryString.Count == 0) { //-- Exporto TODAS //------------------------ exportAll = true; } else if (Request["EncuestaNro"] == null || Request["Listado"] == null) { //-- Exporto UNA UNICA //------------------------ exportAll = false; mensaje.Text = "<span style='color:red;font-size:12px;'>ATENCION: Paso de parámetros incorrectos!!!</span>"; return; } //-- Si estoy exportando una verifico que el usuario //-- logueado sea el DUEÑO. //-------------------------------------------------------- if (exportAll == false) { Int32.TryParse(Request["EncuestaNro"].ToString(), out encuestaNro); Int32.TryParse(Request["listado"].ToString(), out listado); //-- Verifico que el UserId sea el dueño de la ENCUESTA //-------------------------------------------------------- filterEncuesta.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filterEncuesta.UserId = MyUsers.GetLoggedUserId(); filterEncuesta.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filterEncuesta.EncuestaNro = encuestaNro; DataTable dtEncuesta = busEncuesta.Search(filterEncuesta); if ((dtEncuesta != null && dtEncuesta.Rows.Count == 0) || listado == 0) { mensaje.Text = "<span style='color:red;font-size:12px;'>ATENCION: No hemos encontrado el Nro de Encuesta!!!</span>"; return; } if (listado != 1 && listado != 2 && listado != 3) { mensaje.Text = "<span style='color:red;font-size:12px;'>ATENCION: Tipo de Reporte no válido. Contáctese con el Administrador!!!</span>"; return; } } if (listado == 1) { try { #region Listado 1 Listado_AlimentosPorEncuestasBus bus = new Listado_AlimentosPorEncuestasBus(); Listado_AlimentosPorEncuestasEntityFilter filter = new Listado_AlimentosPorEncuestasEntityFilter(); filter.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filter.EncuestaNro = encuestaNro; filter.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filter.UserId = MyUsers.GetLoggedUserId(); filter.OrderBy = "nombre"; DataTable dtAlimentos = bus.Search(filter); if (dtAlimentos != null && dtAlimentos.Rows.Count > 0) { ExportToExcel(dtAlimentos, 1); } #endregion } catch (Exception ex) { Logger.LogExceptionStatic(ex); } } else if (listado == 2) { try { #region Listado 2 Listado_NutrientesPorEncuestasBus busNutrientes = new Listado_NutrientesPorEncuestasBus(); Listado_NutrientesPorEncuestasEntityFilter filterNutrientes = new Listado_NutrientesPorEncuestasEntityFilter(); filterNutrientes.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filterNutrientes.EncuestaNro = encuestaNro; filterNutrientes.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filterNutrientes.UserId = MyUsers.GetLoggedUserId(); filterNutrientes.OrderBy = "EncuestaNro, Nombre"; DataTable dtAlimentos = busNutrientes.Search(filterNutrientes); if (dtAlimentos != null && dtAlimentos.Rows.Count > 0) { ExportToExcel(dtAlimentos, 2); } #endregion } catch (Exception ex) { Logger.LogExceptionStatic(ex); } } else if (listado == 3) { try { #region Listado 3 Listado_NutrientesPorAlimentosBus busNutrientesPorAli = new Listado_NutrientesPorAlimentosBus(); Listado_NutrientesPorAlimentosEntityFilter filterNutrientesPorAli = new Listado_NutrientesPorAlimentosEntityFilter(); filterNutrientesPorAli.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filterNutrientesPorAli.EncuestaNro = encuestaNro; filterNutrientesPorAli.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filterNutrientesPorAli.UserId = MyUsers.GetLoggedUserId(); filterNutrientesPorAli.OrderBy = "EncuestaNro, Alimento, Nutriente"; DataTable dtAlimentos = busNutrientesPorAli.Search(filterNutrientesPorAli); if (dtAlimentos != null && dtAlimentos.Rows.Count > 0) { ExportToExcel(dtAlimentos, 3); } #endregion } catch (Exception ex) { if (w != null) { w.Close(); } Logger.LogExceptionStatic(ex); } } }
protected void Page_Load(object sender, EventArgs e) { //-- Se puede exportar //-- 1 - UNA SOLA ENCUENTAS //-- 2 - TODAS LAS ENCUESTAS => EncuestaNro = 0 //------------------------------------------------ if (Request["EncuestaNro"] == null || Request["Listado"] == null) { mensaje.Text = "<span style='color:red;font-size:12px;'>ATENCION: No hemos encontrado el Nro de Encuesta!!!</span>"; return; } Int32.TryParse(Request["EncuestaNro"].ToString(), out encuestaNro); Int32.TryParse(Request["listado"].ToString(), out listado); bool isAdministrator = false; string[] aRolesUser = Roles.GetRolesForUser(MyUsers.GetLoggedUserName()); foreach (string role in aRolesUser) { if (role.ToUpper() == "ADMINISTRADOR") { isAdministrator = true; } } //-- Si estoy exportando una verifico que el usuario //-- logueado sea el DUEÑO. //-------------------------------------------------------- if (encuestaNro > 0) { if (isAdministrator == false) { //-- Verifico que el UserId sea el dueño de la ENCUESTA //-------------------------------------------------------- filterEncuesta.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filterEncuesta.UserId = MyUsers.GetLoggedUserId(); filterEncuesta.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filterEncuesta.EncuestaNro = encuestaNro; DataTable dtEncuesta = busEncuesta.Search(filterEncuesta); if ((dtEncuesta != null && dtEncuesta.Rows.Count == 0) || listado == 0) { mensaje.Text = "<span style='color:red;font-size:12px;'>ATENCION: No hemos encontrado el Nro de Encuesta!!!</span>"; return; } } } if (listado != 1 && listado != 2 && listado != 3) { mensaje.Text = "<span style='color:red;font-size:12px;'>ATENCION: Tipo de Reporte no válido. Contáctese con el Administrador!!!</span>"; return; } FileStream MyFileStream; string nameFileEncuesta = string.Format("Encuesta-{0}.xls", encuestaNro.ToString().Trim()); string fileName = string.Format("{0}.xls", Guid.NewGuid()); string applicationPath = Server.MapPath(Request.ApplicationPath); if (!applicationPath.EndsWith(@"\")) { applicationPath = applicationPath.Trim() + @"\"; } string fullNameFile = string.Format("{0}Excels\\{1}", applicationPath, fileName); //string fullNameFile = string.Format("{1}Excels\\{1}", applicationPath, fileName); if (listado == 1) { try { #region Listado 1 Listado_AlimentosPorEncuestasBus bus = new Listado_AlimentosPorEncuestasBus(); Listado_AlimentosPorEncuestasEntityFilter filter = new Listado_AlimentosPorEncuestasEntityFilter(); if (encuestaNro > 0) { filter.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filter.EncuestaNro = encuestaNro; } if (!isAdministrator) { filter.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filter.UserId = MyUsers.GetLoggedUserId(); } filter.OrderBy = "EncuestaNro, Nombre"; filter.OpeCantidad = Helpers.Operators.Operadores_Numeric.Igual; filter.Cantidad = 1; DataTable dtAlimentos = bus.Search(filter); if (dtAlimentos != null && dtAlimentos.Rows.Count > 0) { FileStream fs = new FileStream(fullNameFile, FileMode.Create, FileAccess.ReadWrite); w = new StreamWriter(fs); EscribeCabeceraAlimento(dtAlimentos.Rows[0]); int index = 1; foreach (DataRow dr in dtAlimentos.Rows) { if (index == 1) { index = 2; } else { index = 1; } EscribeLineaAlimento(dr, index); } EscribePiePagina(); w.Close(); } #endregion } catch (Exception ex) { mensaje.Text = string.Format("<div style='padding:10px;background-color:Red;color:white;font-family:Arial;font-size:12px;'><b>{0}</b></div>", ex.Message); mensaje.Visible = true; if (w != null) { w.Close(); } Logger.LogExceptionStatic(ex); } } else if (listado == 2) { try { #region Listado 2 Listado_NutrientesPorEncuestasBus busNutrientes = new Listado_NutrientesPorEncuestasBus(); Listado_NutrientesPorEncuestasEntityFilter filterNutrientes = new Listado_NutrientesPorEncuestasEntityFilter(); if (encuestaNro > 0) { filterNutrientes.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filterNutrientes.EncuestaNro = encuestaNro; } if (!isAdministrator) { filterNutrientes.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filterNutrientes.UserId = MyUsers.GetLoggedUserId(); } filterNutrientes.OrderBy = "EncuestaNro, Nombre"; DataTable dtAlimentos = busNutrientes.Search(filterNutrientes); if (dtAlimentos != null && dtAlimentos.Rows.Count > 0) { FileStream fs = new FileStream(fullNameFile, FileMode.Create, FileAccess.ReadWrite); w = new StreamWriter(fs); EscribeCabeceraNutriente(dtAlimentos.Rows[0]); int index = 1; foreach (DataRow dr in dtAlimentos.Rows) { if (index == 1) { index = 2; } else { index = 1; } EscribeLineaNutriente(dr, index); } EscribePiePagina(); w.Close(); } #endregion } catch (Exception ex) { mensaje.Text = string.Format("<div style='padding:10px;background-color:Red;color:white;font-family:Arial;font-size:12px;'><b>{0}</b></div>", ex.Message); mensaje.Visible = true; if (w != null) { w.Close(); } Logger.LogExceptionStatic(ex); } } else if (listado == 3) { try { #region Listado 3 Listado_NutrientesPorAlimentosBus busNutrientesPorAli = new Listado_NutrientesPorAlimentosBus(); Listado_NutrientesPorAlimentosEntityFilter filterNutrientesPorAli = new Listado_NutrientesPorAlimentosEntityFilter(); if (encuestaNro > 0) { filterNutrientesPorAli.OpeEncuestaNro = Helpers.Operators.Operadores_Int.Igual; filterNutrientesPorAli.EncuestaNro = encuestaNro; } if (!isAdministrator) { filterNutrientesPorAli.OpeUserId = Helpers.Operators.Operadores_UniqueIdentifier.Igual; filterNutrientesPorAli.UserId = MyUsers.GetLoggedUserId(); } filterNutrientesPorAli.OrderBy = "EncuestaNro, Alimento, Nutriente"; DataTable dtAlimentos = busNutrientesPorAli.Search(filterNutrientesPorAli); if (dtAlimentos != null && dtAlimentos.Rows.Count > 0) { FileStream fs = new FileStream(fullNameFile, FileMode.Create, FileAccess.ReadWrite); w = new StreamWriter(fs); EscribeCabeceraNutrientePorAli(dtAlimentos.Rows[0]); int index = 1; foreach (DataRow dr in dtAlimentos.Rows) { if (index == 1) { index = 2; } else { index = 1; } EscribeLineaNutrientePorAli(dr, index); } EscribePiePagina(); w.Close(); } #endregion } catch (Exception ex) { mensaje.Text = string.Format("<div style='padding:10px;background-color:Red;color:white;font-family:Arial;font-size:12px;'><b>{0}</b></div>", ex.Message); mensaje.Visible = true; if (w != null) { w.Close(); } Logger.LogExceptionStatic(ex); } } MyFileStream = new FileStream(fullNameFile, FileMode.Open); long FileSize = MyFileStream.Length; byte[] Buffer = new byte[(int)FileSize]; MyFileStream.Read(Buffer, 0, (int)MyFileStream.Length); MyFileStream.Close(); Response.Clear(); Response.Buffer = false; Response.AppendHeader("Content-Type", "application/ms-excel"); Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}", nameFileEncuesta)); Response.AppendHeader("Content-Transfer-Encoding", "binary"); Response.BinaryWrite(Buffer); Response.End(); File.Delete(fullNameFile); }