Пример #1
0
        public Task <ICommandResult> Handle(EditarEmpresaCommand request, CancellationToken cancellationToken)
        {
            request.Validate();
            if (request.Invalid)
            {
                AddNotifications(request);
                return(Task.FromResult <ICommandResult>(new CommandResult("001", false, "Não foi possível editar dados da empresa")));
            }

            Documento cnpj = new Documento(request.Cnpj, ETipoDocumento.CNPJ);
            Documento inscricaoEstadual  = new Documento(request.InscricaoEstadual, ETipoDocumento.INSCRICAO_ESTADUAL);
            Documento inscricaoMunicipal = new Documento(request.InscricaoMunicipal, ETipoDocumento.INSCRICAO_MUNICIPAL);
            Endereco  endereco           = new Endereco(request.Rua, request.Numero, request.Bairro, request.Cidade, request.Estato, request.Pais, request.CodigoPostal, request.Complemento);
            Empresa   empresa            = new Empresa(request.RazaoSocial, cnpj, inscricaoEstadual, inscricaoMunicipal, endereco);

            empresa.Id = request.Id;
            AddNotifications(cnpj, inscricaoEstadual, inscricaoMunicipal, endereco, empresa);
            if (Valid)
            {
                if (!_repositorio.ExisteCnpj(ref empresa))
                {
                    empresa = _repositorio.UpdateEmpresa(empresa);
                    return(Task.FromResult <ICommandResult>(new CommandResult("000", true, "Empresa editada com sucesso")));
                }
                else
                {
                    AddNotification("Cnpj", "Cnpj já foi cadastrado");
                }
            }
            return(Task.FromResult <ICommandResult>(new CommandResult("001", false, "Não foi possível realizar editar da empresa")));
        }
Пример #2
0
        public async Task <IActionResult> Put(int id, [FromBody] EditarEmpresaCommand command)
        {
            var response = (CommandResult)await _mediator.Send(command);

            if (response.Success)
            {
                return(Ok(response));
            }
            return(BadRequest());
        }
Пример #3
0
        public void Handle(EditarEmpresaCommand cmd)
        {
            Empresa empresa = EmpresaExistente(cmd.Id, cmd.MessageType);

            if (empresa != null)
            {
                empresa.AtualizarEmpresa(cmd.RazaoSocial, cmd.Email, cmd.Telefone, cmd.Facebook, cmd.Cnpj);

                if (!empresa.IsValid())
                {
                    NotificarValidacoesErro(empresa.ValidationResult);
                    return;
                }

                Usuario usuario = _usuarioRepository.ObterPorId(empresa.Id);
                usuario.AtualizarUsuario(cmd.RazaoSocial, cmd.Email, cmd.Senha);
                _repository.Atualizar(empresa);

                if (Commit())
                {
                    _mediator.PublicarEvento(new EmpresaAtualizadaEvent(empresa.Id, empresa.RazaoSocial, empresa.Email, empresa.Telefone, empresa.Facebook, empresa.Cnpj));
                }
            }
        }