Example #1
0
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var doorFilter = filter as IReportFilterDoor;
			if (doorFilter == null)
				return;
			doorFilter.Doors = Doors.Where(item => item.IsChecked).Select(item => item.Item.UID).ToList();
		}
Example #2
0
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var userFilter = filter as IReportFilterUser;
			if (userFilter == null)
				return;
            userFilter.Users = Users.Where(item => item.IsChecked).Select(item => item.Item.Name).ToList();
		}
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var scheduleFilter = filter as IReportFilterScheduleScheme;
			if (scheduleFilter == null)
				return;
			scheduleFilter.ScheduleSchemas = Schedules.SelectMany(item => item.Children).Where(item => item.IsChecked).Select(item => item.Item.UID).ToList();
		}
		public void UpdateFilter(SKDReportFilter filter)
		{
			if (_model.MainViewModel != null)
				_model.MainViewModel.UpdateFilter(filter);
			if (_model.CommandsViewModel != null)
				_model.CommandsViewModel.UpdateFilter(filter);
			Pages.ForEach(page => page.UpdateFilter(filter));
		}
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var placementFilter = filter as EmployeeZonesReportFilter;
			if (placementFilter == null)
				return;
			placementFilter.UseCurrentDate = UseCurrentDate;
			placementFilter.ReportDateTime = ReportDateTime;
		}
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var mirrorfilter = filter as IReportFilterReflection;
			if (mirrorfilter == null)
				return;
			if (SelectedDevice != null)
				mirrorfilter.Mirror = SelectedDevice.UID;
		}
Example #7
0
		public override void LoadFilter(SKDReportFilter filter)
		{
			var doorFilter = filter as IReportFilterDoor;
			if (doorFilter == null)
				return;
			if (doorFilter.Doors == null)
				doorFilter.Doors = new List<Guid>();
			Doors.ForEach(item => item.IsChecked = doorFilter.Doors.Contains(item.Item.UID));
		}
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var passCardFilter = filter as CardsReportFilter;
			if (passCardFilter == null)
				return;
			passCardFilter.UseExpirationDate = UseExpirationDate;
			passCardFilter.ExpirationDate = ExpirationDate;
			passCardFilter.ExpirationType = ExpirationType;
		}
Example #9
0
		public override void LoadFilter(SKDReportFilter filter)
		{
			var userFilter = filter as IReportFilterUser;
			if (userFilter == null)
				return;
			if (userFilter.Users == null)
				userFilter.Users = new List<string>();
			Users.ForEach(item => item.IsChecked = userFilter.Users.Contains(item.Item.Name));
		}
		public override void LoadFilter(SKDReportFilter filter)
		{
			var documentFilter = filter as DocumentsReportFilter;
			if (documentFilter == null)
				return;
			Overtime = documentFilter.Overtime;
			Presence = documentFilter.Presence;
			Abcense = documentFilter.Abcense;
		}
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var documentFilter = filter as DocumentsReportFilter;
			if (documentFilter == null)
				return;
			documentFilter.Overtime = Overtime;
			documentFilter.Presence = Presence;
			documentFilter.Abcense = Abcense;
		}
Example #12
0
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var scheduleFilter = filter as IReportFilterSchedule;
			if (scheduleFilter == null)
				return;
			scheduleFilter.Schedules = Schedules.Where(item => item.IsChecked).Select(item => item.Item.No).ToList();
			scheduleFilter.ScheduleEnter = ScheduleEnter;
			scheduleFilter.ScheduleExit = ScheduleExit;
		}
		public override void LoadFilter(SKDReportFilter filter)
		{
			var placementFilter = filter as EmployeeZonesReportFilter;
			if (placementFilter == null)
				return;
			UseCurrentDate = placementFilter.UseCurrentDate;
			Date = placementFilter.ReportDateTime.Date;
			Time = placementFilter.ReportDateTime.TimeOfDay;
		}
		public override void LoadFilter(SKDReportFilter filter)
		{
			var mirrorfilter = filter as IReportFilterReflection;
			if (mirrorfilter == null)
				return;
			if (!filter.IsDefault)
				SelectedDevice = Devices.FirstOrDefault(x => x.UID == mirrorfilter.Mirror);
			else
				SelectedDevice = Devices.FirstOrDefault();
		}
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var passCardTypeFilter = filter as IReportFilterPassCardType;
			if (passCardTypeFilter == null)
				return;
			passCardTypeFilter.PassCardActive = PassCardActive;
			var fullPassCardTypeFilter = passCardTypeFilter as IReportFilterPassCardTypeFull;
			if (fullPassCardTypeFilter != null)
				fullPassCardTypeFilter.PassCardInactive = PassCardInactive;
		}
		public override void LoadFilter(SKDReportFilter filter)
		{
			var scheduleFilter = filter as IReportFilterScheduleScheme;
			if (scheduleFilter == null)
				return;
			if (scheduleFilter.ScheduleSchemas == null)
				scheduleFilter.ScheduleSchemas = new List<Guid>();
			Schedules.ForEach(item => item.IsExpanded = true);
			Schedules.SelectMany(item => item.Children).ForEach(item => item.IsChecked = scheduleFilter.ScheduleSchemas.Contains(item.Item.UID));
		}
		public override void LoadFilter(SKDReportFilter filter)
		{
			_OrganisationChangedSubscriber = new OrganisationChangedSubscriber(this);
			_reportFilter = filter as IReportFilterDepartment;
			var organisations = (filter as IReportFilterOrganisation).Organisations;
			OrganisationUIDs = organisations != null ? organisations : new List<Guid>();
			var filterArchive = filter as IReportFilterArchive;
			IsWithDeleted = filterArchive != null && filterArchive.UseArchive;
			InitializeFilter();
		}
		public override void LoadFilter(SKDReportFilter filter)
		{
			var passCardTypeFilter = filter as IReportFilterPassCardType;
			if (passCardTypeFilter == null)
				return;
			PassCardActive = passCardTypeFilter.PassCardActive;
			var fullPassCardTypeFilter = passCardTypeFilter as IReportFilterPassCardTypeFull;
			AllowInactive = fullPassCardTypeFilter != null;
			if (AllowInactive)
				PassCardInactive = fullPassCardTypeFilter.PassCardInactive;
		}
		void LoadFilter(SKDReportFilter filter)
		{
			using (new WaitWrapper())
			{
				if (_model.MainViewModel != null)
					_model.MainViewModel.LoadFilter(filter);
				if (_model.CommandsViewModel != null)
					_model.CommandsViewModel.LoadFilter(filter);
				Pages.ForEach(page => page.LoadFilter(filter));
			}
		}
Example #20
0
		public override void LoadFilter(SKDReportFilter filter)
		{
			var scheduleFilter = filter as IReportFilterSchedule;
			if (scheduleFilter == null)
				return;
			if (scheduleFilter.Schedules == null)
				scheduleFilter.Schedules = new List<int>();
			Schedules.ForEach(item => item.IsChecked = scheduleFilter.Schedules.Contains(item.Item.No));
			ScheduleEnter = scheduleFilter.ScheduleEnter;
			ScheduleExit = scheduleFilter.ScheduleExit;
		}
		public override void LoadFilter(SKDReportFilter filter)
		{
			var disciplinaryFilter = filter as DisciplineReportFilter;
			if (disciplinaryFilter == null)
				return;
			ShowDelay = disciplinaryFilter.ShowDelay;
			ShowEarlуRetirement = disciplinaryFilter.ShowEarlуRetirement;
			ShowAbsence = disciplinaryFilter.ShowAbsence;
			ShowOvertime = disciplinaryFilter.ShowOvertime;
			ShowConfirmed = disciplinaryFilter.ShowConfirmed;
			ShowWithoutTolerance = disciplinaryFilter.ShowWithoutTolerance;
		}
Example #22
0
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var zoneFilter = filter as IReportFilterZone;
			if (zoneFilter == null)
				return;
			zoneFilter.Zones = Zones.Where(item => item.IsChecked).Select(item => item.Item.UID).ToList();
			var direction = zoneFilter as IReportFilterZoneWithDirection;
			if (direction != null)
			{
				direction.ZoneIn = ZoneIn;
				direction.ZoneOut = ZoneOut;
			}
		}
Example #23
0
		public override void LoadFilter(SKDReportFilter filter)
		{
			var zoneFilter = filter as IReportFilterZone;
			if (zoneFilter == null)
				return;
			if (zoneFilter.Zones == null)
				zoneFilter.Zones = new List<Guid>();
			Zones.ForEach(item => item.IsChecked = zoneFilter.Zones.Contains(item.Item.UID));
			WithDirection = zoneFilter is IReportFilterZoneWithDirection;
			if (WithDirection)
			{
				ZoneIn = ((IReportFilterZoneWithDirection)zoneFilter).ZoneIn;
				ZoneOut = ((IReportFilterZoneWithDirection)zoneFilter).ZoneOut;
			}
		}
Example #24
0
		public override void LoadFilter(SKDReportFilter filter)
		{
			_OrganisationChangedSubscriber = new OrganisationChangedSubscriber(this);
			_employeeFilter = filter as IReportFilterEmployee;
			if (_employeeFilter == null)
				return;
			AllowVisitor = _employeeFilter is IReportFilterEmployeeAndVisitor;
			_isEmployee = AllowVisitor ? ((IReportFilterEmployeeAndVisitor)_employeeFilter).IsEmployee : true;
			var organisationFilter = filter as IReportFilterOrganisation;
			OrganisationUIDs = organisationFilter != null && organisationFilter.Organisations != null ? organisationFilter.Organisations : new List<Guid>();
			var filterArchive = filter as IReportFilterArchive;
			IsWithDeleted = filterArchive != null && filterArchive.UseArchive;
			OnPropertyChanged(() => IsEmployee);
			InitializeFilter();
		}
Example #25
0
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var eventFilter = filter as EventsReportFilter;
			if (eventFilter == null)
				return;
			eventFilter.JournalEventNameTypes = new List<JournalEventNameType>();
			eventFilter.JournalEventSubsystemTypes = new List<JournalSubsystemType>();
			foreach (var rootFilter in RootFilters)
				if (rootFilter.IsChecked)
					eventFilter.JournalEventSubsystemTypes.Add(rootFilter.JournalSubsystemType);
				else
					foreach (var filterViewModel in rootFilter.Children)
						if (filterViewModel.IsChecked)
							eventFilter.JournalEventNameTypes.Add(filterViewModel.JournalEventNameType);
		}
Example #26
0
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var employeeFilter = filter as IReportFilterEmployee;
			if (employeeFilter == null)
				return;
			employeeFilter.Employees = Filter.UIDs;
			employeeFilter.IsSearch = Filter.IsSearch;
			if (Filter.IsSearch)
			{
				employeeFilter.LastName = Filter.LastName;
				employeeFilter.FirstName = Filter.FirstName;
				employeeFilter.SecondName = Filter.SecondName;
			}
			if (AllowVisitor)
				((IReportFilterEmployeeAndVisitor)employeeFilter).IsEmployee = IsEmployee;
		}
		public SKDReportFilterViewModel(SKDReportFilter filter, FilterModel model)
		{
			var stopwatch = new Stopwatch();
			stopwatch.Start();
			Title = "Настройки отчета";
			_model = model;
			Filter = filter;
			Pages = new ObservableCollection<FilterContainerViewModel>();
			Pages.Add(new FilterMainPageViewModel(model, Filter, LoadFilter, UpdateFilter));
			model.Pages.ForEach(page => { if (page.IsActive) Pages.Add(page); });
			if (model.AllowSort)
				Pages.Add(new FilterSortPageViewModel(model.Columns));
			CommandPanel = model.CommandsViewModel;
			LoadFilter(Filter);
			stopwatch.Stop();
			Trace.WriteLine(string.Format("SKDReportFilterViewModel {0}", stopwatch.Elapsed));
		}
		public FilterMainPageViewModel(FilterModel model, SKDReportFilter filter, Action<SKDReportFilter> loadFilterAction, Action<SKDReportFilter> updateFilterAction)
		{
			_isLoaded = false;
			Title = "Настройки";
			_filter = filter;
			_loadFilterAction = loadFilterAction;
			_updateFilterAction = updateFilterAction;
			MainViewModel = model.MainViewModel;
			IsAdditionalExpanded = false;
			ExpandAdditionalCommand = new RelayCommand(() => IsAdditionalExpanded = !IsAdditionalExpanded);
			SaveFilterCommand = new RelayCommand(OnSaveFilter, CanSaveFilter);
			RemoveFilterCommand = new RelayCommand(OnRemoveFilter, CanRemoveFilter);
			_filterType = filter.GetType();
			Filters = new ObservableCollection<SKDReportFilter>(ClientSettings.ReportFilters.Filters.Where(f => f.GetType() == _filterType));
			Filters.Insert(0, (SKDReportFilter)Activator.CreateInstance(_filterType));
			SelectedFilter = Filters.FirstOrDefault(f => f.Name == filter.Name);
			if (SelectedFilter == null)
				SelectedFilter = Filters[0];
			_isLoaded = true;
		}
Example #29
0
		public override void LoadFilter(SKDReportFilter filter)
		{
			var eventFilter = filter as EventsReportFilter;
			if (eventFilter == null)
				return;
			RootFilters.ForEach(item =>
			{
				item.IsExpanded = true;
				item.IsChecked = false;
				item.Children.ForEach(child => child.IsChecked = false);
			});
			foreach (var eventName in eventFilter.JournalEventNameTypes)
			{
				var eventTypeViewModel = RootFilters.SelectMany(item => item.Children).FirstOrDefault(x => x.JournalEventNameType == eventName);
				if (eventTypeViewModel != null)
					eventTypeViewModel.IsChecked = true;
			}
			foreach (var journalSubsystemTypes in eventFilter.JournalEventSubsystemTypes)
			{
				var eventTypeViewModel = RootFilters.FirstOrDefault(x => x.IsSubsystem && x.JournalSubsystemType == journalSubsystemTypes);
				if (eventTypeViewModel != null)
					eventTypeViewModel.IsChecked = true;
			}
		}
		public override void UpdateFilter(SKDReportFilter filter)
		{
			var departmentFilter = filter as IReportFilterDepartment;
			if (departmentFilter != null)
				departmentFilter.Departments = Filter.UIDs;
		}