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));
                        }
                    }
                }
            }
        }
    }
Beispiel #3
0
    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";
    }
Beispiel #5
0
    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);
    }