コード例 #1
0
        public ActionResult Editar(ContaPagarModel model)
        {
            //Se não tiver login, encaminhar para a tela de login
            if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao))
            {
                return(RedirectToAction("Login", "Usuario"));
            }

            if (!SessaoUsuario.SessaoLogin.Administrador)
            {
                ViewBag.MensagemErro = "Para editar uma conta é necessário " +
                                       $"logar com um contaPagar administrador.";
                return(View("SemPermissao"));
            }

            //Valida a entidade recebida
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            //Converte para DTO
            ContaPagarDto contaPagarDto = new ContaPagarDto();
            string        mensagemErro  = "";

            if (!model.ConverterModelParaDto(ref contaPagarDto, ref mensagemErro))
            {
                ViewBag.Mensagem = mensagemErro;
                return(View("Erro"));
            }

            //Preparar requisição e retorno
            RetornoDto retorno = new RetornoDto();
            RequisicaoEntidadeDto <ContaPagarDto> requisicaoDto = new RequisicaoEntidadeDto <ContaPagarDto>()
            {
                EntidadeDto   = contaPagarDto,
                Identificacao = SessaoUsuario.SessaoLogin.Identificacao,
                IdUsuario     = SessaoUsuario.SessaoLogin.IdUsuario
            };

            //Consumir o serviço
            ContaPagarBll contaPagarBll = new ContaPagarBll(true);

            contaPagarBll.Editar(requisicaoDto, ref retorno);

            //Tratar o retorno
            if (retorno.Retorno == false)
            {
                ModelState.AddModelError("", retorno.Mensagem);
                return(View(model));
            }

            TempData["Retorno"] = "ALTERADO";

            //Voltar para o visualizar uma conta
            return(RedirectToAction("Index"));
        }
コード例 #2
0
        public ActionResult Incluir(ContaPagarModel model)
        {
            //Se não tiver login, encaminhar para a tela de login
            if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao))
            {
                return(RedirectToAction("Login", "Usuario"));
            }

            //Validar a model recebida
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            //Converter para DTO
            ContaPagarDto contaPagarDto = new ContaPagarDto();
            string        mensagemErro  = "";

            if (!model.ConverterModelParaDto(ref contaPagarDto, ref mensagemErro))
            {
                ModelState.AddModelError("Servico", $"Erro ao converter para Dto: {mensagemErro}");
                return(View(model));
            }

            contaPagarDto.Id = Guid.NewGuid();

            //Preparar requisição e retorno
            RetornoDto retorno = new RetornoDto();
            RequisicaoEntidadeDto <ContaPagarDto> requisicaoDto = new RequisicaoEntidadeDto <ContaPagarDto>()
            {
                EntidadeDto   = contaPagarDto,
                Identificacao = SessaoUsuario.SessaoLogin.Identificacao,
                IdUsuario     = SessaoUsuario.SessaoLogin.IdUsuario
            };

            //Consumir o serviço
            ContaPagarBll ContaPagarBll = new ContaPagarBll(true);

            ContaPagarBll.Incluir(requisicaoDto, ref retorno);

            //Verificar o retorno
            if (retorno.Retorno == false)
            {
                //Se houver erro, exibir na tela de inclusão
                ModelState.AddModelError("", retorno.Mensagem);
                return(View(model));
            }

            TempData["Retorno"] = "INCLUIDO";

            //Retornar para index
            return(RedirectToAction("Index"));
        }