Exemplo n.º 1
0
        /// <summary>
        /// Obtem uma taxa de entrega  e converte em Model
        /// </summary>
        /// <param name="id"></param>
        /// <param name="model"></param>
        /// <param name="mensagemErro"></param>
        /// <returns></returns>
        private bool ObterTaxaEntrega(Guid id, ref TaxaEntregaModel model, ref string mensagemErro)
        {
            //Preparar a requisição e o retorno
            RetornoObterDto <TaxaEntregaDto> retorno = new RetornoObterDto <TaxaEntregaDto>();
            RequisicaoObterDto requisicaoDto         = new RequisicaoObterDto()
            {
                Id            = id,
                Identificacao = SessaoUsuario.SessaoLogin.Identificacao,
                IdUsuario     = SessaoUsuario.SessaoLogin.IdUsuario
            };

            //Consumir o serviço
            TaxaEntregaBll produtoBll = new TaxaEntregaBll(true);

            produtoBll.Obter(requisicaoDto, ref retorno);

            //Tratar o retorno
            if (retorno.Retorno == false)
            {
                mensagemErro = retorno.Mensagem;
                return(false);
            }
            else
            {
                //Converter para Model
                return(model.ConverterDtoParaModel(retorno.Entidade, ref mensagemErro));
            }
        }
Exemplo n.º 2
0
        public ActionResult Editar(TaxaEntregaModel model)
        {
            //Se não tiver login, encaminhar para a tela de login
            if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao))
            {
                return(RedirectToAction("Login", "Usuario"));
            }

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

            //Converte para DTO
            TaxaEntregaDto taxaEntregaDto = new TaxaEntregaDto();
            string         mensagemErro   = "";

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

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

            //Consumir o serviço
            TaxaEntregaBll taxaEntregaBll = new TaxaEntregaBll(true);

            taxaEntregaBll.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 da taxa de entrega
            return(RedirectToAction("Index"));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Chama a tela para incluir/alterar uma lista de taxas de entrega
        /// </summary>
        /// <returns></returns>
        public ActionResult ConfigurarTaxas()
        {
            //Se não tiver login, encaminhar para a tela de login
            if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao))
            {
                return(RedirectToAction("Login", "Usuario"));
            }

            //Taxas a serem incluídas
            List <TaxaEntregaModel> model          = new List <TaxaEntregaModel>();
            TaxaEntregaBll          taxaEntregaBll = new TaxaEntregaBll(false);
            BaseRequisicaoDto       requisicaoDto  = new BaseRequisicaoDto()
            {
                Identificacao = SessaoUsuario.SessaoLogin.Identificacao,
                IdUsuario     = SessaoUsuario.SessaoLogin.IdUsuario
            };

            // Obter a lista com bairros e taxas
            RetornoObterListaDto <TaxaEntregaDto> retornoDto = new RetornoObterListaDto <TaxaEntregaDto>();

            if (!taxaEntregaBll.ObterListaBairrosComTaxa(requisicaoDto, ref retornoDto))
            {
                ViewBag.MensagemErro = retornoDto.Mensagem;
                return(View("Erro"));
            }

            // Converter e add a lista da model
            string mensagemErro = "";

            foreach (var tax in retornoDto.ListaEntidades)
            {
                TaxaEntregaModel taxaModel = new TaxaEntregaModel();
                if (!taxaModel.ConverterDtoParaModel(tax, ref mensagemErro))
                {
                    ViewBag.MensagemErro = mensagemErro;
                    return(View("Erro"));
                }

                model.Add(taxaModel);
            }

            TempData["Retorno"] = "INCLUINDO";

            //Chamar a view
            return(View(model));
        }
Exemplo n.º 4
0
        /// <summary>
        /// Chama a tela para visualizar uma aaxa de entrega
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult Visualizar(Guid id)
        {
            //Se não tiver login, encaminhar para a tela de login
            if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao))
            {
                return(RedirectToAction("Login", "Usuario"));
            }

            //Model a ser populada
            TaxaEntregaModel model           = new TaxaEntregaModel();
            string           mensagemRetorno = "";

            //Obtem a taxa de entrega pelo ID
            if (!this.ObterTaxaEntrega(id, ref model, ref mensagemRetorno))
            {
                ViewBag.Mensagem = mensagemRetorno;
                return(View("Erro"));
            }

            TempData["Retorno"] = "VISUALIZANDO";

            //Chamar a view
            return(View(model));
        }