예제 #1
0
        public Models.AreaPreventa Select(Int32 ta200_idareapreventa)
        {
            OpenDbConn();

            DAL.AreaPreventa cAreaPreventa = new DAL.AreaPreventa(cDblib);
            return(cAreaPreventa.Select(ta200_idareapreventa));
        }
예제 #2
0
        public Models.PerfilesEdicion obtenerPerfilesEdicionUsuario(System.Security.Principal.IPrincipal User, bool soyLider, int ta201_idsubareapreventa)
        {
            OpenDbConn();

            Models.PerfilesEdicion oPE = new Models.PerfilesEdicion();

            //ficepi
            oPE.idficepi = int.Parse(HttpContext.Current.Session["IDFICEPI_PC_ACTUAL"].ToString());

            //Lider
            oPE.soyLider = soyLider;

            //Administrador
            if (User.IsInRole("A") || User.IsInRole("SA"))
            {
                oPE.soyAdministrador = true;
            }

            //Super editor
            if (oPE.soyAdministrador || oPE.soyLider)
            {
                oPE.soySuperEditor = true;
            }

            //Figura área
            if (User.IsInRole("RAPREV") || User.IsInRole("DAPREV") || User.IsInRole("CAPREV") || User.IsInRole("IAPREV"))
            {
                oPE.soyFiguraArea = true;
            }

            //Figura subárea
            if (User.IsInRole("RSAPREV") || User.IsInRole("DSAPREV") || User.IsInRole("CSAPREV"))
            {
                oPE.soyFiguraSubarea = true;
            }

            //Figura subarea actual y posible lider
            DAL.SubareaPreventa    cSubarea = new DAL.SubareaPreventa(cDblib);
            Models.SubareaPreventa oSubarea = cSubarea.Select(ta201_idsubareapreventa);

            if (oSubarea != null && oSubarea.t001_idficepi_responsable == oPE.idficepi)
            {
                oPE.soyFiguraSubareaActual = true;
            }

            DAL.FiguraSubareaPreventa           cFSP   = new DAL.FiguraSubareaPreventa(cDblib);
            List <Models.FiguraSubareaPreventa> lstFSP = cFSP.ObtenerFigurasSubareaUsuario(ta201_idsubareapreventa, oPE.idficepi);

            foreach (Models.FiguraSubareaPreventa o in lstFSP)
            {
                if (o.ta203_figura == "L")
                {
                    oPE.soyPosibleLider = true;
                }
                else
                {
                    oPE.soyFiguraSubareaActual = true;
                }
            }

            //Figura area actual
            if (oSubarea != null)
            {
                DAL.AreaPreventa    cArea = new DAL.AreaPreventa(cDblib);
                Models.AreaPreventa oArea = cArea.Select(oSubarea.ta200_idareapreventa);

                if (oArea != null && oArea.t001_idficepi_responsable == oPE.idficepi)
                {
                    oPE.soyFiguraAreaActual = true;
                }

                DAL.FiguraAreaPreventa           cFAP   = new DAL.FiguraAreaPreventa(cDblib);
                List <Models.FiguraAreaPreventa> lstFAP = cFAP.ObtenerFigurasAreaUsuario(oArea.ta200_idareapreventa, oPE.idficepi);

                if (lstFAP.Count > 0)
                {
                    oPE.soyFiguraAreaActual = true;
                }
            }

            //comercial
            if (User.IsInRole("COMS"))
            {
                oPE.soyComercial = true;
            }

            return(oPE);
        }