Пример #1
0
 public void UpdatePropertyes()
 {
     //MessageBox.Show((DateTime.Now - DateTime.Parse("01.09.2019")).Days.ToString());
     try
     {
         DB.TaskDataBase.Instance.WorkTasks.Load();
         List <WorkTask> tasks = DB.TaskDataBase.Instance.WorkTasks.Where((t) => t.User.ID == CurrentUser.Instance.User.ID ||
                                                                          t.Performers.FirstOrDefault(p => p.User.ID == CurrentUser.Instance.User.ID) != null)
                                 .Include(t => t.Performers) // Загрузка вложенных данных внутри типа WorkTask, в данном случае списка исполнителей. (По умолчанию virtual не грузятся)
                                 .ToList();
         ExpiriedCount = tasks.Aggregate(0, (acc, v) => { return(acc + (Utilits.DateTimeToUgrency(v.PeriodOfExecution) == Ugrencys.Expiried && v.State == WorkTaskStates.Work ? 1 : 0)); });
         ComingCount   = tasks.Aggregate(0, (acc, v) => { return(acc + (Utilits.DateTimeToUgrency(v.PeriodOfExecution) == Ugrencys.Coming && v.State == WorkTaskStates.Work ? 1 : 0)); });
         WorkTasks     = new ObservableCollection <WorkTask>(tasks.Where(t => t.State == stateFilter));
     }
     catch (Exception ex)
     {
         LogManager.Logger.Write("Ошибка загрузки списка задач", ex);
     }
 }
        public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
        {
            WorkTaskStates state = (WorkTaskStates)values[1];

            if (state != WorkTaskStates.Work)
            {
                return(DefaultBrush);
            }
            DateTime date = (DateTime)values[0];
            Ugrencys u    = Utilits.DateTimeToUgrency(date);

            switch (u)
            {
            case Ugrencys.Expiried:
                return(ExpiriedBrush);

            case Ugrencys.Coming:
                return(ComingBrush);
            }
            return(NotRushBrush);
        }