public override sealed void DrawControls() { if (IsLoad) { TypesOfLampsStatus state = Accessory.GetState(TypeOfAccessories.ElectronicUnit, UnitBarcode); ListOfLabelsConstructor list = new ListOfLabelsConstructor(MainProcess, "Ел. блок", getData()); list.ListOfLabels = new List <LabelForConstructor> { new LabelForConstructor(string.Empty, false), new LabelForConstructor(string.Empty, false), new LabelForConstructor(string.Empty, false), new LabelForConstructor(string.Empty, false), new LabelForConstructor("Модель: {0}"), new LabelForConstructor("Партія: {0}"), new LabelForConstructor("Гарантія до {0}") }; if (state == TypesOfLampsStatus.ToRepair) { MainProcess.CreateButton("Зберігання", 15, 275, 100, 35, "storage", Storage_Click); } else { MainProcess.CreateButton("Ремонт", 15, 275, 100, 35, "repair", Repair_Click); } MainProcess.CreateButton("Списання", 125, 275, 100, 35, "writeoff", Writeoff_Click, null, null, state != TypesOfLampsStatus.ToCharge); } }
public override sealed void DrawControls() { if (IsLoad) { TypesOfLampsStatus state = Accessory.GetState(TypeOfAccessories.Case, CaseBarcode); ListOfLabelsConstructor list = new ListOfLabelsConstructor(MainProcess, ResultParameters); list.ListOfLabels = new List <LabelForConstructor> { new LabelForConstructor("Корпус", ControlsStyle.LabelH2), new LabelForConstructor("Модель: {0}"), new LabelForConstructor("Партія: {0}"), new LabelForConstructor("Гарантія до {0}"), new LabelForConstructor("Електроблок", ControlsStyle.LabelH2), new LabelForConstructor("Партія: {0}", 1), new LabelForConstructor("Гарантія до {0}"), }; MainProcess.CreateButton("Уснановка", 15, 225, 100, 35, "installNew", InstallNew); MainProcess.CreateButton("Розібрати", 125, 225, 100, 35, "collate", Collate); if (state == TypesOfLampsStatus.ToRepair) { MainProcess.CreateButton("Зберігання", 15, 275, 100, 35, "storages", Storages); } else { MainProcess.CreateButton("Ремонт", 15, 275, 100, 35, "repair", Repair); } MainProcess.CreateButton("Спиння", 125, 275, 100, 35, "writeoff", WriteOff, null, null, state != TypesOfLampsStatus.ToCharge); } }
/// <summary>Поставити світильник на зберігання</summary> /// <param name="MainProcess"></param> /// <param name="barcode">Штрихкод комплектуючого</param> /// <param name="type">Тип комплектуючого</param> /// <param name="state">Новий статус</param> public SetAccessoryNewState(WMSClient MainProcess, string barcode, TypeOfAccessories type, TypesOfLampsStatus state) : base(MainProcess, 1) { accessoryBarcode = barcode; typeOfAccessory = type; newState = state; IsLoad = true; DrawControls(); }
/// <summary>��������� ��������� �� ���������</summary> /// <param name="MainProcess"></param> /// <param name="barcode">�������� ��������������</param> /// <param name="type">��� ��������������</param> /// <param name="state">����� ������</param> public SetAccessoryNewState(WMSClient MainProcess, string barcode, TypeOfAccessories type, TypesOfLampsStatus state) : base(MainProcess, 1) { accessoryBarcode = barcode; typeOfAccessory = type; newState = state; IsLoad = true; DrawControls(); }
/// <summary>Встановити новий статус</summary> /// <param name="accessory">Тип комплектуючого</param> /// <param name="newState">Новий статус</param> /// <param name="barcode">Штрихкод комплектуючого</param> public static void SetState(TypeOfAccessories accessory, TypesOfLampsStatus newState, string barcode) { string command = string.Format("UPDATE {0}s SET Status=@State WHERE RTRIM({1})=RTRIM(@{1})", accessory, BARCODE_NAME); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("State", newState); query.AddParameter(BARCODE_NAME, barcode); query.ExecuteNonQuery(); } }
private bool correctAccessoryStatus(string barcode) { TypesOfLampsStatus state = Accessory.GetState(TypeOfAccessories.ElectronicUnit, barcode); if (state == TypesOfLampsStatus.ToRepair) { return(true); } else { ShowMessage(@"Комплектуюча має бути у статусі ""На ремонті""!"); return(false); } }
/// <summary>Змінити статус ел.блоку</summary> /// <param name="status">Новий статус</param> private void changeUnitStatus(TypesOfLampsStatus status) { string command = string.Format("UPDATE ElectronicUnits SET Status=@Status,{0}=@{0} WHERE RTRIM({1})=RTRIM(@{1})", dbObject.IS_SYNCED, dbObject.BARCODE_NAME); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Status", (int)status); query.AddParameter(dbObject.IS_SYNCED, false); query.AddParameter(dbObject.BARCODE_NAME, UnitBarcode); query.ExecuteNonQuery(); } }
private void ok_Click() { object caseId = BarcodeWorker.GetIdByBarcode(CaseBarcode); //Статус корпуса, в который запихиваем новое комплектующее TypesOfLampsStatus status = Accessory.GetState(TypeOfAccessories.Case, CaseBarcode.ToString()); bool isLamp = accessoryTable == typeof(db.Lamps).Name; object accessoryId = BarcodeWorker.GetIdByBarcode(NewAccessoryBarcode.ToString()); string command = string.Format( "UPDATE {0} SET Status=@IsWorking,[Case]=@Case,{1}=0,DateOfActuality=@Date{2} WHERE RTRIM(BarCode)=@Barcode", accessoryTable, dbObject.IS_SYNCED, isLamp ? ",Barcode=@NewBarCode" : string.Empty); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Barcode", NewAccessoryBarcode); query.AddParameter("NewBarCode", string.Empty); query.AddParameter("Case", caseId); query.AddParameter("IsWorking", status); query.AddParameter("Date", DateTime.Now); query.ExecuteNonQuery(); } using (SqlCeCommand query = dbWorker.NewQuery(string.Format( "UPDATE Cases SET {0}=@Id,{1}=0,DateOfActuality=@Date WHERE RTRIM(BarCode)=@Case", accessoryField, dbObject.IS_SYNCED))) { query.AddParameter("Case", CaseBarcode); query.AddParameter("Id", accessoryId); query.AddParameter("Date", DateTime.Now); query.ExecuteNonQuery(); } //query = dbWorker.NewQuery(string.Format( // "UPDATE {0} SET Status=@IsWorking,[Case]=@Id,{1}=0,DateOfActuality=@Date WHERE {2}=@Id", // accessoryTable, // dbObject.IS_SYNCED, // dbObject.IDENTIFIER_NAME)); //query.AddParameter("Id", caseId); //query.AddParameter(dbObject.IDENTIFIER_NAME, accessoryId); //query.AddParameter("Date", DateTime.Now); //query.ExecuteNonQuery(); //string caseBarcode = CaseBarcode.ToString(); //installMovement(caseBarcode); OnHotKey(KeyAction.Esc); }
/// <summary>�������� ������ �������</summary> /// <param name="lighterBarcode">�������� �������</param> /// <param name="status">����� ������</param> /// <param name="remove">������� ���������?</param> /// <param name="map"></param> /// <param name="register"></param> /// <param name="position"></param> public static void ChangeLighterState(string lighterBarcode, TypesOfLampsStatus status, bool remove, int map, int register, int position) { //������ string command = string.Format( "UPDATE Cases SET Map=@Map,Register=@Register,Position=@Position,Status=@Status,{0}=0,DateOfActuality=@Date{1} WHERE RTRIM(Barcode)=@Barcode", IS_SYNCED, remove ? ",DrawdownDate=@DrawdownDate" : string.Empty); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Barcode", lighterBarcode); query.AddParameter("Status", status); query.AddParameter("Map", map); query.AddParameter("Register", register); query.AddParameter("Position", position); query.AddParameter("Date", DateTime.Now); query.AddParameter("DrawdownDate", DateTime.Now); query.ExecuteNonQuery(); } //�� ���� object caseId = BarcodeWorker.GetIdByBarcode(lighterBarcode); command = string.Format( "UPDATE ElectronicUnits SET Status=@Status,{0}=0,DateOfActuality=@Date{1} WHERE [Case]=@Id", IS_SYNCED, remove ? ",DrawdownDate=@DrawdownDate" : string.Empty); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Status", status); query.AddParameter("Id", caseId); query.AddParameter("Date", DateTime.Now); query.AddParameter("DrawdownDate", DateTime.Now); query.ExecuteNonQuery(); } //����� command = string.Format( "UPDATE Lamps SET Status=@Status,{0}=0,DateOfActuality=@Date{1} WHERE [Case]=@Id", IS_SYNCED, remove ? ",DrawdownDate=@DrawdownDate" : string.Empty); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Status", status); query.AddParameter("Id", caseId); query.AddParameter("Date", DateTime.Now); query.AddParameter("DrawdownDate", DateTime.Now); query.ExecuteNonQuery(); } }
/// <summary>Изменить статус корпуса</summary> /// <param name="lighterBarcode">Штрихкод корпуса</param> /// <param name="status">Новый статус</param> /// <param name="remove">Процесс демонтажа?</param> /// <param name="map"></param> /// <param name="register"></param> /// <param name="position"></param> public static void ChangeLighterState(string lighterBarcode, TypesOfLampsStatus status, bool remove, int map, int register, int position) { //Корпус string command = string.Format( "UPDATE Cases SET Map=@Map,Register=@Register,Position=@Position,Status=@Status,{0}=0,DateOfActuality=@Date{1} WHERE RTRIM(Barcode)=@Barcode", IS_SYNCED, remove ? ",DrawdownDate=@DrawdownDate" : string.Empty); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Barcode", lighterBarcode); query.AddParameter("Status", status); query.AddParameter("Map", map); query.AddParameter("Register", register); query.AddParameter("Position", position); query.AddParameter("Date", DateTime.Now); query.AddParameter("DrawdownDate", DateTime.Now); query.ExecuteNonQuery(); } //Эл блок object caseId = BarcodeWorker.GetIdByBarcode(lighterBarcode); command = string.Format( "UPDATE ElectronicUnits SET Status=@Status,{0}=0,DateOfActuality=@Date{1} WHERE [Case]=@Id", IS_SYNCED, remove ? ",DrawdownDate=@DrawdownDate" : string.Empty); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Status", status); query.AddParameter("Id", caseId); query.AddParameter("Date", DateTime.Now); query.AddParameter("DrawdownDate", DateTime.Now); query.ExecuteNonQuery(); } //Лампа command = string.Format( "UPDATE Lamps SET Status=@Status,{0}=0,DateOfActuality=@Date{1} WHERE [Case]=@Id", IS_SYNCED, remove ? ",DrawdownDate=@DrawdownDate" : string.Empty); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter("Status", status); query.AddParameter("Id", caseId); query.AddParameter("Date", DateTime.Now); query.AddParameter("DrawdownDate", DateTime.Now); query.ExecuteNonQuery(); } }
/// <summary>Світильник на гектарі?</summary> /// <param name="barcode">Штрихкод світильника</param> /// <returns>Світильник на гектарі?</returns> private bool isCasePerHectare(string barcode) { using ( SqlCeCommand command = dbWorker.NewQuery(@"SELECT c.Status FROM Cases c WHERE RTRIM(BarCode)=@BarCode")) { command.AddParameter("@BarCode", barcode); object result = command.ExecuteScalar(); if (result == null) { return(false); } TypesOfLampsStatus state = (TypesOfLampsStatus)Convert.ToInt32(result); return(state == TypesOfLampsStatus.IsWorking); } }
/// <summary>ВСтановити статус комплектующего</summary> /// <param name="accessory">Тип комплектуючого</param> /// <param name="barcode">Штихкод</param> /// <param name="state">Новий статус</param> public static void SetNewState(TypeOfAccessories accessory, string barcode, TypesOfLampsStatus state) { if (accessory == TypeOfAccessories.Case) { Cases.ChangeLighterState(barcode, state, true); } string command = string.Format( "UPDATE {0}s SET Status=@{1} WHERE RTRIM({2})=RTRIM(@{2})", accessory, dbSynchronizer.PARAMETER, BARCODE_NAME); using (SqlCeCommand query = dbWorker.NewQuery(command)) { query.AddParameter(BARCODE_NAME, barcode); query.AddParameter(dbSynchronizer.PARAMETER, state); query.ExecuteNonQuery(); } }
public override sealed void DrawControls() { if (IsLoad) { MainProcess.ClearControls(); switch (stage) { case Stages.Begin: unitBarcode = string.Empty; stage = Cases.UnderWarranty(LightBarcode) ? Stages.UnderWarrantly : Stages.OutOfWarrantlyUnit; DrawControls(); break; case Stages.UnderWarrantly: warrantlyWin(); break; case Stages.OutOfWarrantlyUnit: if (Cases.IsHaveUnit(LightBarcode)) { messageWin(REPAIR_TOPIC, "Вилучити Електроблок?", ButtonsSet.YesNo, Stages.ScanUnitBarcode, Stages.OutOfWarrantlyLamp); } else { stage = Stages.ExtractionElectricUnit; DrawControls(); } break; case Stages.OutOfWarrantlyLamp: if (Cases.IsHaveUnit(LightBarcode)) { messageWin(REPAIR_TOPIC, "Вилучити Лампу?", ButtonsSet.YesNo, Stages.ScanLampBarcode, Stages.FromOutOfWarrantly); } else { stage = Stages.ExtractionLamp; DrawControls(); } break; case Stages.FromUnderWarrantly: newCaseStatus = TypesOfLampsStatus.ForExchange; newUnitStatus = TypesOfLampsStatus.ForExchange; newLampStatus = TypesOfLampsStatus.ForExchange; messageWin(REPLACE_TOPIC, "Світильник буде поставлено на обмін", ButtonsSet.OkCancel, Stages.Save, Stages.Begin); break; case Stages.FromOutOfWarrantly: newCaseStatus = TypesOfLampsStatus.ToRepair; newUnitStatus = TypesOfLampsStatus.ToRepair; newLampStatus = TypesOfLampsStatus.ToRepair; messageWin(REPAIR_TOPIC, "Світильник буде поставлено на ремонт", ButtonsSet.OkCancel, Stages.Save, Stages.Begin); break; case Stages.ScanLampBarcode: if (IsLampHaveBarcode()) { stage = Stages.ExtractionLamp; DrawControls(); } else { needSaveUnitBarcode = true; messageWin(REPAIR_TOPIC, "Відскануйте штрихкод лампи", ButtonsSet.None, Stages.ExtractionLamp, Stages.ExtractionLamp); } break; case Stages.ScanUnitBarcode: if (IsUnitHaveBarcode()) { stage = Stages.ExtractionElectricUnit; DrawControls(); } else { needSaveLampBarcode = true; messageWin(REPAIR_TOPIC, "Відскануйте штрихкод електроблоку", ButtonsSet.None, Stages.ExtractionElectricUnit, Stages.ExtractionElectricUnit); } break; case Stages.ExtractionElectricUnit: stage = Stages.OutOfWarrantlyLamp; DrawControls(); break; case Stages.ExtractionLamp: stage = Stages.FinishExtraction; DrawControls(); break; case Stages.FinishExtraction: newCaseStatus = TypesOfLampsStatus.ToRepair; newUnitStatus = TypesOfLampsStatus.Storage; newLampStatus = TypesOfLampsStatus.Storage; messageWin(REPAIR_TOPIC, "Світильник буде поставлено на ремонт", ButtonsSet.OkCancel, Stages.Save, Stages.Begin); break; case Stages.Exit: OnHotKey(KeyAction.Esc); break; case Stages.Save: save(); OnHotKey(KeyAction.Esc); break; } } }
/// <summary>Изменить статус корпуса</summary> /// <param name="lighterBarcode">Штрихкод корпуса</param> /// <param name="status">Новый статус</param> /// <param name="remove">Процесс демонтажа?</param> public static void ChangeLighterState(string lighterBarcode, TypesOfLampsStatus status, bool remove) { ChangeLighterState(lighterBarcode, status, remove, 0, 0, 0); }
private void finish(bool isForExchange) { object[] result = null; //Штрихкод установленной лампы using (SqlCeCommand query = dbWorker.NewQuery(string.Format(@" SELECT a.Barcode, a.SyncRef FROM Cases c LEFT JOIN {0} a ON a.Id=c.{1} WHERE RTRIM(c.BarCode)=@BarCode", accessoryTable, accessoryTable.Substring(0, accessoryTable.Length - 1)))) { query.AddParameter("BarCode", CaseBarcode); result = query.SelectArray(); } if (result != null && result.Length == 2) { object oldLampBarcode = result[0]; object accessoryRef = result[1]; object caseId = BarcodeWorker.GetIdByBarcode(CaseBarcode); object newAccessoryId = BarcodeWorker.GetIdByBarcode(NewAccessoryBarcode); bool isLamp = accessoryTable == typeof(db.Lamps).Name; string partOfCommand = string.Format( "UPDATE {0} SET Status=@Status{1},[Case]=@Case,{2}=0,DateOfActuality=@Date{3} WHERE ", accessoryTable, type != TypeOfAccessories.ElectronicUnit ? ", Barcode=@NewBarcode " : string.Empty, dbObject.IS_SYNCED, "{0}"); //Статус комплектующего, которое меняем TypesOfLampsStatus status = Accessory.GetState(TypeOfAccessories.Lamp, oldLampBarcode.ToString()); //Старое комплектующее using (SqlCeCommand query = dbWorker.NewQuery(string.Concat( string.Format(partOfCommand, ",DrawdownDate=@DrawdownDate"), " RTRIM(SyncRef)=RTRIM(@SyncRef)"))) { query.AddParameter("Status", isForExchange ? TypesOfLampsStatus.ToRepair : TypesOfLampsStatus.Storage); query.AddParameter("Case", 0); query.AddParameter("LampBarcode", oldLampBarcode); query.AddParameter("NewBarcode", isLamp ? NewAccessoryBarcode : oldLampBarcode); query.AddParameter(dbObject.SYNCREF_NAME, accessoryRef); query.AddParameter("Date", DateTime.Now); query.AddParameter("DrawdownDate", DateTime.Now); query.ExecuteNonQuery(); } //Новое комплектующее using ( SqlCeCommand query = dbWorker.NewQuery(string.Concat(string.Format(partOfCommand, string.Empty), " Id=@Id"))) { query.AddParameter("Status", status); query.AddParameter("Case", caseId); query.AddParameter("Id", newAccessoryId); query.AddParameter("NewBarcode", isLamp ? string.Empty : oldLampBarcode); query.AddParameter("Date", DateTime.Now); query.ExecuteNonQuery(); } //Замена комплектующего в светильнике using (SqlCeCommand query = dbWorker.NewQuery(string.Format( "UPDATE CASES SET {0}=@NewAccessoryId,{1}=0,DateOfActuality=@Date WHERE RTRIM(BarCode)=RTRIM(@CaseBarcode)", accessoryField, dbObject.IS_SYNCED))) { query.AddParameter("CaseBarcode", CaseBarcode); query.AddParameter("NewAccessoryId", newAccessoryId); query.AddParameter("Date", DateTime.Now); query.ExecuteNonQuery(); } //Завершение //string caseBarcode = CaseBarcode.ToString(); //installMovement(caseBarcode); //removeMovement(oldLampBarcode.ToString(), caseBarcode); OnHotKey(KeyAction.Esc); } }
/// <summary>�������� ������ �������</summary> /// <param name="lighterBarcode">�������� �������</param> /// <param name="status">����� ������</param> /// <param name="remove">������� ���������?</param> public static void ChangeLighterState(string lighterBarcode, TypesOfLampsStatus status, bool remove) { ChangeLighterState(lighterBarcode, status, remove, 0, 0, 0); }