/// <summary> /// 添加SN 到 待删除列表 /// </summary> private void Add_DeleteSN_To_List(string temSN) { try { Maticsoft.Model.SerialNumber _temSetial = new Maticsoft.Model.SerialNumber(); Maticsoft.BLL.SerialNumber _M_serial = new SerialNumber(); Maticsoft.Model.WorkOrder _order = new Maticsoft.Model.WorkOrder(); Maticsoft.BLL.WorkOrder _M_order = new WorkOrder(); if (temSN != "") { if (temSN.Length > 13) { lst_DeleteList.Items.Add(temSN); DeleteRecord++; } else { _temSetial = _M_serial.GetModel(temSN); // if (_temSetial != null) { _order = _M_order.GetModel(_temSetial.OrderID); if (_order.InspectMethod == Maticsoft.Model.E_InspectMethod.两码两签) { ZhuifengLib.JudgeOddOrEven judge = new ZhuifengLib.JudgeOddOrEven(); System.Collections.Generic.List <long> temList = new System.Collections.Generic.List <long>(); temList = _Judge_Odd.Get_TwoList(temSN); // DeleteRecord++; lst_DeleteList.Items.Add(temList[0].ToString()); DeleteRecord++; lst_DeleteList.Items.Add(temList[1].ToString()); } else { lst_DeleteList.Items.Add(temSN); DeleteRecord++; } } else { My_MessageBox.My_MessageBox_Message("未找到该条码!"); txb_Delete_BarCode.SelectAll(); } } //显示添加了多少条 lab_DeleteRecord.Text = DeleteRecord + "条"; //让滚动条自动滚东到底部 lst_DeleteList.UpdateLayout();//此句是关键 //如果不加上面那句的话,不会滚动到最底端,最后一个控件会看不见,加了上面这句刷新下ListBox的布局,就可以滚动到最底端了 lst_DeleteList.ScrollIntoView(lst_DeleteList.Items[lst_DeleteList.Items.Count - 1]); } } catch { } }
// //保存 // private void btn_AddSer_Save_Click(object sender, RoutedEventArgs e) { Maticsoft.BLL.SerialNumber _M_SerialNumber = new SerialNumber(); Maticsoft.Model.SerialNumber _SerialNumber = new Maticsoft.Model.SerialNumber(); if (txb_Addser_OrderID.Text != "" && cmb_AddSer_BatchNo.Text != "" && cmb_AddSer_Type.Text != "") { // Maticsoft.Model.SerialNumber Tem = new Maticsoft.Model.SerialNumber(); Tem.OrderID = txb_Addser_OrderID.Text.Trim(); Tem.BatchNO = cmb_AddSer_BatchNo.Text.Trim(); Tem.State = "Not_Pack"; Tem.Type = cmb_AddSer_Type.Text.Trim(); int temcount = 0; string NG_SNlist = ""; foreach (object _SN in lst_Add_SNList.Items) { _SerialNumber = _M_SerialNumber.GetModel(_SN.ToString()); if (_SerialNumber == null) { Tem.SN = _SN.ToString(); _M_SerialNumber.Add(Tem); temcount++; } else { NG_SNlist += "\r\n" + _SerialNumber.ToString(); } } My_MessageBox.My_MessageBox_Message("保存成功!\r\n增加:" + temcount.ToString() + "条 失败:" + (lst_Add_SNList.Items.Count - temcount) + NG_SNlist); lab_Add_Count.Text = "0"; lst_Add_SNList.Items.Clear(); } else { My_MessageBox.My_MessageBox_Message("未保存,信息不完整!"); } }
/// <summary> /// 条码更改为 未包装 /// </summary> private static void Update_SN_TO_Not_Pack(ref DataDelivery e, SerialNumber sn, ref int temRecordCount) { //原始数据删除数量 计数 int temCount = 0; int fillDelete_snCount = 0; string fillDelete_snList = ""; Pack_3D pk_3d = new Pack_3D(); Pack_Exfo pk_Exfo = new Pack_Exfo(); Maticsoft.BLL.User_3D_Test_Good user3D = new User_3D_Test_Good(); string temSN = ""; foreach (object _sn in e.SNlist) { //如果长度大于13 temSN = 前13位条码 if (_sn.ToString().Length > 13) { temSN = _sn.ToString().Substring(0, 10); } else { temSN = _sn.ToString(); } temSN = _sn.ToString(); //删除原始数据 if (e.IsDeleteSourceData == true) { //删除3D数据 if (_sn.ToString().Length > 13) { if (user3D.Delete(_sn.ToString(), 1)) { temCount++; } } else { Maticsoft.BLL.MultiFiber _MPO_3D = new MultiFiber(); if (user3D.Delete(_sn.ToString(), 2) || _MPO_3D.Delete(_sn.ToString())) { temCount++; } } //删除Exfo数据 } //删除Pack中的数据 pk_Exfo.Delete("SN Like '" + temSN + "%'"); pk_3d.Delete("SN Like '" + temSN + "%'"); //将已包装改写为未包装 Maticsoft.Model.SerialNumber _serialNumber = sn.GetModel(temSN); if (_serialNumber != null) { _serialNumber.State = Maticsoft.Model.E_Barcode_State.Not_Pack.ToString(); //如果更新成功 if (sn.Update(_serialNumber)) { temRecordCount++; } else { fillDelete_snCount++; } } else { fillDelete_snCount++; } MCP_CS._Operation_log.Remarks += "," + _sn; } MCP_CS._Operation_log.DateTime = DateTime.Now; MCP_CS.Operation_Log.Add(MCP_CS._Operation_log); //添加删除记录 My_MessageBox.My_MessageBox_Message("成功删除已包装:" + temRecordCount + "条 原始数据:" + temCount + "条;\r\n失败" + fillDelete_snCount + "条 \r\n" + fillDelete_snList); }
//删除数据 private void DeleteSN_List(DataDelivery e) { try { SerialNumber sn = new SerialNumber(); tb_PrintRecord print = new tb_PrintRecord(); int temRecordCount = 0; switch (e.Option) { //删除已包装 case 0: Update_SN_TO_Not_Pack(ref e, sn, ref temRecordCount); break; //删除已打印 case 1: foreach (object _sn in e.SNlist) { string tem = ""; if (_sn.ToString().Length > 10) { tem = _sn.ToString().Substring(0, 10); } else { tem = _sn.ToString(); } print.Delete(tem); temRecordCount++; } My_MessageBox.My_MessageBox_Message("成功删除已打印:" + temRecordCount + ""); break; //删除已装箱 case 2: foreach (object _sn in e.SNlist) { Maticsoft.Model.SerialNumber _serialNumber = sn.GetModel(_sn.ToString()); _serialNumber.State = Maticsoft.Model.E_Barcode_State.Not_Encasement.ToString(); if (sn.Update(_serialNumber)) { temRecordCount++; } } My_MessageBox.My_MessageBox_Message("成功删除已装箱" + temRecordCount + ""); break; case 3: foreach (object _sn in e.SNlist) { if (sn.Delete(_sn.ToString())) { temRecordCount++; } } My_MessageBox.My_MessageBox_Message("成功删除条码" + temRecordCount + ""); break; default: My_MessageBox.My_MessageBox_Message("不包含此项目"); break; } } catch (Exception ex) { My_MessageBox.My_MessageBox_Message(ex.Message); } }