public async Task <IActionResult> InsertReview(ReviewViewModel view) { var exista_cititor = repository.VerifyReaderByNameAsync(view.CITITOR.Nume.Trim() + " " + view.CITITOR.Prenume.Trim()).Result.ToList(); var queryCititorId = repository.GetReaderAsync(exista_cititor[0].CititorId); var queryCarteImprumut = repository.GetLoanByBookTitleReaderIdAsync(view.CARTE.Titlu.Trim(), queryCititorId.Result.CititorId).Result.ToList(); if (queryCarteImprumut.LongCount() == 0) { return(RedirectToAction("NotPossible", "Home", view)); } var queryCarteId = repository.GetBookAsync(queryCarteImprumut[0].CarteId); if (queryCarteId.Result.CarteId > 0) { int idCarte = queryCarteId.Result.CarteId; var queryDateCarteImprumutata = repository.GetLoanAsync(queryCarteImprumut[0].ImprumutId); IMPRUMUT loan = new IMPRUMUT { DataRestituire = DateTime.Now, ImprumutId = queryDateCarteImprumutata.Result.ImprumutId, DataImprumut = queryDateCarteImprumutata.Result.DataImprumut, DataScadenta = queryDateCarteImprumutata.Result.DataScadenta, CititorId = queryDateCarteImprumutata.Result.CititorId, CarteId = queryDateCarteImprumutata.Result.CarteId, }; view.IMPRUMUT = loan; await repository.UpdateLoanAsync(view.IMPRUMUT); // issues, I think var queryDateImprumut = repository.GetLoanAsync(idCarte).Result; var queryCititorImprumut = repository.GetLoanAsync(idCarte).Result; if (queryDateImprumut.DataRestituire > queryDateImprumut.DataScadenta) { var queryStareCititor = repository.GetReaderAsync(queryCititorImprumut.CititorId); view.CITITOR.CititorId = queryStareCititor.Result.CititorId; view.CITITOR.Nume = queryStareCititor.Result.Nume; view.CITITOR.Prenume = queryStareCititor.Result.Prenume; view.CITITOR.Email = queryStareCititor.Result.Email; view.CITITOR.Adresa = queryStareCititor.Result.Adresa; view.CITITOR.Stare = 1; await repository.UpdateReaderAsync(view.CITITOR); } REVIEW review = new REVIEW { Text = view.REVIEW.Text, ImprumutId = queryDateImprumut.ImprumutId }; view.REVIEW = review; await repository.InsertReviewAsync(view.REVIEW); } return(RedirectToAction("AfisareReview", "Review", view)); }