public async Task <IActionResult> UpdateCarOwnerAsync([FromBody] ChangeCarOwner command) { if (ModelState.IsValid) { await _carService.UpdateCarOwnerAsync(command); return(Ok()); } return(BadRequest()); }
public async Task UpdateCarOwnerAsync(ChangeCarOwner changeCarOwner) { var owner = await _ownerRepository.FirstOrDefaultAsync(x => x.Id == changeCarOwner.OwnerId); if (owner == null) { throw new NotFoundException($"{changeCarOwner.OwnerId}"); } var car = await _carRepository.Queryable() .Include(x => x.Owners) .FirstOrDefaultAsync(x => x.Id == changeCarOwner.CarId); if (car == null) { throw new NotFoundException($"{changeCarOwner.CarId}"); } car.ActiveOwnerId = owner.Id; car.Owners.Add(owner); await _carRepository.UpdateAsync(car); }