private void groupRegistrationOnBarcode(string barcode) { bool barcodeExists = BarcodeWorker.IsBarcodeExist(barcode); if (barcodeExists) { ShowMessage("Даний штрих-код вже використовується"); return; } Lamps newLamp = currentLamp.CopyWithoutLinks() as Lamps; newLamp.Write(); ElectronicUnits newElectronicUnit = currentUnit.CopyWithoutLinks() as ElectronicUnits; newElectronicUnit.Write(); Cases newCase = currentCase.CopyWithoutLinks() as Cases; newCase.BarCode = barcode; newCase.Lamp = newLamp.Id; newCase.ElectronicUnit = newElectronicUnit.Id; newCase.Write(); Movement.RegisterLighter(newCase.BarCode, newCase.SyncRef, OperationsWithLighters.Registration); groupSize++; }
/// <summary>Комплектующее отсканировано, нужно начать редактирование</summary> /// <param name="Barcode">ШтрихКод</param> public override sealed void OnBarcode(string barcode) { //Если это штрих-код комплектующего if (barcode.IsValidBarcode()) { if (groupRegistration) { groupRegistrationOnBarcode(barcode); return; } MainProcess.ClearControls(); this.barcode = barcode; bool accesoryIsExist = !string.IsNullOrEmpty(barcode) && BarcodeWorker.IsBarcodeExist(barcode); //Если в системе уже существует штрихкод if (!existMode && accesoryIsExist) { //Тип комплектующего штрихкода TypeOfAccessories typesOfAccessories = BarcodeWorker.GetTypeOfAccessoriesByBarcode(barcode); //Является ли тип комплектующего (существующий) = типу который нужно отредактировать (отсканированный) bool isTypeLikeCurrent = typesOfAccessories.ToString() + 's' != currentType.Name; //Если типы не совпадают - "Выход" if (isTypeLikeCurrent) { ShowMessage("Штрихкод уже используется в другом типе комплектующего!"); OnHotKey(KeyAction.Esc); return; } } showData(accesoryIsExist, barcode); } //Если это штрих-код позиции else if (barcode.IsValidPositionBarcode()) { Cases cases = accessory as Cases; if (cases != null) { long map; int register; int position; BarcodeWorker.GetPositionData(barcode, out map, out register, out position); cases.Map = map; cases.Register = register; cases.Position = position; cases.Status = TypesOfLampsStatus.IsWorking; MainProcess.ClearControls(); showData(cases.Id == 0, cases.BarCode); } } //Во всех других случаях else { ShowMessage("Невірний формат штрихкоду!"); OnHotKey(KeyAction.Esc); } }
/// <summary>Отсканировано комплектующее для приемки</summary> public override void OnBarcode(string Barcode) { if (Barcode.IsValidBarcode()) { if (newComponents.ContainsKey(Barcode) || BarcodeWorker.IsBarcodeExist(Barcode)) { ShowMessage("Данный штрих-код вже існує у системі!"); } else { newComponents.Add(Barcode, selectedModelRef); int currCount = Convert.ToInt32(labelOfCount.Text); labelOfCount.Text = (++currCount).ToString(); } } }
public override void OnBarcode(string Barcode) { if (Barcode.IsValidBarcode()) { if (BarcodeWorker.IsBarcodeExist(Barcode)) { ShowMessage("Штрихкод уже используется!"); } else { if (stage == Stages.Lamp) { lampBarcode = Barcode; goToNextStage(); } else if (stage == Stages.Unit) { unitBarcode = Barcode; goToNextStage(); } } } }