示例#1
0
 public IActionResult Editar(Empresa entidade)
 {
     _servico.Editar(entidade);
     return(Ok());
 }
        public ActionResult Editar(EmpresaConfigEditarViewModel model)
        {
            var empresaConfigGarantia = _unitOfWork.EmpresaConfigRepository.ConsultarPorIdEmpresa(model.IdEmpresaGarantia);

            if (empresaConfigGarantia == null)
            {
                ModelState.AddModelError(nameof(model.IdEmpresaGarantia), "Empresa Garantia não encontrada.");
            }

            if (model.IdEmpresa == model.IdEmpresaGarantia && !model.EmpresaFazGarantia)
            {
                ModelState.AddModelError(nameof(model.EmpresaFazGarantia), "A empresa editada não pode ser selecionada para Garantia, se não estiver marcada para fazer garantia.");
            }

            if (empresaConfigGarantia?.EmpresaFazGarantia == false)
            {
                ModelState.AddModelError(nameof(model.IdEmpresaGarantia), string.Format("A Empresa '{0}' não pode ser selecionada para Garantia, se não estiver marcada para fazer garantia.", model.NomeFantasiaEmpresaGarantia));
            }

            if (!string.IsNullOrEmpty(model.NomeLogoEtiqueta) && !model.NomeLogoEtiqueta.ToUpper().Contains(".GRF"))
            {
                ModelState.AddModelError(nameof(model.NomeLogoEtiqueta), $"Nome do logo deve ter a extensão '.GRF'.");
            }

            if (!string.IsNullOrEmpty(model.NomeLogoEtiqueta) && (model.NomeLogoEtiqueta.Length < 5 || !model.NomeLogoEtiqueta.Substring(model.NomeLogoEtiqueta.Length - 4, 4).ToUpper().Contains(".GRF")))
            {
                ModelState.AddModelError(nameof(model.NomeLogoEtiqueta), $"Nome do logo inválido'.");
            }

            if (!ModelState.IsValid)
            {
                model.TiposConferencia = new SelectList(_unitOfWork.TipoConferenciaRepository.RetornarTodos().Select(x => new SelectListItem
                {
                    Value = x.IdTipoConferencia.GetHashCode().ToString(),
                    Text  = x.Descricao,
                }), "Value", "Text");

                model.TiposEmpresa = new SelectList(_unitOfWork.EmpresaTipoRepository.RetornarTodos().Select(x => new SelectListItem
                {
                    Value = x.IdEmpresaTipo.GetHashCode().ToString(),
                    Text  = x.Descricao,
                }), "Value", "Text");

                model.DiaColeta = new SelectList(_unitOfWork.DiasDaSemanaRepository.RetornarTodos()
                                                 .Where(x => x.IdDiasDaSemana != DiasDaSemanaEnum.Domingo && x.IdDiasDaSemana != DiasDaSemanaEnum.Sabado)
                                                 .Select(x => new SelectListItem
                {
                    Value = x.IdDiasDaSemana.GetHashCode().ToString(),
                    Text  = x.Descricao,
                }), "Value", "Text");

                return(View(model));
            }

            if (!string.IsNullOrWhiteSpace(model.CNPJConferenciaAutomatica))
            {
                model.CNPJConferenciaAutomatica = Regex.Replace(model.CNPJConferenciaAutomatica, @"[^\d]", string.Empty);
            }

            EmpresaConfig empresaConfig = Mapper.Map <EmpresaConfig>(model);

            _empresaService.Editar(empresaConfig);

            Notify.Success(Resources.CommonStrings.RegisterEditedSuccessMessage);
            return(RedirectToAction("Editar"));
        }