Example #1
0
        public async Task <IActionResult> Create(FabricantesViewModel fabricanteViewModel)
        {
            var fabricanteValidator = new FabricanteValidator();

            if (!fabricanteValidator.IsCnpj(fabricanteViewModel.CNPJ))
            {
                ModelState.AddModelError("CNPJ", "O CNPJ é inválido.");
            }
            var fabricante = new Fabricante();

            fabricante.Nome          = fabricanteViewModel.Nome;
            fabricante.CNPJ          = fabricanteViewModel.CNPJ;
            fabricante.Endereco      = fabricanteViewModel.Endereco;
            var(exists, errorExists) = await fabricanteRepository.ExistsAsync(fabricante);

            if (exists)
            {
                foreach (var error in errorExists)
                {
                    ModelState.AddModelError(error.Key, error.Value);
                }
            }
            if (ModelState.IsValid)
            {
                await fabricanteRepository.AddFabricanteAsync(fabricante);

                return(RedirectToAction(nameof(Index)));
            }
            return(View(fabricanteViewModel));
        }