public MonthInterventionsViewModel(YearInterventionsViewModel parent, List <LocalIntervention> localInterventions, int monthNumber)
 {
     Parent       = parent;
     SelectedRows = new ObservableCollection <InterventionDetails>();
     PopulateInterventions(localInterventions);
     MonthName        = LocalCache.Instance.MonthsNames[monthNumber - 1];
     MonthId          = monthNumber;
     DeleteRowCommand = new DelegateCommand <InterventionDetails>(OnDelete);
     eventAggregator  = ServiceLocator.Current.GetInstance <IEventAggregator>();
 }
예제 #2
0
        public void AddYear(InterventionDetails interventionDetails)
        {
            int year        = interventionDetails.Date.Year;
            var yearToAddTo = YearList.List.FirstOrDefault(item => item.Year == year);

            if (yearToAddTo != null)
            {
                yearToAddTo.AddInterventionToMonth(interventionDetails);
            }
            else
            {
                yearToAddTo = new YearInterventionsViewModel(new Dictionary <int, List <LocalIntervention> >(), year, this);
                YearList.Add(yearToAddTo);
                yearToAddTo.AddInterventionToMonth(interventionDetails);
                LocalCache.Instance.SettingsItems[LocalCache.SettingsItemEnum.An].Add(new SettingsItem()
                {
                    Id   = year,
                    Name = year.ToString()
                });
            }
        }
예제 #3
0
        public void PopulateYears(Dictionary <int, Dictionary <int, List <LocalIntervention> > > yearMonthInterventions)
        {
            YearList = new ObjectList <YearInterventionsViewModel>(true);
            LocalCache.Instance.SettingsItems.Add(LocalCache.SettingsItemEnum.An, new List <SettingsItem>());
            int      totalInterventions = 0;
            double   totalRevenue       = 0;
            double   totalProfit        = 0;
            TimeSpan totalDuration      = new TimeSpan();
            var      listOfYears        = new List <YearInterventionsViewModel>();

            foreach (var yearKey in yearMonthInterventions.Keys)
            {
                var newYear = new YearInterventionsViewModel(yearMonthInterventions[yearKey], yearKey, this);
                // YearList.Add(newYear);
                listOfYears.Add(newYear);
                totalInterventions += newYear.NumarInterventii;
                totalRevenue       += newYear.TotalIncasari;
                totalDuration      += newYear.TotalHours;
                totalProfit        += newYear.TotalProfit;
                LocalCache.Instance.SettingsItems[LocalCache.SettingsItemEnum.An].Add(new SettingsItem()
                {
                    Id   = yearKey,
                    Name = yearKey.ToString()
                });
            }
            eventAggregator.GetEvent <TotalsModifiedEvent>().Publish(new TotalsIfo
            {
                TotalHours         = totalDuration,
                TotalInverventions = totalInterventions,
                TotalRevenue       = totalRevenue,
                TotalProfit        = totalProfit,
            });
            listOfYears = listOfYears.OrderBy(item => item.Year).ToList();
            foreach (var yearInterventionsViewModel in listOfYears)
            {
                YearList.Add(yearInterventionsViewModel);
            }
        }