Пример #1
0
        public async Task <ActivitiesGetRes> GetActivitiesDetailsByQRFID(QuoteGetReq request)
        {
            var response = new ActivitiesGetRes();

            try
            {
                List <ActivitiesProperties> objActivitiesProperties = new List <ActivitiesProperties>();
                RoutingGetReq req = new RoutingGetReq {
                    QRFId = request.QRFID
                };
                var resultQuote = _MongoContext.mQuote.AsQueryable().Where(q => q.QRFID == request.QRFID);

                if (resultQuote != null && resultQuote.Count() > 0)
                {
                    var resultPosition = _MongoContext.mPosition.AsQueryable().Where(q => q.QRFID == request.QRFID).FirstOrDefault();
                    List <RoutingInfo> lstRoutingInfo = await _quoteRepository.GetQRFRouteDetailsByQRFID(req);

                    if (resultPosition != null)
                    {
                        var result = resultPosition.Activities;
                        if (result != null && result.ActivitiesDetails != null)
                        {
                            List <string> daysList = new List <string>();
                            int           day      = 0;
                            foreach (var item in lstRoutingInfo)
                            {
                                day = item.Days;
                                for (int i = 1; i <= day; i++)
                                {
                                    daysList.Add("Day " + (daysList.Count + 1));
                                }
                            }
                            response.DaysList          = daysList;
                            response.ActivitiesDetails = result.ActivitiesDetails.Where(q => q.IsDeleted == false).ToList();

                            response.ResponseStatus.Status = "Success";
                        }
                        else
                        {
                            GetNewActivityDetails(lstRoutingInfo, resultQuote.FirstOrDefault(), ref response);
                        }
                    }
                    else
                    {
                        GetNewActivityDetails(lstRoutingInfo, resultQuote.FirstOrDefault(), ref response);
                    }
                }
                else
                {
                    response.ResponseStatus.Status       = "Failure";
                    response.ResponseStatus.ErrorMessage = "QRFID is not exists.";
                }
            }
            catch (Exception ex)
            {
                response.ResponseStatus.Status       = "Failure";
                response.ResponseStatus.ErrorMessage = "Error occured : " + ex.Message.ToString();
            }
            return(response);
        }
Пример #2
0
        public async Task <ActivitiesGetRes> GetActivitiesDetailsByQRFID([FromBody] QuoteGetReq request)
        {
            var response = new ActivitiesGetRes();

            try
            {
                if (request != null)
                {
                    response = await _activitiesRepository.GetActivitiesDetailsByQRFID(request);
                }
                else
                {
                    response.ResponseStatus.Status       = "Failure";
                    response.ResponseStatus.ErrorMessage = "Request details can not be Null.";
                }
            }
            catch (Exception ex)
            {
                response.ResponseStatus.Status       = "Failure";
                response.ResponseStatus.ErrorMessage = "An Error Occurs " + ex.Message;
            }
            response.QRFID = request.QRFID;
            return(response);
        }
Пример #3
0
        public void GetNewActivityDetails(List <RoutingInfo> lstRoutingInfo, mQuote resultQuote, ref ActivitiesGetRes response)
        {
            List <ActivitiesProperties> objActivitiesProperties = new List <ActivitiesProperties>();

            if (lstRoutingInfo != null && lstRoutingInfo.Count > 0)
            {
                List <string> daysList = new List <string>();
                int           day      = 0;
                foreach (var item in lstRoutingInfo)
                {
                    day = item.Days;
                    for (int i = 1; i <= day; i++)
                    {
                        daysList.Add("Day " + (daysList.Count + 1));
                    }
                }
                objActivitiesProperties.Add(new ActivitiesProperties
                {
                    CreateDate    = DateTime.Now,
                    EditDate      = null,
                    EditUser      = "",
                    ActivityID    = 0,
                    StartTime     = "10:00",
                    NoOfPaxAdult  = resultQuote.AgentPassengerInfo.Where(a => a.Type == "ADULT").Select(b => b.count).FirstOrDefault(),
                    NoOfPaxChild  = resultQuote.AgentPassengerInfo.Where(a => a.Type == "CHILDWITHBED").Select(b => b.count).FirstOrDefault() + resultQuote.AgentPassengerInfo.Where(a => a.Type == "CHILDWITHOUTBED").Select(b => b.count).FirstOrDefault(),
                    NoOfPaxInfant = resultQuote.AgentPassengerInfo.Where(a => a.Type == "INFANT").Select(b => b.count).FirstOrDefault(),
                });
                response.DaysList = daysList;
                response.ResponseStatus.Status = "Success";
                response.ActivitiesDetails     = objActivitiesProperties;
            }
            else
            {
                response.ResponseStatus.ErrorMessage = "No Routing Details found.";
                response.ResponseStatus.Status       = "Failure";
            }
        }