public void AssignCashDeskInfo(CashDeskPlanningInfo cashdeskinfo, DateTime weekMondayDate) { CashDeskPlanningInfo CashDeskInfo = cashdeskinfo; if (CashDeskInfo != null) { DateTime sunday = DateTimeHelper.GetSunday(weekMondayDate); DateTime index_date = DateTimeHelper.GetMonday(weekMondayDate); int index = 0; while (index_date <= sunday) { index = (int)index_date.DayOfWeek; DateCashDeskPeoplePerHour datecashdesk = cashdeskinfo.GetDayCashDeskData(index_date); days_calculators[index] = new CashDeskDailyPlanningCalculator2(); days_calculators[index].AssignCashDeskInfo(cashdeskinfo, index_date); if (datecashdesk != null) { TargetUnits[index] = datecashdesk.Calculate2(CashDeskInfo.CashDeskAmount, CashDeskInfo.MinimumPresence, CashDeskInfo.MaximumPresence); } else { TargetUnits[index] = 0; } index_date = index_date.AddDays(1); } TargetUnits.Calculate(); } else { Clear(); } }
public void AddCashDeskItem(CashDeskPeoplePerHourEstimateShort item) { if (item == null) { #if DEBUG throw new ArgumentNullException(); #else return; #endif } DateCashDeskPeoplePerHour val = GetItem(item.Date, true); val.AddCashDeskPeoplePerHour(item); }
//public void AddBusinessVolume(BusinessVolumeCRRSum item) //{ // if (item == null) // { // throw new ArgumentNullException(); // } // DateCashDeskPeoplePerHour val = GetItem(item.Date, true); // val.AddBusinessVolume (item); //} private DateCashDeskPeoplePerHour GetItem(DateTime date, bool bCreate) { DateCashDeskPeoplePerHour value = null; if (_diction == null) { _diction = new Dictionary <DateTime, DateCashDeskPeoplePerHour>(); } if (!_diction.TryGetValue(date, out value)) { if (bCreate) { value = new DateCashDeskPeoplePerHour(date); _diction[date] = value; _daycashdeskpeoples.Add(value); } } return(value); }
public void AssignCashDeskInfo(CashDeskPlanningInfo cashdeskinfo, DateTime date) { _CashDeskInfo = cashdeskinfo; TargetedCashDeskUnits.Clear(); if (CashDeskInfo != null) { AvgCashDeskAmount = CashDeskInfo.CashDeskAmount; MinPercent = CashDeskInfo.MinimumPresence; MaxPercent = CashDeskInfo.MaximumPresence; DateCashDeskPeoplePerHour datecashdesk = CashDeskInfo.GetDayCashDeskData(date); TargetedCashDeskUnits = new DblArray50MinMax(24, MinPercent, MaxPercent); if (datecashdesk != null) { //Random n = new Random(5000); for (int i = 0; i < 24; i++) { if (AvgCashDeskAmount != 0) { //TargetedCashDeskUnits.Elements[i] = n.NextDouble () / AvgCashDeskAmount; TargetedCashDeskUnits.Elements[i] = datecashdesk.GetReceipt(i) / AvgCashDeskAmount; // _GetPeoplePerHour(datecashdesk.GetReceipt(i), AvgCashDeskAmount); } else { TargetedCashDeskUnits.Elements[i] = 0; } } } TargetedCashDeskUnits.Calculate(); } }