public int Entrada(MovimentacaoEntradaRequest request) { Func <IEnumerable <string> > metodoParaValidarViewModel = (() => MovimentacaoRegras.ValidarParaEntrar(request, ObterTodos())); MovimentacaoViewModel viewModel = request.TransformarEntradaRequestEmView(); return(base.Salvar(viewModel, metodoParaValidarViewModel, MovimentacaoExtension.TransformarViewEmModel)); }
public static MovimentacaoViewModel TransformarEntradaRequestEmView(this MovimentacaoEntradaRequest request) { return(new MovimentacaoViewModel { EntrouEm = request.EntrouEm, VeiculoId = request.VeiculoId }); }
public static IEnumerable <string> ValidarParaEntrar(MovimentacaoEntradaRequest request, IQueryable <Movimentacao> movimentacoes) { if (string.IsNullOrWhiteSpace(request.EntrouEm)) { yield return(Mensagem.ParametroObrigatorio.Formatar(Termo.EntrouEm)); } if (request.VeiculoId == 0) { yield return(Mensagem.ParametroObrigatorio.Formatar(Termo.Veiculo)); } if (PossuiEntradaSemSaidadeDeVeiculo(movimentacoes, request.VeiculoId)) { yield return(Mensagem.EntidadeDuplicada.Formatar(Termo.Veiculo)); } }
public IActionResult Entrada([FromBody] MovimentacaoEntradaRequest viewModel) { return(Ok(new ValorResponse <int>(_movimentacaoServico.Entrada(viewModel)))); }