public void Criar_Empresa_Command_VALIDO() { var command = new CriarUsuarioEmpresaCommand(); command.IdEmpresa = 1; command.IdUsuario = 1; Assert.AreEqual(true, command.IsValidCommand()); }
public void Criar_Empresa_Command_INVALIDO() { var command = new CriarUsuarioEmpresaCommand(); command.IdEmpresa = 0; command.IdUsuario = 0; Assert.AreEqual(false, command.IsValidCommand()); }
public ICommandResult Handle(CriarUsuarioEmpresaCommand command) { if (!command.IsValidCommand()) { return(new CommandResult(false, "Por favor, corrigir os campos abaixo", command.Notifications)); } var usuario = _repository.UsuarioBase(command.IdUsuario); if (usuario == null) { return(new CommandResult(false, "O usuario não existe na base de dados", new { })); } var empresa = _repository.Empresa(command.IdEmpresa); if (empresa == null) { return(new CommandResult(false, "A empresa não existe na base de dados", new { })); } if (_repository.UsuarioEmpresaExistente(command.IdUsuario, command.IdEmpresa)) { return(new CommandResult(false, $"O usuário { usuario.Id } - { usuario.Login.Usuario } já está relacionado com a empresa { empresa.Id } - { empresa.Fantasia } { empresa.Cgc9 }/{ empresa.Cgc4 }-{ empresa.Cgc2 }", new { })); } var usuarioEmpresa = new UsuarioEmpresa(command.IdUsuario, command.IdEmpresa); AddNotifications(usuarioEmpresa); if (Invalid) { return(new CommandResult(false, "Por favor, corrigir os campos abaixo", Notifications)); } _repository.SalvarUsuarioEmpresa(usuarioEmpresa); return(new CommandResult(true, "Empresa cadastrada com sucesso", new { Usuario = usuario.Login.Usuario, Empresa = $"{ empresa.Id } - { empresa.Fantasia } { empresa.Cgc9 }/{ empresa.Cgc4 }-{ empresa.Cgc2 }" })); }
public ICommandResult Criar([FromBody] CriarUsuarioEmpresaCommand command) { var result = (CommandResult)_handler.Handle(command); return(result); }