public DataTable GetTable(IMainFilterEntity mfe)
        {
            var hourlyColumns   = _time == Enums.DayActualTime.THREE;
            var numberOfColumns = _time == Enums.DayActualTime.THIRTY ? 30 : MAXNOOFCOLUMNS;
            var topics          = ReservationsDataAccess.CalculateTopics(hourlyColumns, numberOfColumns, mfe, false).ToDictionary(d => d.Tme);

            var dataTable = new DataTable();

            var now = DateTime.Now.GetDateAndHourOnlyByCountry(mfe.Country);

            for (int i = 0; i < MAXNOOFCOLUMNS; i++)
            {
                dataTable.Columns.Add(hourlyColumns ?
                                      now.AddHours(i).ToString(CultureInfo.CurrentCulture)
                    : now.AddDays(i).ToString(CultureInfo.CurrentCulture), typeof(string)
                                      );
            }

            dataTable.Rows.Add(topics.Values.Select(d => d.Balance.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.Available.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.Opentrips.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.Reservations.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.OnewayRes.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.GoldServiceReservations.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.PrepaidReservations.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.Checkin.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.OnewayCheckin.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.Offset.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.LocalCheckIn.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.Buffer.ToString()).ToArray());
            dataTable.Rows.Add(topics.Values.Select(d => d.AddditionDeletion.ToString()).ToArray());

            _DataTable = dataTable;
            return(dataTable);
        }
Beispiel #2
0
        //public void SetTable(IReservationDetailsEntity Entity)
        //{
        //    string rsArrivalTime = Entity.RS_ARRIVAL_TIME == null ? "" : Entity.RS_ARRIVAL_TIME.Value.ToShortTimeString();
        //    string rtrnTime = Entity.RTRN_TIME == null ? "" : Entity.RTRN_TIME.Value.ToShortTimeString();
        //    spanResId.InnerHtml = Entity.RES_ID_NBR;
        //    tdResId.InnerHtml = Entity.RES_ID_NBR;
        //    tdCheckOutLoc.InnerHtml = Entity.RENT_LOC;
        //    tdCheckOutDate.InnerHtml = Entity.RS_ARRIVAL_DATE == null ? "" : Entity.RS_ARRIVAL_DATE.Value.ToShortDateString() + " " + rsArrivalTime;
        //    tdResLoc.InnerHtml = Entity.RES_LOC;
        //    tdCheckInLoc.InnerHtml = Entity.RTRN_LOC;
        //    tdCheckInDate.InnerHtml = Entity.RTRN_DATE == null ? "" : Entity.RTRN_DATE.Value.ToShortDateString() + " " + rtrnTime;
        //    tdDays.InnerHtml = Entity.RES_DAYS.ToString();
        //    tdGroup.InnerHtml = Entity.GR_INCL_GOLDUPGR;
        //    tdGroupGold.InnerHtml = Entity.GR_INCL_GOLDUPGR;
        //    tdCustomer.InnerHtml = Entity.CUST_NAME;
        //    tdPhone.InnerHtml = Entity.PHONE;
        //    tdCdp.InnerHtml = Entity.CDPID_NBR;
        //    tdGoldNbr.InnerHtml = Entity.NO1_CLUB_GOLD;
        //    tdGoldStatus.InnerHtml = Entity.GR_INCL_GOLDUPGR;
        //    tdFltNbr.InnerHtml = Entity.FLIGHT_NBR;
        //    tdTaco.InnerHtml = Entity.TACO;
        //    tdNeverlost.InnerHtml = Entity.NEVERLOST;
        //    tdPrepaid.InnerHtml = Entity.PREPAID;
        //    tdResDate.InnerHtml = Entity.DATE_SOLD == null ? "" : Entity.DATE_SOLD.Value.ToShortDateString();
        //    tdRemarks.InnerHtml = Entity.REMARKS;
        //    tdTariff.InnerHtml = Entity.RATE_QUOTED;
        //    Visible = true;
        //}

        public void SetReservationTable(IReservationDetailsEntity Entity)
        {
            var goldGroupName = ReservationsDataAccess.LookupGoldLevel(Entity.RES_ID_NBR);

            string rsArrivalTime = Entity.RS_ARRIVAL_TIME == null ? "" : Entity.RS_ARRIVAL_TIME.Value.ToShortTimeString();
            string rtrnTime      = Entity.RTRN_TIME == null ? "" : Entity.RTRN_TIME.Value.ToShortTimeString();

            lblResIDValue.Text        = Entity.RES_ID_NBR;
            lblCheckOutValue.Text     = Entity.RENT_LOC;
            lblCheckOutDateValue.Text = Entity.RS_ARRIVAL_DATE == null ? "" : Entity.RS_ARRIVAL_DATE.Value.ToShortDateString() + " " + rsArrivalTime;

            lblResLocValue.Text = Entity.RES_LOC;



            lblCheckInValue.Text      = Entity.RTRN_LOC;
            lblCheckInDateValue.Text  = Entity.RTRN_DATE == null ? "" : Entity.RTRN_DATE.Value.ToShortDateString() + " " + rtrnTime;
            lblDaysValue.Text         = Entity.RES_DAYS.ToString();
            lblGroupValue.Text        = Entity.ReservedCarGroup;
            lblGroupGoldValue.Text    = Entity.GR_INCL_GOLDUPGR;
            lblCustomerValue.Text     = Entity.CUST_NAME;
            lblPhoneValue.Text        = Entity.PHONE;
            lblCDPValue.Text          = Entity.CDPID_NBR;
            lblGoldNumberValue.Text   = Entity.NO1_CLUB_GOLD;
            lblGoldStatusValue.Text   = goldGroupName;
            lblFlightNumberValue.Text = Entity.FLIGHT_NBR;
            lblTacoValue.Text         = Entity.TACO;
            lblNeverLostValue.Text    = Entity.NEVERLOST;
            lblPrepaidValue.Text      = Entity.PREPAID;
            lblResDateValue.Text      = Entity.DATE_SOLD == null ? "" : Entity.DATE_SOLD.Value.ToShortDateString();
            lblRemarksValue.Text      = Entity.REMARKS;
            lblTariffValue.Text       = Entity.RATE_QUOTED;
            Visible = true;
        }
Beispiel #3
0
        public void TestCalculateTopics()
        {
            var mfe = GetMainFilterExample();

            var site = ReservationsDataAccess.CalculateTopics(true, 72, mfe, true, true);

            var fleet      = ReservationsDataAccess.CalculateTopics(true, 72, mfe, true, false);
            var dayActuals = ReservationsDataAccess.CalculateTopics(true, 72, mfe, false);

            TestResultComparison.CheckAllPoolingValues(dayActuals, fleet, site);
        }
        public void TestCalculateTopics()
        {
            var mfe  = GetMainFilterExample();
            var site = ReservationsDataAccess.CalculateTopics(true, 72, mfe, true, true);

            var fleet      = ReservationsDataAccess.CalculateTopics(true, 72, mfe, true, false);
            var dayActuals = ReservationsDataAccess.CalculateTopics(true, 72, mfe, false);


            var ss = site.Where(d => d.Tme == 24);
            var ff = fleet.Where(d => d.Tme == 24);

            var ss2 = ss.Sum(d => d.Offset);
            var ff2 = ff.Sum(d => d.Offset);

            TestResultComparison.CheckAllPoolingValues(dayActuals, fleet, site);
        }
Beispiel #5
0
        public void TestMethod2()
        {
            var mfe = new MainFilterEntity
            {
                Country    = "United Kingdom",
                PoolRegion = "South England"
                ,
                CmsLogic        = true,
                LocationGrpArea = "HEATHROW"
                ,
                CarSegment = "Car",
                CarClass   = @"CompactMan",
                CarGroup   = "C"
            };


            //var ss = AlertsDataAccess.GetLocationCarGroupsWithNegativeBalance(mfe, DateTime.Now.AddDays(2).Date);

            var alertClasses = AlertsDataAccess.GetLocationCarGroups(mfe, DateTime.Now.AddDays(1).Date);
            //var dd = alertClasses.Where(d => d.Label.Substring(0,7) == "GEAAC60").ToList();

            var actualsClasses = ReservationsDataAccess.CalculateTopics(true, 20, mfe, false, false);

            foreach (var ac in alertClasses)
            {
                var time = ac.Tme;
                var data = actualsClasses.FirstOrDefault(d => d.Tme == time);
                //var labelBits = ac.Label.Split(' ');
                if (data != null)
                {
                    Assert.IsTrue(ac.Balance == data.Balance);
                }

                //var branch = labelBits[0];
                // var carGroup = labelBits[1];
                //var balance = ac.Balance;
            }


            Assert.IsTrue(true);
        }
        public void TestCalculateTopics()
        {
            //var p = new List<string>
            //                 {
            //                     "GEBRA63",
            //                     "GEBRA91",
            //                     "GECLL61",
            //                     "GEESW60",
            //                     "GEGTT91",
            //                     "GEHAJ61",
            //                     "GEHAJ63",
            //                     "GEHAJ66",
            //                     "GEHDM60",
            //                     "GEKSL60",
            //                     "GEKSL90",
            //                     "GENOH61",
            //                     "GEPDB61",
            //                     "GESGR60",
            //                     "GEWER60",
            //                     "GEWUN60",
            //                     "GEGTN61"
            //                 };

            var p = new List <string>
            {
                "GELEJ50",
            };
            var mfe = GetMainFilterExample();

            foreach (var s in p)
            {
                mfe.Branch = "";
                var site = ReservationsDataAccess.CalculateTopics(true, 72, mfe, true, true);
                mfe.Branch = s;
                var fleet      = ReservationsDataAccess.CalculateTopics(true, 72, mfe, true, false);
                var dayActuals = ReservationsDataAccess.CalculateTopics(true, 72, mfe, false);

                TestResultComparison.CheckAllPoolingValues(dayActuals, fleet, site, s);
            }
        }
        public IList <String[]> GetList(Enums.DayActualTime tme)
        {
            var hourlyColumns   = tme == Enums.DayActualTime.THREE;
            var returned        = new List <String[]>();
            var numberOfColumns = tme == Enums.DayActualTime.THIRTY ? 30 : (Int32)Enums.ThreeDayActuals.MAXNOOFCOLUMNS;
            var topicData       = ReservationsDataAccess.CalculateTopics(hourlyColumns, numberOfColumns, Filter, true, false);
            int topicId         = (from topic in _resTopics where topic.Name.Equals(Filter.Topic) select topic.Id).Single();

            foreach (string lbl in topicData.Select(p => p.Label).Distinct())
            {
                var s = new String[NoInArray];
                s[0] = lbl;

                for (int i = 0; i < NoInArray - 1; i++)
                {
                    var data = topicData.FirstOrDefault(d => d.Tme == i && d.Label == lbl);
                    int val  = 0;
                    if (data != null)
                    {
                        switch (topicId)
                        {
                        case 1: val = data.Available; break;

                        case 2: val = data.Opentrips; break;

                        case 3: val = data.Reservations; break;

                        case 4: val = data.OnewayRes; break;

                        case 5: val = data.GoldServiceReservations; break;

                        case 6: val = data.PrepaidReservations; break;

                        //case 7: val = e3 == null ? 0 : e3.Predelivery; break;
                        case 8: val = data.Checkin; break;

                        case 9: val = data.OnewayCheckin; break;

                        case 10: val = data.LocalCheckIn; break;

                        case 11: val = data.Balance; break;

                        case 12: val = data.JustAdditions; break;

                        case 13: val = data.JustDeletions; break;
                        }
                    }

                    s[i + 1] = val.ToString(CultureInfo.InvariantCulture);
                }
                returned.Add(s);
            }

            var totals = new string[NoInArray];

            for (int i = 1; i < NoInArray; i++)
            {
                totals[i] = returned.Sum(p => Convert.ToDecimal(p.ElementAt(i))).ToString();
            }
            totals[0] = "Totals";
            returned.Add(totals);

            return(returned);
        }