private void EkanbanHisControl_Load(object sender, EventArgs e) { int height = 120; if (EKanbanHis.EKanbanClearHis.Count > 0) { ErrorHis = true; //this.Hide(); //return; } EKanbanInterface eKanbanInterface = new EKanbanInterface(); try { try { eKanbanInterface = Newtonsoft.Json.JsonConvert.DeserializeObject <EKanbanInterface>(EKanbanHis.Data); DS_Interface.DataSource = eKanbanInterface; lbStatus.Text = ((SysActionCode)eKanbanInterface.SysActionCode).ToString(); } catch { } if (EKanbanHis.EKanbanAddHis != null) { DataTable table = new DataTable(); table.Columns.Add("Sequence No"); table.Columns.Add("Sequence Quantity"); table.Columns.Add("Add Time"); table.Columns.Add("Confirm Time"); foreach (var item in EKanbanHis.EKanbanAddHis) { string finishTime = ""; try { finishTime = ((SysActionCode)eKanbanInterface.SysActionCode == SysActionCode.EKANBAN_CONFIRM_ITEM) ? eKanbanInterface.LastUpdate.ToString() : ""; } catch { } table.Rows.Add(new object[] { item.SequenceNo, item.SequenceQty, item.DateTime, finishTime }); height += 20; } dataGridView1.DataSource = table; } TotaPrepareQty = 0; foreach (var item in EKanbanHis.EKanbanAddHis) { TotaPrepareQty += ShareFuncs.GetInt(item.SequenceQty); } lbTotalQty.Text = TotaPrepareQty.ToString(); this.Height = height; } catch { } }
public InterfaceInfo(EKanbanInterface _interface) { id = _interface.id; PoNumber = _interface.PO; SequenceNo = _interface.SequenceNo; PoQty = _interface.POqty; CartQty = _interface.CartQty; Line = _interface.Line; }
public bool AddNewEKanbanInterface(EKanbanInterface _ekanbanInterface) { try { using (EKanbanTaskContext = new EKanbanTaskContext(database)) { EKanbanTaskContext.EKanbanInterfaces.Add(_ekanbanInterface); EKanbanTaskContext.SaveChanges(); } return(true); } catch { return(false); } }
public bool UpdateEKanbanInterface(EKanbanInterface _ekanbanInterface) { try { using (EKanbanTaskContext = new EKanbanTaskContext(database)) { EKanbanTaskContext.Entry(_ekanbanInterface).State = EntityState.Modified; EKanbanTaskContext.SaveChanges(); } return(true); } catch { return(false); } }
public bool DeleteEKanbanInterface(EKanbanInterface _ekanbanInterface) { try { using (EKanbanTaskContext = new EKanbanTaskContext(database)) { var EKanban = EKanbanTaskContext.EKanbanInterfaces.Find(_ekanbanInterface.id); EKanbanTaskContext.Entry(EKanban).State = EntityState.Deleted; EKanbanTaskContext.SaveChanges(); return(true); } } catch { return(false); } }
public EKanbanHis GetEKanbanHistory(EKanbanInterface _ekanbanInterface) { try { using (HistoryContext = new HistoryContext(database)) { return(HistoryContext.EKanbanHis .Include("EKanbanAddHis") .Include("EKanbanConfirmHis") .Include("EKanbanClearHis") .Where(i => i.EKanbanInterface_Id == _ekanbanInterface.id) .First()); } } catch { return(null); } }
private void UpdateSelectedEkanbanDevice() { SelectedEKanbanDevice = new EKanbanDevice(); SelectedEKanbanInterface = new EKanbanInterface(); if (lbEKanbanDevice.SelectedItem == null) { return; } SelectedEKanbanDevice = lbEKanbanDevice.SelectedItem as EKanbanDevice; SelectedEKanbanInterface = EKanbanTaskQuery.GetLastEKanbanInterface(SelectedEKanbanDevice.id); DS_EKBInterface.DataSource = new EKanbanInterface(); if (SelectedEKanbanInterface != null) { lbStatus.Text = (SysActionCode)SelectedEKanbanInterface.SysActionCode == SysActionCode.EKANBAN_CONFIRM_ITEM ? "CONFORM OK" : "WAITING"; DS_EKBInterface.DataSource = SelectedEKanbanInterface; } }
/// <summary> /// Thêm thông tin vào Ekanban /// </summary> private void AddSequenceToEKanban() { if (SelectedEKanbanDevice == null || SelectedEKanbanDevice.id == 0) { MessageBox.Show("An Error orcured while adding Sequence to EKanban.\r\nError: Missing Ekanban device.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } var ekbLoading = EKanbanTaskQuery.GetEKanbanLoading(SelectedSequence.id); if (ekbLoading != null) { MessageBox.Show("An Error orcured while adding Sequence to EKanban.\r\nError: The sequence is already added.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (SelectedOriginalPo.id == 0 || SelectedSequence.id == 0 || SelectedSchedule.id == 0) { MessageBox.Show("An Error orcured while adding Sequence to EKanban.\r\nError: Missing data.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } var dresult = MessageBox.Show("Make sure you want to continue?", "Question", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question); if (dresult != DialogResult.Yes) { return; } int action = 0; SysActionCode SysCode = SysActionCode.UNKNOW; EKanbanHis EkanbanHis = new EKanbanHis(); if (SelectedEKanbanInterface == null) { action = 0; } else { if (SelectedEKanbanInterface.id != 0) { SysCode = (SysActionCode)SelectedEKanbanInterface.SysActionCode; EkanbanHis = SysHistoryQuery.GetEKanbanHistory(SelectedEKanbanInterface); } } switch (SysCode) { case SysActionCode.SEQUENCE_PREPARING: case SysActionCode.EKANBAN_ADD_NEW_ITEM: dresult = MessageBox.Show("EKanban is holding data, do you want to continue?", "Message", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question); if (dresult != DialogResult.Yes) { return; } action = 1; break; case SysActionCode.SEQUENCE_CONFORM: case SysActionCode.EKANBAN_CONFIRM_ITEM: action = 0; break; default: break; } switch (action) { case 0: // add new interface List <EKanbanComponent> eKanbanComponent = new List <EKanbanComponent>(); foreach (var item in SelectShoeComponent) { if (item.AddToEkanban) { eKanbanComponent.Add(new EKanbanComponent { ShoeComponent_Id = item.Id, CuttingType_Id = item.CuttingType.id, }); } } // add new interface EKanbanInterface eKanbanInterface = new EKanbanInterface { LastUpdate = DateTime.Now, PO = GetShortPoNumber(SelectedSchedule.PoNumber), Line = SelectedScheduleLine, EKanbanDevice_Id = SelectedEKanbanDevice.id, POqty = SelectedSchedule.Quantity.ToString(), SysActionCode = (int)SysActionCode.EKANBAN_ADD_NEW_ITEM, EkanbanComponents = new List <EKanbanComponent>(eKanbanComponent), SequenceNo = SelectedSequence.SequenceNo.ToString(), CartQty = SelectedSequence.Quantity.ToString(), EKanbanLoadings = new List <EKanbanLoading> { new EKanbanLoading { SysActionCode = (int)SysActionCode.SEQUENCE_PREPARING, OriginalPo_Id = SelectedOriginalPo.id, OriginalSequence_Id = SelectedSequence.id, LastUpdate = DateTime.Now, SequenceQty = SelectedSequence.Quantity } } }; if (EKanbanTaskQuery.AddNewEKanbanInterface(eKanbanInterface)) { var inf1 = EKanbanTaskQuery.FindEKanbanInterface(eKanbanInterface.id); string jsonStr = Newtonsoft.Json.JsonConvert.SerializeObject(inf1); EkanbanHis = new EKanbanHis { EKanbanInterface_Id = eKanbanInterface.id, EKanbanDevice_Id = SelectedEKanbanDevice.id, DateTime = DateTime.Now, ProductionLine_Id = SelectedSchedule.ProductionLine_Id, Data = jsonStr, }; MessageBox.Show("Add new Ekanban Interface successfully", "Message"); bool success = SysHistoryQuery.AddNewEKanbanHisotry(EkanbanHis); if (!success) { MessageBox.Show("Add new Ekanban history record error", "Message"); return; } } else { MessageBox.Show("An error orcured while adding new Po to Ekanban.\r\nError: Failed to add new Ekanban interface to database.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Warning); } break; case 1: // update interface EKanbanLoading eKanbanLoading = new EKanbanLoading { EKanbanInterface_Id = SelectedEKanbanInterface.id, SysActionCode = (int)SysActionCode.SEQUENCE_PREPARING, OriginalPo_Id = SelectedOriginalPo.id, OriginalSequence_Id = SelectedSequence.id, LastUpdate = DateTime.Now, SequenceQty = SelectedSequence.Quantity, }; bool exp1 = EKanbanTaskQuery.AddNewEKanbanLoading(eKanbanLoading); if (!exp1) { MessageBox.Show("An error orcured while adding new Po to Ekanban.\r\nError: Failed to add EkanbanLoading to database.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } SelectedEKanbanInterface.PO += $",{GetShortPoNumber(SelectedSchedule.PoNumber)}"; SelectedEKanbanInterface.SequenceNo += $",{SelectedSequence.SequenceNo}"; SelectedEKanbanInterface.POqty += $",{SelectedSchedule.Quantity}"; SelectedEKanbanInterface.CartQty += $",{SelectedSequence.Quantity}"; SelectedEKanbanInterface.LastUpdate = DateTime.Now; bool exp2 = EKanbanTaskQuery.UpdateEKanbanInterface(SelectedEKanbanInterface); EKanbanInterface inf2 = EKanbanTaskQuery.FindEKanbanInterface(SelectedEKanbanInterface.id); var his = SysHistoryQuery.GetEKanbanHistory(SelectedEKanbanInterface); string jsonStr2 = Newtonsoft.Json.JsonConvert.SerializeObject(inf2); his.Data = jsonStr2; his.DateTime = DateTime.Now; SysHistoryQuery.UpdateEKanbanHis(his); if (exp1 && exp2) { MessageBox.Show("Add new Po to Ekanban succeesfully", "Message"); } if (!exp2) { MessageBox.Show("An error orcured while adding new Po to Ekanban.\r\nError: Failed to update Ekanban interface.", "Message"); EKanbanTaskQuery.DeleteEKanbanLoading(eKanbanLoading); return; } // update interface break; } UpdateSelectedSchedule(); UpdateSelectedEkanbanDevice(); UpdateSelectedOriginalSequence(); AddNewStockMeasure(); AddNewHistory(EkanbanHis.id); }