private IQueryable <ToDoItem> TakeByTimePeriod(IQueryable <ToDoItem> query, TimePeriodEnum period) { switch (period) { case TimePeriodEnum.Day: var startOfDay = DateTime.Now.StartOfDay(); var endOfDay = DateTime.Now.EndOfDay(); return(query.Where(x => x.StartDate >= startOfDay && ((x.EndDate.HasValue && x.EndDate <= endOfDay) || x.StartDate <= endOfDay))); case TimePeriodEnum.Week: var startOfWeek = DateTime.Now.StartOfWeek(DayOfWeek.Monday); var endOfWeek = DateTime.Now.EndOfWeek(DayOfWeek.Monday); return(query.Where(x => x.StartDate >= startOfWeek && ((x.EndDate.HasValue && x.EndDate <= endOfWeek) || x.StartDate <= endOfWeek))); case TimePeriodEnum.Month: var startOfMonth = DateTime.Now.StartOfMonth(); var endOfMonth = DateTime.Now.EndOfMonth(); return(query.Where(x => x.StartDate >= startOfMonth && ((x.EndDate.HasValue && x.EndDate <= endOfMonth) || x.StartDate <= endOfMonth))); case TimePeriodEnum.AllTime: default: return(query); } }
public static ITimePeriod Create(TimePeriodEnum type) { switch (type) { case TimePeriodEnum.Month: return(TimePeriodBase.Month); case TimePeriodEnum.Month3: return(TimePeriodBase.Month3); case TimePeriodEnum.Month6: return(TimePeriodBase.Month6); case TimePeriodEnum.Year: return(TimePeriodBase.Year); case TimePeriodEnum.Lifetime: return(TimePeriodBase.LifeTime); case TimePeriodEnum.Zero: return(TimePeriodBase.Zero); case TimePeriodEnum.Month15: return(TimePeriodBase.Month15); case TimePeriodEnum.Month18: return(TimePeriodBase.Month18); case TimePeriodEnum.Year2: return(TimePeriodBase.Year2); default: throw new NotImplementedException(); } }
public List <WorkLog> GetWorkLogsFromPeriod(List <WorkLog> logs, TimePeriodEnum period) { var currentDate = DateTime.Now; DateTime startTime; DateTime endTime; switch (period) { case TimePeriodEnum.Month: startTime = new DateTime(currentDate.Year, currentDate.Month, 1); endTime = WorkLogsInput.SearchStartDate.AddMonths(1).AddDays(-1); break; case TimePeriodEnum.Week: var days = currentDate.DayOfWeek - DayOfWeek.Sunday; startTime = currentDate.AddDays(-days); endTime = startTime.AddDays(6); break; case TimePeriodEnum.Day: startTime = currentDate; endTime = currentDate; break; default: startTime = currentDate; endTime = currentDate; break; } var logsInTime = logs.Where(log => log.DateStarted >= startTime && log.DateStarted <= endTime).ToList(); return(logsInTime); }
protected TimePeriodBase(TimePeriodEnum timePeriodType, Guid internalId) { TimePeriodType = timePeriodType; InternalId = internalId; ConvertedTypeInfo info = new DatabaseAnalysisFunctionTimePeriodTypeConverter().Convert(timePeriodType); Name = info.Name; DisplayName = info.DisplayName; Description = info.Description; }
public BudgetSummary( TimePeriodEnum timePeriod, DateTime startDate, DateTime endDate, decimal totalIncome, decimal totalOutcome) { TimePeriod = timePeriod; StartDate = startDate; EndDate = endDate; TotalIncome = totalIncome; TotalOutcome = totalOutcome; NetChange = totalIncome - totalOutcome; IncomeCategoryTotals = new Dictionary <IncomeCategoryEnum, decimal>(); OutcomeCategoryTotals = new Dictionary <OutcomeCategoryEnum, decimal>(); }
public static FeedbackPeriod ConvertToAmazonTimePeriod(TimePeriodEnum timePeriod) { switch (timePeriod) { case TimePeriodEnum.Lifetime: return(FeedbackPeriod.Lifetime); case TimePeriodEnum.Month: return(FeedbackPeriod.Days30); case TimePeriodEnum.Month3: return(FeedbackPeriod.Days90); case TimePeriodEnum.Year: return(FeedbackPeriod.Days365); default: throw new NotImplementedException(); } }
internal void Run() { ConsoleHelper.WriteSpacedLine("Enter Budget FilePath (including filename)"); IBudget budget = JsonBudget.LoadBudget(Console.ReadLine()); TimePeriodEnum summaryPeriod = ConsoleHelper.GetEnumValueFromConsoleInput <TimePeriodEnum>("Select Summary TimePeriod: "); DateTime endDate; if (ConsoleHelper.GetBooleanInput("From Current Date?")) { endDate = DateTime.Today; } else { endDate = ConsoleHelper.GetDateInput("Enter the last date of the period to summarise"); } BudgetSummariser summariser = new BudgetSummariser(budget, summaryPeriod, endDate); OutputSummary(summariser.BuildSummary()); }
private int GetFeedbackByPeriod(FeedbackPeriodType[] feedbackPeriodType, TimePeriodEnum period) { if (feedbackPeriodType == null || feedbackPeriodType.Length == 0) { return(0); } var tp = TimePeriodFactory.Create(period); int days = tp.DaysInPeriod; FeedbackPeriodType rez = feedbackPeriodType.FirstOrDefault(p => p.PeriodInDays == days); Debug.Assert(rez != null); if (rez == null) { return(0); } return(rez.Count); }
public DatabaseEbayFeedbackDataByPeriod(TimePeriodEnum timePeriod) : base(timePeriod) { }
public TimePeriodLifeTime(TimePeriodEnum lifetime, Guid guid) : base(lifetime, guid) { }
public int GetNeutralFeedbackByPeriod(TimePeriodEnum period) { return(_response.FeedbackSummary == null ? 0 : GetFeedbackByPeriod(_response.FeedbackSummary.NeutralFeedbackPeriodArray, period)); }
public ReceivedDataListTimeDependentInfo(ReceivedDataListTimeDependentBase <T> data, TimePeriodEnum timePeriodType) { Data = data; TimePeriodType = timePeriodType; }
} // GetAggregations private void AppendAggregations( List <IAnalysisDataParameterInfo> target, List <EbayAggregation> ag, TimePeriodEnum timePeriod, DateTime firstOfMonth ) { ITimePeriod time = TimePeriodFactory.Create(timePeriod); if (time.TimePeriodType != TimePeriodEnum.Lifetime) { ag = ag.Where(x => x.TheMonth > firstOfMonth.AddMonths(-time.MonthsInPeriod)).ToList(); } var parameterInfos = new List <IAnalysisDataParameterInfo>(); AddAnalysisItem(parameterInfos, time, AggregationFunction.Turnover, ag.Sum(x => x.Turnover)); AddAnalysisItem( parameterInfos, time, AggregationFunction.AverageSumOfOrder, ag.Sum(x => x.AverageSumOfOrderNumerator), ag.Sum(x => x.AverageSumOfOrderDenominator) ); AddAnalysisItem( parameterInfos, time, AggregationFunction.AverageItemsPerOrder, ag.Sum(x => x.AverageItemsPerOrderNumerator), ag.Sum(x => x.AverageItemsPerOrderDenominator) ); AddAnalysisItem( parameterInfos, time, AggregationFunction.CancelledOrdersCount, ag.Sum(x => x.CancelledOrdersCount) ); AddAnalysisItem(parameterInfos, time, AggregationFunction.NumOfOrders, ag.Sum(x => x.NumOfOrders)); AddAnalysisItem( parameterInfos, time, AggregationFunction.OrdersCancellationRate, ag.Sum(x => x.OrdersCancellationRateNumerator), ag.Sum(x => x.OrdersCancellationRateDenominator) ); AddAnalysisItem(parameterInfos, time, AggregationFunction.TotalItemsOrdered, ag.Sum(x => x.TotalItemsOrdered)); AddAnalysisItem(parameterInfos, time, AggregationFunction.TotalSumOfOrders, ag.Sum(x => x.TotalSumOfOrders)); if (time.MonthsInPeriod <= MonthsInYear) { AddAnalysisItem( parameterInfos, time, AggregationFunction.TotalSumOfOrdersAnnualized, ag.Sum(x => x.TotalSumOfOrders) * (MonthsInYear / (decimal)time.MonthsInPeriod) ); } // if target.AddRange(parameterInfos); } // AppendAggregations
public DatabaseAmazonFeedbackDataByPeriod(TimePeriodEnum timePeriod) : base(timePeriod) { }
public BudgetSummariser(IBudget budget, TimePeriodEnum period, DateTime endDate) { Budget = budget; Period = period; EndDate = endDate; }
public DatabaseEbayRaitingDataByPeriod(TimePeriodEnum timePeriod) : base(timePeriod) { }
public TimePeriodYearly(TimePeriodEnum year, Guid guid, int countYears) : base(year, guid) { _CountYears = countYears; }
public TimePeriodNone(TimePeriodEnum periodType, Guid guid) : base(periodType, guid) { }
public TimePeriodMonthly(TimePeriodEnum month, Guid guid, int countMonths) : base(month, guid) { _CountMonths = countMonths; }
protected DataByPeriodBase(TimePeriodEnum timePeriod) { TimePeriod = timePeriod; }