public async Task <IActionResult> ActionReturn([FromBody] BookingReturnRequestModel returnRequest) { try { return(Ok(await this.bookingService.ActionReturn(returnRequest))); } catch { return(BadRequest()); } }
public async Task <BookingModel> ActionReturn(BookingReturnRequestModel model) { var entity = await this.bookingRepository.GetSingle(model.BookingId); var bookingModel = this.mapper.Map <Booking, BookingModel>(entity); bookingModel.CalculateExtraCost(model); bookingModel.CalculateTotalCost(); entity.ExtraAmount = bookingModel.ExtraAmount; entity.TotalAmount = bookingModel.TotalAmount; await this.bookingRepository.UpdateIntoDatabase(entity); return(bookingModel); }
public void CalculateExtraCost(BookingReturnRequestModel returnModel) { if ( returnModel.HasScracthes ) { ExtraAmount += RentalAmount * 0.3; } if ( returnModel.HasSmashes ) { ExtraAmount += RentalAmount * 0.3; } if ( !returnModel.HasTankFullfilled ) { ExtraAmount += RentalAmount * 0.3; } if ( !returnModel.IsCarClean ) { ExtraAmount += RentalAmount * 0.3; } }