示例#1
0
        public static Estacionamento TransformarViewEmModel(this EstacionamentoViewModel viewModel, Estacionamento entidade)
        {
            if (viewModel == null)
            {
                throw new ArgumentNullException(nameof(viewModel));
            }
            if (entidade == null)
            {
                throw new ArgumentNullException(nameof(entidade));
            }

            bool possuiChegada = DateTime.TryParse(viewModel.HorarioChegada, out DateTime chegada);
            bool possuiSaida   = DateTime.TryParse(viewModel.HorarioSaida, out DateTime saida);
            bool possuiDuracao = DateTime.TryParse(viewModel.Duracao, out DateTime duracao);

            entidade.Id             = viewModel.Id;
            entidade.Placa          = viewModel.Placa;
            entidade.HorarioChegada = possuiChegada ? chegada : entidade.HorarioChegada;
            entidade.HorarioSaida   = possuiSaida ? saida : (DateTime?)null;
            entidade.Duracao        = possuiDuracao ? duracao : entidade.Duracao;
            entidade.TempoCobrado   = viewModel.TempoCobrado;
            entidade.Preco          = viewModel.Preco;
            entidade.ValorAPagar    = viewModel.ValorAPagar;

            return(entidade);
        }
示例#2
0
        public async Task <ActionResult <EstacionamentoViewModel> > Adicionar(EstacionamentoViewModel estabelecimentoViewModel)
        {
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            await _estacionamentoRepository.Adicionar(_mapper.Map <Estacionamento>(estabelecimentoViewModel));

            return(CustomResponse(estabelecimentoViewModel));
        }
示例#3
0
        public async Task <IActionResult> Atualizar([FromRoute] Guid id, EstacionamentoViewModel estabelecimentoViewModel)
        {
            if (id != estabelecimentoViewModel.Id)
            {
                NotificarErro("O id informado não é o mesmo que foi passado na query");
                return(CustomResponse(estabelecimentoViewModel));
            }

            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            await _estacionamentoService.Atualizar(_mapper.Map <Estacionamento>(estabelecimentoViewModel));

            return(NoContent());
        }