public async Task <CostsheetVerSetRes> SetCostsheetNewVersion([FromBody] CostsheetVerSetReq request) { var response = new CostsheetVerSetRes(); try { if (!string.IsNullOrEmpty(request.QRFID) && request != null) { if (request.Pipeline == "Guesstimate") { response.QRFPrice_Id = await _qRFSummaryRepository.SaveQRFPrice("Guesstimate", "Regenerated from Guesstimate", request.QRFID, request.Create_User); response.ResponseStatus.Status = !String.IsNullOrEmpty(response.QRFPrice_Id) ? "Success" : "Failure"; response.ResponseStatus.ErrorMessage = !String.IsNullOrEmpty(response.QRFPrice_Id) ? "Costsheet Data Saved Successfully." : "Details not updated."; } else if (request.Pipeline == "Amendment") { await _qRFSummaryRepository.SaveDefaultGuesstimate(request.QRFID, "Amendment", "Regenerated from Amendment", request.Create_User); response.QRFPrice_Id = await _qRFSummaryRepository.SaveQRFPrice("Amendment", "Regenerated from Amendment", request.QRFID, request.Create_User); await _qRFSummaryRepository.SaveDefaultItinerary(request.Create_User, request.QRFID, "", true); response.ResponseStatus.Status = !String.IsNullOrEmpty(response.QRFPrice_Id) ? "Success" : "Failure"; response.ResponseStatus.ErrorMessage = !String.IsNullOrEmpty(response.QRFPrice_Id) ? "Costsheet Data Saved Successfully." : "Details not updated."; } } else { response.ResponseStatus.Status = "Failure"; response.ResponseStatus.ErrorMessage = "QRFId can not be Null/Zero."; } } catch (Exception ex) { response.ResponseStatus.Status = "Failure"; response.ResponseStatus.ErrorMessage = "An Error Occurs :- " + ex.Message; } return(response); }
public async Task <mItinerary> GetItineraryDetails(ItineraryGetReq request) { try { mItinerary response = new mItinerary(); bool IsDefault = false; string pagename = string.IsNullOrEmpty(request.Page) ? "" : request.Page.ToLower() ?? ""; response = _MongoContext.mItinerary.AsQueryable().Where(a => a.QRFID == request.QRFID).FirstOrDefault(); string ItineraryId; if (response == null || string.IsNullOrEmpty(response.ItineraryID)) { ItineraryId = Guid.NewGuid().ToString(); } else { ItineraryId = response.ItineraryID; } if (pagename == "qrfsummary") { if (response == null) { IsDefault = await _qrfSummaryRepository.SaveDefaultItinerary(request.editUser, request.QRFID, ItineraryId, false); } else { var RegenerateItinerary = _MongoContext.mQuote.AsQueryable().Where(a => a.QRFID == request.QRFID).Select(b => b.RegenerateItinerary).FirstOrDefault(); if (RegenerateItinerary) { IsDefault = await _qrfSummaryRepository.SaveDefaultItinerary(request.editUser, request.QRFID, ItineraryId, false); } else { IsDefault = true; } } } else { if (response == null) { IsDefault = await _qrfSummaryRepository.SaveDefaultItinerary(request.editUser, request.QRFID, ItineraryId, true); } else { var RegenerateItinerary = _MongoContext.mQRFPrice.AsQueryable().Where(a => a.QRFID == request.QRFID && a.IsCurrentVersion).Select(b => b.RegenerateItinerary).FirstOrDefault(); if (RegenerateItinerary) { IsDefault = await _qrfSummaryRepository.SaveDefaultItinerary(request.editUser, request.QRFID, ItineraryId, true); } else { IsDefault = true; } } } if (IsDefault == true) { response = _MongoContext.mItinerary.AsQueryable().Where(a => a.QRFID == request.QRFID).FirstOrDefault(); } else { response = null; } response.ItineraryDays.ForEach(b => b.ItineraryDescription = b.ItineraryDescription.OrderBy(c => c.StartTime).ToList()); return(response); } catch (Exception ex) { throw; } }