public async Task <ServiceResponse <BorrowBookDTO_ToReturn> > ReNewBorrowBook(BorrowBookDTO_ToReNew ReNewBorrowBook, int id) { var oldDataBorrowBook = await _dbContext.BorrowBooks.FirstOrDefaultAsync(x => x.Id == id); var book = await _dbContext.Books.FirstOrDefaultAsync(x => x.Id == oldDataBorrowBook.BookId); int newDate = ReNewBorrowBook.RecieveDate.Day - oldDataBorrowBook.RecieveDate.Day; oldDataBorrowBook.AdminId = ReNewBorrowBook.AdminId; oldDataBorrowBook.RecieveDate = ReNewBorrowBook.RecieveDate; oldDataBorrowBook.DueDate = ReNewBorrowBook.RecieveDate.AddDays(book.BorrowDay); oldDataBorrowBook.TotalLatePrice = 0; oldDataBorrowBook.TotalPrice = (book.BorrowPrice * book.BorrowDay) + (book.BorrowPrice * newDate); oldDataBorrowBook.TotalAmount = oldDataBorrowBook.TotalPrice; await _dbContext.SaveChangesAsync(); return(ResponseResult.Success( _mapper.Map <BorrowBookDTO_ToReturn> ( _dbContext.BorrowBooks.Include(x => x.Books).ThenInclude(x => x.CategoryBooks) .Include(x => x.Customers) .Where(x => x.Id == oldDataBorrowBook.Id) .FirstOrDefault() ) )); }
public async Task <IActionResult> ReNewBorrowBook(BorrowBookDTO_ToReNew ReNewBorrowBook, int id) { return(Ok(await _borrowBookService.ReNewBorrowBook(ReNewBorrowBook, id))); }