Esempio n. 1
0
		public SKUDViewModel()
		{
			Filter = new EmployeeFilter();
			SelectedEmployee = Employees.FirstOrDefault();
			ShowFilterCommand = new RelayCommand(OnShowFilter);
			//RemoveCommand = new RelayCommand(OnRemove, CanEditDelete);
			//EditCommand = new RelayCommand(OnEdit, CanEditDelete);
		}
Esempio n. 2
0
 public IEnumerable<Employee> GetEmployees(EmployeeFilter filter)
 {
     try
     {
         var employees = new List<Employee>();
         var databaseEmployees = Context.Employee.ToList().Where(x => IsInFilter(x, filter)).ToList();
         databaseEmployees.ForEach(x => employees.Add(Translator.Translate(x)));
         return employees;
     }
     catch { return new List<Employee>(); }
 }
		public EmployeeFilterViewModel(EmployeeFilter filter)
		{
			Title = "Настройки фмльтра";

			Filter = filter;

			ClearCommand = new RelayCommand(OnClear);
			SaveCommand = new RelayCommand(OnSave);
			CancelCommand = new RelayCommand(OnCancel);


			Departments = new List<FilterDepartmentViewModel>();
			var departments = FiresecManager.GetDepartments(null).ToList();
			departments.ForEach(x => Departments.Add(new FilterDepartmentViewModel(x, this)));

			Positions = new List<FilterPositionViewModel>();
			var positions = FiresecManager.GetPositions(null).ToList();
			positions.ForEach(x => Positions.Add(new FilterPositionViewModel(x)));

			Initialize();
		}
		void OnSave()
		{
			Filter = new EmployeeFilter();
			Departments.ForEach(x =>
			{
				if (x.IsChecked)
				{
					Filter.DepartmentUids.Add(x.Department.Uid);
				}
			});
			Filter.DepartmentUids.Distinct();
			Positions.ForEach(x =>
			{
				if (x.IsChecked)
					Filter.PositionUids.Add(x.Position.Uid);
			});
			//if (StartDateTime > EndDateTime)
			//{
			//    MessageBoxService.ShowWarning("Начальная дата должна быть меньше конечной");
			//    return;
			//}
			Close(true);
		}
		void OnClear()
		{
			Filter = new EmployeeFilter();
			Initialize();
		}
Esempio n. 6
0
        bool IsInFilter(FiresecService.SKUD.DataAccess.Employee employee, EmployeeFilter filter)
        {
            if (filter == null)
                return true;
            
            bool isInUids = !filter.HasUids || filter.Uids.Any(x => employee.Uid == x);
            bool isInDepartments = !filter.HasDepartments || filter.DepartmentUids.Any(x => employee.DepartmentUid == x);
            bool isInPositions = !filter.HasPositions || filter.PositionUids.Any(x => employee.PositionUid == x);
            bool isInAppointed = filter.Appointed == null ||
                (employee.Appointed >= filter.Appointed.StartDate && employee.Appointed <= filter.Appointed.EndDate);
            bool isInDismissed = filter.Dismissed == null ||
                (employee.Dismissed >= filter.Dismissed.StartDate && employee.Dismissed <= filter.Dismissed.EndDate);

            return isInUids && isInDepartments && isInPositions && isInAppointed && isInDepartments;
        }
Esempio n. 7
0
 public IEnumerable<Employee> GetEmployees(EmployeeFilter filter)
 {
     return _skud.GetEmployees(filter);
 }
Esempio n. 8
0
 public static IEnumerable<Employee> GetEmployees(EmployeeFilter filter)
 {
     return FiresecService.GetEmployees(filter);
 }