Example #1
0
        public ActionResult Create(IFormCollection collection)
        {
            Empresa empresa = null;

            string         cNPJ  = collection.FirstOrDefault(a => a.Key.Equals("cnpj", System.StringComparison.CurrentCultureIgnoreCase)).Value;
            string         nome  = collection.FirstOrDefault(a => a.Key.Equals("nome", System.StringComparison.CurrentCultureIgnoreCase)).Value;
            PorteDaEmpresa porte = Enum.Parse <PorteDaEmpresa>(collection.FirstOrDefault(a => a.Key.Equals("porte", System.StringComparison.CurrentCultureIgnoreCase)).Value);

            try
            {
                empresa = new Empresa(_validatorService, _empresaService, 0, nome, cNPJ, porte);
            }
            catch (RegrasException ex)
            {
                ex.CopiarErrosPara(ModelState);
            }

            if (ModelState.IsValid)
            {
                _empresaService.Add(empresa);
                return(RedirectToAction(nameof(Index)));
            }

            // Observar que para chegar nesta ponto
            // será reexibida a mesma view para que seja possível
            // mostrar os erros do ModelState para o usuário
            return(View(new EmpresaViewModel
            {
                CNPJ = cNPJ,
                Nome = nome,
                Porte = porte
            }));
        }
Example #2
0
        public ValidationResult Create(Empresa entity)
        {
            BeginTransaction();
            var resultado = _Solicitanteservice.Add(entity);

            Commit();
            return(resultado);
        }
Example #3
0
        public IActionResult NovaEmpresa(EmpresaVM empresa)
        {
            var empresaEntity = _mapper.Map <Empresa>(empresa);

            _empresaService.Add(empresaEntity);
            ViewBag.message = "Empresa cadastrada com sucesso!";
            return(RedirectToAction("Index"));
        }
        public async Task <ActionResult <EmpresaModel> > Post(EmpresaModel EmpresaModel)
        {
            var name = await _IEmpresaService.Add(EmpresaModel);

            if (name == null)
            {
                return(NotFound());
            }
            return(name);
        }
Example #5
0
 public IActionResult Add(CadastroEmpresaViewModel obj)
 {
     try
     {
         _mapper.Add(obj);
         return(Ok(new { Mensagem = "Empresa cadastrada com sucesso!" }));
     }
     catch (Exception ex)
     {
         return(BadRequest(new { erro = ex.Message }));
     }
 }
Example #6
0
        public async Task <IActionResult> Post([FromBody] EmpresaDto empresa)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var Empresa = await Task.Run(() =>
            {
                return(_empresaService.Add(empresa));
            });

            if (Empresa == null)
            {
                return(NotFound());
            }

            return(Ok(Empresa));
        }
Example #7
0
        public async Task <IActionResult> RegistrarEmpresa(NovoFuncionarioRequest novoFuncionarioDto)
        {
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            var empresa = _mapper.Map <Empresa>(novoFuncionarioDto.Empresa);
            await _empresaService.Add(empresa);

            if (!OperacaoValida())
            {
                return(CustomResponse());
            }

            var identityUser = new ApplicationUser
            {
                DataNascimento       = novoFuncionarioDto.DataNascimento,
                Email                = novoFuncionarioDto.Email,
                EmailConfirmed       = true,
                LinkGithub           = novoFuncionarioDto.LinkGithub,
                LinkLinkedin         = novoFuncionarioDto.LinkLinkedin,
                Nome                 = novoFuncionarioDto.Nome,
                PhoneNumber          = novoFuncionarioDto.Celular,
                PhoneNumberConfirmed = true,
                UserName             = novoFuncionarioDto.Email
            };

            var result = await _userManager.CreateAsync(identityUser, novoFuncionarioDto.Senha);

            if (result.Succeeded)
            {
                var cargo = new Cargo
                {
                    EmpresaId = empresa.Id,
                    Nome      = novoFuncionarioDto.Cargo
                };
                await _cargoService.Add(cargo);

                await _funcionarioService.Add(new Funcionario
                {
                    ApplicationUserId = identityUser.Id,
                    CargoId           = cargo.Id
                });

                await _userManager.AddToRoleAsync(identityUser, "Empresa");

                return(CustomResponse(await GeraJWT(identityUser.Email)));
            }

            await _empresaService.Remove(empresa);

            await _enderecoService.Remove(empresa.Endereco);

            foreach (var erro in result.Errors)
            {
                NotificarErro(erro.Description);
            }

            return(CustomResponse());
        }