public override ICommandResult Handle(GravarFornecedorCommand command) { //Fail Fast Validations if (!command.Validador()) { return(new CommandResult(false, "Mensagem inválida", command.Mensagem)); } //Validar VOs DescricaoEnderecoValicado validadorEndereco = new DescricaoEnderecoValicado(); var resultado = validadorEndereco.Validate(command.Endereco); if (!resultado.IsValid) { var erros = retornoMensagemErro(resultado.Errors); return(new CommandResult(false, erros, command.Mensagem)); } //Gerar Fornecedor var fornecedor = new Fornecedor(command.CodigoFornecedor, command.DescricaoFornecedor, command.Cnpj, command.Endereco); fornecedor.Email = command.Email; //Validar Fornecedor FornecedorValidacao validadorFornecedor = new FornecedorValidacao(); resultado = validadorFornecedor.Validate(fornecedor); if (resultado.IsValid) { var erros = retornoMensagemErro(resultado.Errors); return(new CommandResult(false, erros, command.Mensagem)); } //Salvar informações try { _fornecedorRepositorio.InseririOuAtualizar(fornecedor); return(new CommandResult(true, "Mensagem persistida com sucesso")); } catch { return(new CommandResult(false, "Ocorreu um erro interno no sistema", command.Mensagem)); } }
public override ICommandResult Handle(GravarLojaCommand command) { //Fail Fast Validations if (!command.Validador()) { return(new CommandResult(false, "Mensagem inválida", command.Mensagem)); } //Validar VOs DescricaoEnderecoValicado validadorEndereco = new DescricaoEnderecoValicado(); var resultado = validadorEndereco.Validate(command.Endereco); if (!resultado.IsValid) { var erros = retornoMensagemErro(resultado.Errors); return(new CommandResult(false, erros, command.Mensagem)); } //Gerar Loja var loja = new Loja(command.CodigoEmpresa, command.CodigoFilial, command.Cnpj, command.Endereco); loja.TimeStamp = command.TimeStamp; //Validar Loja LojaValidacao validadorLoja = new LojaValidacao(); resultado = validadorLoja.Validate(loja); if (!resultado.IsValid) { var erros = retornoMensagemErro(resultado.Errors); return(new CommandResult(false, erros, command.Mensagem)); } //Salvar informações try { _lojaRepositorio.InseririOuAtualizar(loja); return(new CommandResult(true, "Mensagem persistida com sucesso")); } catch { return(new CommandResult(false, "Ocorreu um erro interno no sistema", command.Mensagem)); } }
public override ICommandResult Handle(GravarTransportadoraCommand command) { //Fail Fast Validations if (!command.Validador()) { return(new CommandResult(false, "Mensagem inválida", command.Mensagem)); } //Validar VOs DescricaoEnderecoValicado validadorEndereco = new DescricaoEnderecoValicado(); var resultado = validadorEndereco.Validate(command.Endereco); if (!resultado.IsValid) { var erros = retornoMensagemErro(resultado.Errors); return(new CommandResult(false, erros, command.Mensagem)); } //Gerar Loja var transportadora = new Transportadora(command.CodigoTransportadora, command.DescricaoTransportadora, command.Cnpj, command.Email, command.Endereco); //Validar Transportadora TransportadoraValidacao validadorTransportadora = new TransportadoraValidacao(); resultado = validadorTransportadora.Validate(transportadora); if (!resultado.IsValid) { var erros = retornoMensagemErro(resultado.Errors); return(new CommandResult(false, erros, command.Mensagem)); } //Salvar informações try { _transportadoraRepositorio.InseririOuAtualizar(transportadora); return(new CommandResult(true, "Mensagem persistida com sucesso")); } catch { return(new CommandResult(false, "Ocorreu um erro interno no sistema", command.Mensagem)); } }