예제 #1
0
    public static HistoricReturn GetTimeData(int StationID, DateTime PullDate)
    {
        try
        {
            DateTime dataCollectionStartDate = new DateTime(2011, 5, 4, 17, 0, 0);

            CaBiDataContext dc         = new CaBiDataContext();
            DateTime        targetDate = PullDate;
            List <Reading>  returnList = new List <Reading>();

            bool IsWeekend = IsAWeekend(targetDate);
            while (targetDate > dataCollectionStartDate)
            {
                if (IsAWeekend(targetDate) == IsWeekend)
                {
                    try
                    {
                        Reading r = (from p in dc.Pulls
                                     from pr in dc.PullResults
                                     where pr.PullID == p.PullID &&
                                     pr.StationID == StationID &&
                                     p.PullDate >= targetDate
                                     select new Reading(pr, p.PullDate)).First <Reading>();

                        if ((r.active) && (r.bikeCount + r.dockCount > 0))
                        {
                            returnList.Add(r);
                        }
                    }
                    catch
                    {
                        break;
                    }
                }
                targetDate = targetDate.Subtract(new TimeSpan(1, 0, 0, 0));
            }

            HistoricReturn hr = new HistoricReturn();
            hr.rList        = returnList;
            hr.isWeekend    = IsWeekend;
            hr.isSuccessful = true;
            hr.easyTime     = targetDate.AddHours(1).ToShortTimeString();
            return(hr);
        }
        catch
        {
            return(new HistoricReturn());
        }
    }
예제 #2
0
파일: CaBiData.cs 프로젝트: kylehill/cabi
    public static HistoricReturn GetTimeData(int StationID, DateTime PullDate)
    {
        try
        {
            DateTime dataCollectionStartDate = new DateTime(2011, 5, 4, 17, 0, 0);

            CaBiDataContext dc = new CaBiDataContext();
            DateTime targetDate = PullDate;
            List<Reading> returnList = new List<Reading>();

            bool IsWeekend = IsAWeekend(targetDate);
            while (targetDate > dataCollectionStartDate)
            {
                if (IsAWeekend(targetDate) == IsWeekend)
                {
                    try
                    {
                        Reading r = (from p in dc.Pulls
                                     from pr in dc.PullResults
                                     where pr.PullID == p.PullID &&
                                     pr.StationID == StationID &&
                                     p.PullDate >= targetDate
                                     select new Reading(pr, p.PullDate)).First<Reading>();

                        if ((r.active) && (r.bikeCount + r.dockCount > 0))
                        {
                            returnList.Add(r);
                        }
                    }
                    catch
                    {
                        break;
                    }
                }
                targetDate = targetDate.Subtract(new TimeSpan(1, 0, 0, 0));
            }

            HistoricReturn hr = new HistoricReturn();
            hr.rList = returnList;
            hr.isWeekend = IsWeekend;
            hr.isSuccessful = true;
            hr.easyTime = targetDate.AddHours(1).ToShortTimeString();
            return hr;
        }
        catch
        {
            return new HistoricReturn();
        }
    }