Beispiel #1
0
        /// <summary>
        /// Deleta uma nova permissão
        /// </summary>
        /// <param name="permissao">The permissao.</param>
        public void Delete(PermissoesDaSimulacao permissao)
        {
            ITransaction tran = session.BeginTransaction();

            session.Delete(permissao);
            tran.Commit();
        }
        /// <summary>
        /// Builds the model.
        /// </summary>
        /// <param name="modelView">The model view.</param>
        /// <returns></returns>
        public static PermissoesDaSimulacao BuildModel(PermissoesDaSimulacaoModelView modelView)
        {
            PermissoesDaSimulacao model = new PermissoesDaSimulacao()
            {
                Id                     = modelView.Id,
                NivelMaximo            = modelView.NivelMaximo,
                DiscoverCustos         = modelView.DiscoverCustos,
                DiscoverColunasDeCusto = modelView.DiscoverColunaDeCustos,
                FazAprovacao           = modelView.FazAprovacao
            };

            return(model);
        }
        /// <summary>
        /// Builds the model view.
        /// </summary>
        /// <param name="modelView">The model view.</param>
        /// <returns></returns>
        public static PermissoesDaSimulacaoModelView  BuildModelView(PermissoesDaSimulacao model)
        {
            PermissoesDaSimulacaoModelView modelView = new PermissoesDaSimulacaoModelView()
            {
                Id                     = model.Id,
                NivelMaximo            = model.NivelMaximo,
                DiscoverCustos         = model.DiscoverCustos,
                Role                   = model.Role.Id,
                DiscoverColunaDeCustos = model.DiscoverColunasDeCusto,
                FazAprovacao           = model.FazAprovacao,
                TipoDeCalculo          = model.TipoDeCalculo.Id
            };

            return(modelView);
        }
        /// <summary>
        /// Retona a View com base no IdDaSimulacao
        /// </summary>
        /// <param name="idSimulacao">The identifier simulacao.</param>
        /// <param name="geraPdf">if set to <c>true</c> [gera PDF].</param>
        /// <returns></returns>
        public ActionResult Vizualizar(int idSimulacao, bool geraPdf)
        {
            var produto = produtoDAO.GetById(idSimulacao);

            ViewBag.Produto = produto;

            ViewBag.FormulaBase         = produto.Formula;
            ViewBag.RendimentoEscolhido = produto.Rendimento;

            Usuario usuario = (Usuario)Session["usuario"];
            Role    role    = roleDAO.GetById((int)Session["role"]);

            ///Permissões
            PermissoesDaSimulacao permissoes = permissaoDAO.GetByRole(role);

            ViewBag.Permissoes = permissoes;

            if (!permissoes.DiscoverColunasDeCusto)
            {
                ViewBag.HiddenCol = "hidden";
            }
            else
            {
                ViewBag.HiddenCol = "";
            }


            //Base
            ViewBag.EstruturaBase = (from estrutura in produto.Estrutura
                                     where estrutura.Nivel <= permissoes.NivelMaximo
                                     select estrutura).ToList();
            //Gera Pdf
            if (geraPdf)
            {
                var viewPdf = new ViewAsPdf()
                {
                    ViewName    = "Vizualizar",
                    IsGrayScale = true,
                    Model       = produto.Estrutura
                };
                return(viewPdf);
            }
            return(View(produto.Estrutura));
        }
        public async Task <ActionResult> Simulacao(ParametrosDaSimulacao parametros)
        {
            Response.Cache.SetCacheability(HttpCacheability.NoCache); // HTTP 1.1.
            Response.Cache.AppendCacheExtension("no-store, must-revalidate");
            Response.AppendHeader("Pragma", "no-cache");              // HTTP 1.0.
            Response.AppendHeader("Expires", "0");                    // Proxies.

            if (!SimulacaoValidate(parametros))
            {
                ViewBag.Filial = new SelectList(filiaisDAO.Get(),
                                                "codigo",
                                                "descricaoResumida");
                return(View("Parametros", parametros));
            }
            ///Permissões
            Usuario usuario = (Usuario)Session["usuario"];
            Role    role    = roleDAO.GetById((int)Session["role"]);
            PermissoesDaSimulacao permissoes = permissaoDAO.GetByRole(role);

            /* Produto Simulacao*/
            Produto produtoSimulacao = await produtoDAO.GetByCodigoAsync(parametros.CodigoDoProduto.Substring(0, 15),
                                                                         parametros.Filial,
                                                                         parametros.FormulaSimulacao,
                                                                         permissoes.TipoDeCalculo.Id);

            ViewBag.ProdutoSimulacao = produtoSimulacao;

            /*Produto Base*/
            Produto produtoBase = await produtoDAO.GetByCodigoAsync(parametros.CodigoDoProduto.Substring(0, 15),
                                                                    parametros.Filial,
                                                                    parametros.FormulaBase,
                                                                    permissoes.TipoDeCalculo.Id);

            ViewBag.ProdutoBase = produtoBase;


            //
            ViewBag.FormulaSimulacao = parametros.FormulaSimulacao ?? produtoSimulacao.Formula;
            ViewBag.FormulaBase      = parametros.FormulaBase ?? produtoBase.Formula;

            ViewBag.RendimentoEscolhido = produtoDAO.GetRendimentoLast(parametros.CodigoDoProduto,
                                                                       parametros.Filial);

            //Permissões
            ViewBag.Permissoes = permissoes;

            if (!permissoes.DiscoverColunasDeCusto)
            {
                ViewBag.HiddenCol = "hidden";
            }
            else
            {
                ViewBag.HiddenCol = "";
            }


            //Simulação
            var EstruturaDoProduto = (from estrutura in produtoSimulacao.Estrutura
                                      where estrutura.Nivel <= permissoes.NivelMaximo
                                      select estrutura).ToList();

            //Base
            ViewBag.EstruturaBase = (from estrutura in produtoBase.Estrutura
                                     where estrutura.Nivel <= permissoes.NivelMaximo
                                     select estrutura).ToList();


            return(View(EstruturaDoProduto));
        }