Exemple #1
0
		public OperationResult<bool> EnterCard(Guid uid, uint cardNo, GKCodeReaderEnterType enterType)
		{
			var descriptor = MainViewModel.Current.Descriptors.FirstOrDefault(x => x.GKBase.UID == uid);
			if (descriptor == null)
				return OperationResult<bool>.FromError("Не найден элемент " + uid + " в конфигурации");
			var device = descriptor.GKBase as GKDevice;
			if (device == null || !device.Driver.IsCardReaderOrCodeReader)
				return OperationResult<bool>.FromError("Ввод кода для данного объекта запрещен");
			descriptor.EnterCard(cardNo, enterType);
			return new OperationResult<bool>(true);
		}
Exemple #2
0
		static GKStateBit CodeReaderEnterTypeToStateBit(GKCodeReaderEnterType codeReaderEnterType)
		{
			switch (codeReaderEnterType)
			{
				case GKCodeReaderEnterType.CodeOnly:
					return GKStateBit.Attention;

				case GKCodeReaderEnterType.CodeAndOne:
					return GKStateBit.Fire1;

				case GKCodeReaderEnterType.CodeAndTwo:
					return GKStateBit.Fire2;
			}
			return GKStateBit.Fire1;
		}
		public void EnterCard(uint cardNo, GKCodeReaderEnterType enterType)
		{
			CurrentCardNo = cardNo;
			var backgroundWorker = new BackgroundWorker();
			backgroundWorker.DoWork += backgroundWorker_DoWork;
			backgroundWorker.RunWorkerAsync();
			switch (enterType)
			{
				case GKCodeReaderEnterType.CodeOnly:
					SetStateBit(GKStateBit.Fire1, false);
					SetStateBit(GKStateBit.Fire2, false);
					SetStateBit(GKStateBit.Attention, true);
					break;

				case GKCodeReaderEnterType.CodeAndOne:
					SetStateBit(GKStateBit.Attention, false);
					SetStateBit(GKStateBit.Fire2, false);
					SetStateBit(GKStateBit.Fire1, true);
					break;

				case GKCodeReaderEnterType.CodeAndTwo:
					SetStateBit(GKStateBit.Attention, false);
					SetStateBit(GKStateBit.Fire1, false);
					SetStateBit(GKStateBit.Fire2, true);
					break;
			}
		}
Exemple #4
0
		public OperationResult<bool> EnterCard(Guid uid, uint cardNo, GKCodeReaderEnterType enterType)
		{
			var imitatorService = ImitatorServiceFactory.Create();
			return imitatorService.EnterCard(uid, cardNo, enterType);
		}