Ejemplo n.º 1
0
        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"));
                    }
                }
            }
            //}
        }
Ejemplo n.º 2
0
        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));
        }