public IActionResult SaveNewItineraryElement(ExtraPosition position) { //if (ModelState.IsValid) //{ ItinerarySetRes response = new ItinerarySetRes(); ItinerarySetReq request = new ItinerarySetReq(); OpsBookingItinerarySetReq req = new OpsBookingItinerarySetReq(); OpsBookingItinerarySetRes res = new OpsBookingItinerarySetRes(); if (position.flag == true) { string UserName = HttpContext.Request.Cookies["UserName"] ?? ckUserName; if (string.IsNullOrEmpty(position.PositionId)) { request.IsExtraItineraryElement = true; } else { request.IsExtraItineraryElement = false; } if (string.IsNullOrWhiteSpace(position.ProductName)) { return(Json(new { responseText = "Please Enter Description", status = "error" })); } request.itinerary.QRFID = position.QRFID; request.itinerary.ItineraryID = position.ItineraryID; request.itinerary.ItineraryDays.Add(new ItineraryDaysInfo { ItineraryDaysId = position.ItineraryDaysId }); request.itinerary.ItineraryDays[0].ItineraryDescription.Add(new ItineraryDescriptionInfo { ProductType = "", ProductName = position.ProductName, PositionId = position.PositionId }); request.itinerary.EditUser = UserName; request.itinerary.CreateUser = UserName; response = coProviders.SetItinerary(request, token).Result; if (response.ResponseStatus.Status.ToLower() == "success") { return(Json(new { responseText = "Record Saved Successfully" })); } else { return(Content("Error")); } } else { if (string.IsNullOrWhiteSpace(position.ItineraryDaysId)) { string UserName = HttpContext.Request.Cookies["UserName"] ?? ckUserName; req.BookingNumber = position.QRFID; req.Type = "NewElement"; req.ItineraryDetails = new ItineraryDetails() { ItineraryDetail_Id = position.ItineraryID, ProductType = "", CityName = position.City, STARTTIME = position.StartTime, ENDTIME = position.EndTime, Description = position.ProductName, DayNo = Convert.ToInt32(position.Day.Split(" ")[1]) }; res = operationsProviders.SetRemarksForItineraryBuilderDetails(req, token).Result; if (res.ResponseStatus.Status.ToLower() == "success") { return(Json(new { responseText = "Record Saved Successfully", ItineraryDetailId = res.ItineraryDetailId })); } else { return(Content("Error")); } } else { string UserName = HttpContext.Request.Cookies["UserName"] ?? ckUserName; if (string.IsNullOrEmpty(position.PositionId)) { request.IsExtraItineraryElement = true; } else { request.IsExtraItineraryElement = false; } request.itinerary.QRFID = position.QRFID; request.itinerary.ItineraryID = position.ItineraryID; request.itinerary.ItineraryDays.Add(new ItineraryDaysInfo { ItineraryDaysId = position.ItineraryDaysId }); request.itinerary.ItineraryDays[0].ItineraryDescription.Add(new ItineraryDescriptionInfo { ProductType = "", City = position.City, StartTime = position.StartTime, EndTime = position.EndTime, Type = "Extra", ProductName = position.ProductName, PositionId = position.PositionId }); request.itinerary.EditUser = UserName; request.itinerary.CreateUser = UserName; response = coProviders.SetItinerary(request, token).Result; if (response.ResponseStatus.Status.ToLower() == "success") { return(Json(new { responseText = "Record Saved Successfully" })); } else { return(Content("Error")); } } } //} }
public IActionResult AddNewItineraryDetails(string QRFID, string PositionId, string ItineraryID, string ItineraryDaysId, string Day, string action, string type = "") { ExtraPosition position = new ExtraPosition(); position.Day = Day; position.Type = type; if (type == "opsItinerary") { #region Get dropdown values for Ops Service Itinerary Details OpsBookingItineraryGetReq opsBookingGetReq = new OpsBookingItineraryGetReq() { BookingNumber = QRFID }; OpsBookingItineraryGetRes opsBookingGetRes = operationsProviders.GetItineraryBuilderDetails(opsBookingGetReq, token).Result; position.DayList = opsBookingGetRes.OpsItineraryDetails.Days.Select(x => new Attributes() { Attribute_Id = x, AttributeName = x }).ToList(); position.CityList = opsBookingGetRes.OpsItineraryDetails.Cities.Select(x => new Attributes() { Attribute_Id = x, AttributeName = x }).ToList(); position.CityList.RemoveAll(x => string.IsNullOrWhiteSpace(x.AttributeName)); #endregion #region Get Position Detail OpsBookingItineraryGetReq opsBookingGetReq1 = new OpsBookingItineraryGetReq() { BookingNumber = QRFID, ItineraryDetailId = ItineraryID }; OpsBookingItineraryGetRes opsBookingGetRes2 = operationsProviders.GetItineraryBuilderPositionDetailById(opsBookingGetReq1, token).Result; position.StartTime = opsBookingGetRes2.ItineraryDetails.STARTTIME; position.EndTime = opsBookingGetRes2.ItineraryDetails.ENDTIME; position.ProductName = opsBookingGetRes2.ItineraryDetails.Description; position.City = opsBookingGetRes2.ItineraryDetails.CityName; position.PositionId = opsBookingGetRes2.ItineraryDetails.Position_Id; position.Day = "Day " + opsBookingGetRes2.ItineraryDetails.DayNo; #endregion if (action == "EditDesc") { position.flag = true; } else { position.flag = false; } } else { #region Get Itinerary Details by QRFId itineraryGetReq = new ItineraryGetReq(); itineraryGetReq.QRFID = QRFID; itineraryGetRes = coProviders.GetItinerary(itineraryGetReq, token).Result; #endregion if (action == "Edit") { position.flag = true; } else { position.flag = false; } position.QRFID = QRFID; position.ItineraryID = ItineraryID; position.DayList = GetDays(itineraryGetRes.Itinerary.ItineraryDays); //position.CityList = GetCity(itineraryGetRes.Itinerary.ItineraryDays); RoutingGetReq routingGetReq = new RoutingGetReq(); routingGetReq.QRFID = QRFID; RoutingGetRes routingGetRes = objSalesProvider.getQRFRoutingDetails(routingGetReq, token).Result; position.CityList = GetCity(routingGetRes.RoutingInfo); //position.CityList = routingGetRes.RoutingInfo.Select(x => new Attributes { Attribute_Id = x.FromCityID, // AttributeName = (!string.IsNullOrWhiteSpace(x.FromCityName) && x.FromCityName.Contains(',')) ? x.FromCityName.Split(',')[0] : x.FromCityName }).ToList(); position.ItineraryDaysId = string.IsNullOrEmpty(ItineraryDaysId) ? position.DayList != null && position.DayList.Count > 0 ? position.DayList[0].Attribute_Id : "" : ItineraryDaysId; position.City = ItineraryDaysId; foreach (var k in itineraryGetRes.Itinerary.ItineraryDays) { if (k.ItineraryDaysId == ItineraryDaysId) { foreach (var p in k.ItineraryDescription) { if (p.PositionId == PositionId) { //var city = itineraryGetRes.Itinerary.ItineraryDays.Where(x => x.City == p.City).Select(y => y.ItineraryDaysId).FirstOrDefault(); position.StartTime = p.StartTime; position.EndTime = p.EndTime; position.ProductName = p.ProductName; position.Day = k.ItineraryDaysId; position.City = p.City; position.PositionId = p.PositionId; } } } else { position.Day = ItineraryDaysId; //position.City = ItineraryDaysId; } } } return(PartialView("_AddNewItineraryDetails", position)); }