public async Task <ActionResult <VeiculoDto> > Put(int id, [FromBody] VeiculoDto veiculoDto)
        {
            try
            {
                var veiculoDatabase = await veiculoService.GetById(id, GetIdUsuarioLogado());

                if (veiculoDatabase == null)
                {
                    return(NotFound());
                }

                var veiculo = mapper.Map(veiculoDto, veiculoDatabase);
                await veiculoService.Update(id, veiculo, GetIdUsuarioLogado());

                return(CreatedAtAction(nameof(Put), new { id = veiculo.Id }, veiculo));
            }
            catch (ValidationException vex)
            {
                return(BadRequest(new ErrorResponse(vex.Errors.ToListValidationFailureString())));
            }
            catch (Exception ex)
            {
                return(BadRequest(new ErrorResponse(ex.Message)));
            }
        }
Exemplo n.º 2
0
        public string DesativarVeiculo(int idVeiculo)
        {
            try
            {
                var veiculo = _veiculoService.GetById(idVeiculo);

                if (!(VerificaSePossuiGaragemOcupada(veiculo)))
                {
                    _veiculoService.DisableVehicle(idVeiculo);
                    return(JsonConvert.SerializeObject(new { code = 200, message = "Veiculo desativado com sucesso." }));
                }

                return(JsonConvert.SerializeObject(new { code = 400, message = "Você não pode desativar este veiculo pois ele está alugando uma vaga no momento." }));
            }
            catch
            {
                return(JsonConvert.SerializeObject(new { code = 400, message = "Erro ao desativar. Por favor tente novamente." }));
            }
        }
Exemplo n.º 3
0
        public IActionResult Get(int id)
        {
            var result = service.GetById(id);

            return(Ok(result));
        }