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="accesoryIsExist">Комплектующее существует</param> /// <param name="barcodeValue">Штрихкод</param> private void readAccessory(bool accesoryIsExist, string barcodeValue) { //Если комплектующее еще не редактировалось - "Создать"/"Прочитать существующее" if (accessory == null || (accesoryIsExist && !accessory.IsModified)) { accessory = (Accessory)Activator.CreateInstance(currentType); if (string.IsNullOrEmpty(barcodeValue) && !accesoryIsExist) { return; } if (string.IsNullOrEmpty(barcodeValue) && emptyBarcodeEnabled) { long id = ElectronicUnits.GetIdByEmptyBarcode(linkId); if (id != 0) { accessory = (Accessory)accessory.Read(currentType, id, dbObject.IDENTIFIER_NAME); } } else { accessory = (Accessory)accessory.Read(currentType, barcodeValue, dbObject.BARCODE_NAME); } accessory.Status = TypesOfLampsStatus.Storage; } }
private void startGroupRegistration() { currentCase = accessory as Cases; if (currentCase.Lamp == 0 || currentCase.ElectronicUnit == 0) { ShowMessage("Нужно заполнить лампу и эл. блок!"); return; } if (!(accessory is Cases)) { return; } currentLamp = new Lamps(); currentLamp.Read(currentCase.Lamp); currentUnit = new ElectronicUnits(); currentUnit.Read(currentCase.ElectronicUnit); if (!string.IsNullOrEmpty(currentLamp.BarCode) || !string.IsNullOrEmpty(currentUnit.BarCode)) { ShowMessage("Для групової реєстрації лампа та блок мають бути без штрих-коду"); return; } if (isMainDataEntered && warrantlyDataIsValid()) { accessory.Write(); } else { showWriteErrorMessage(); return; } groupRegistration = true; currentCase = new Cases(); currentCase.Read(accessory.Id); groupRegistrationButton.Hide(); groupSizeLabel = MainProcess.CreateLabel("", 5, 283, 230, MobileFontSize.Normal, MobileFontPosition.Left, MobileFontColors.Info, FontStyle.Bold); groupSize = 0; }