/*************************** 控件事件 **************************************/ // //工单单号 // private void txb_OrderID_KeyUp(object sender, KeyEventArgs e) { if (e.Key == System.Windows.Input.Key.Enter && txb_OrderID.IsFocused) { Maticsoft.BLL.WorkOrder _M_WorkOrder = new Maticsoft.BLL.WorkOrder(); Maticsoft.Model.WorkOrder _WorkOrder = new Maticsoft.Model.WorkOrder(); _WorkOrder = _M_WorkOrder.GetModel(txb_OrderID.Text.Trim()); if (_WorkOrder != null) { //控件赋值 txb_OrderCount.Text = _WorkOrder.Count; Info_PeoductName.Text = _WorkOrder.ProductName; Info_Model.Text = _WorkOrder.Model; Info_DeliveryDate.Text = _WorkOrder.DeliveryDate; //赋值包装批号 Maticsoft.BLL.PackBatch _temPackBatch = new PackBatch(); cmb_BatchNo.DataContext = _temPackBatch.GetList("OrderID='" + txb_OrderID.Text.Trim() + "'").Tables[0]; cmb_BatchNo.DisplayMemberPath = "BatchNo"; } else { My_MessageBox.My_MessageBox_Message("未找到工单信息!"); } } }
// string _WTT_SN_One = ""; #endregion #region 控件 // //工单单号输入 // private void txb_Orderid_PreviewKeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Enter && txb_Orderid.IsFocused) { if (txb_Orderid.Text != "") { txb_ClientSN.Text = ""; txb_Orderid.IsEnabled = false; cmb_BatchNo.IsEnabled = true; _WorkOrder = _M_WorkOrder.GetModel(txb_Orderid.Text.Trim()); if (_WorkOrder != null) { showOption(_WorkOrder.InspectMethod); shouOrderInfo(_WorkOrder); cmb_BatchNo.DataContext = _M_PackBatch.GetList(" OrderID ='" + txb_Orderid.Text + "'").Tables[0]; cmb_BatchNo.DisplayMemberPath = "BatchNo"; //检测设置工单 My_Inspect _TemInspect = new My_Inspect(); _TemInspect.IsUpdate = true; _TemInspect.WorkOrder = _WorkOrder; _WTT_Inspect = _TemInspect; lab_Title.Content = "订单中心——" + _WorkOrder.InspectMethod; } else { My_MessageBox.My_MessageBox_Message("未找到工单信息!"); } } else { My_MessageBox.My_MessageBox_Message("工单单号不能为空"); } } }
/****************************************** Controls ******************************************/ // //保存工单基本信息 // private void btn_Save_OrderInfo_Click(object sender, System.Windows.RoutedEventArgs e) { //检查填写的信息是否完整 if (txb_OrderID.Text == "" || txb_ProductName.Text == "" || txb_Model.Text == "" || txb_Order_Count.Text == "" || cmb_InspectMethod.Text == "" || cmb_InspectType.Text == "" || date_DeliveryDate.Text == "" || txb_Model.Text == "" || cmb_WorkShop.Text == "") { My_MessageBox.My_MessageBox_Erry("请检查工单信息是否设置完整!\r\n请补充后重试!"); } else { //如果数据库中已经有记录 if (_M_WorkOrder.GetCount(txb_OrderID.Text.ToString()) > 0) { if (MessageBox.Show("工单" + txb_OrderID.Text.ToString() + "已经存在,继续将替换原有工单!\r\n是否继续添加", "系统提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Error) == DialogResult.OK) { // _M_WorkOrder.Delete(txb_OrderID.Text.ToString()); //删除原有数据 Maticsoft.Model.WorkOrder _temWorkdOrder = new Maticsoft.Model.WorkOrder(); _temWorkdOrder = _M_WorkOrder.GetModel(txb_OrderID.Text.Trim()); Add_orderInfo(_temWorkdOrder); //添加新数据数据 } } else { Add_orderInfo(); } //添加数据 } }
// //载入工单批号信息 // private void txb_Batch_OrderID_KeyUp(object sender, System.Windows.Input.KeyEventArgs e) { if (e.Key == System.Windows.Input.Key.Enter && txb_Batch_OrderID.IsFocused) { if (txb_Batch_OrderID.Text.Trim() != "") { DataSet temDs = _M_PackBatch.GetList("OrderID = '" + txb_Batch_OrderID.Text.Trim() + "'"); dgv_PackBatch_Info.ItemsSource = temDs.Tables[0].DefaultView; _GLL_BatchNo_TemWork = _M_WorkOrder.GetModel(txb_Batch_OrderID.Text.Trim()); if (_GLL_BatchNo_TemWork != null) { txb_BatchNo_OrderID_Count.Text = _GLL_BatchNo_TemWork.Count; if (_GLL_BatchNo_TemWork.InspectMethod == Maticsoft.Model.E_InspectMethod.配组_八芯_SAMHALL) { txb_ClientSN_Stat_SN.IsEnabled = true; txb_ClientSN_Count.IsEnabled = true; } else { txb_ClientSN_Stat_SN.IsEnabled = false; txb_ClientSN_Count.IsEnabled = false; } } else { My_MessageBox.My_MessageBox_Message("未找到工单信息!"); } } } }
// //根据条码查工单 // private void txb_BarCode_Search_Order_KeyUp(object sender, KeyEventArgs e) { if (txb_BarCode_Search_Order.IsFocused && e.Key == Key.Enter) { DataSet temds = MCP_CS.SerialNumber.GetList("SN ='" + txb_BarCode_Search_Order.Text.Trim() + "'"); if (temds != null & temds.Tables[0].Rows.Count > 0) { string temOrder = temds.Tables[0].Rows[0]["OrderID"].ToString(); Maticsoft.Model.WorkOrder _OrderInfo = MCP_CS._M_WorkOrder.GetModel(temOrder); if (_OrderInfo != null) { My_MessageBox.My_MessageBox_Message("此条码属于工单:" + temOrder + "\r\n品名:" + _OrderInfo.ProductName + "\r\n规格:" + _OrderInfo.Model); } else { My_MessageBox.My_MessageBox_Message("未找到工单信息!"); } txb_BarCode_Search_Order.Text = ""; } else { My_MessageBox.My_MessageBox_Message("Sorry!\r\n未找到此条码的任何信息!"); txb_BarCode_Search_Order.Text = ""; } } }
// //工单信息查询 // private void btn_Find_Order_Info_Click(object sender, System.Windows.RoutedEventArgs e) { Maticsoft.Model.WorkOrder wod = _M_WorkOrder.GetModel(txb_FindOrderID.Text.ToString()); /******************** 工单基本信息 ********************************/ if (wod != null) { txb_OrderID.Text = wod.OrderID; txb_ProductName.Text = wod.ProductName; txb_Model.Text = wod.Model; txb_Order_Count.Text = wod.Count; cmb_InspectMethod.Text = wod.InspectMethod.ToString(); cmb_InspectType.Text = wod.InspectType.ToString(); cmb_WorkShop.Text = wod.Workshop.ToString(); date_DeliveryDate.Text = wod.DeliveryDate; // cmb_LabType.Text = wod.LabelType; _ISD = _M_InspectStandard.GetModelList(txb_FindOrderID.Text); dgv_Inspect_Standard_Info.ItemsSource = _ISD; _packBatch = _M_PackBatch.GetModelList(" OrderID ='" + txb_FindOrderID.Text + "'"); dgv_PackBatch_Info.ItemsSource = _packBatch; } else { My_MessageBox.My_MessageBox_Message("工单:" + txb_FindOrderID.Text + "基本信息未找到!"); } }
public UpDataEventArgs(DataSet _TestData, Maticsoft.Model.WorkOrder _WorkOrder, string _BatchNo, string _ClientSN) { this.WorkOrder = _WorkOrder; this.TestData = _TestData; this.ClientSN = _ClientSN; this.BatchNo = _BatchNo; }
/// <summary> /// 导出Exfo /// </summary> private void btn_Report_Exfo_Click(object sender, RoutedEventArgs e) { try { btn_Report_Exfo.IsEnabled = false; temBatchNo = cmb_Report_BatchNo_3D.Text; _TemPlate = cmb_TemplateList.Text; temSavePatch = txb_SavePatch.Text; // Pack_Exfo _M_PackExfo = new Pack_Exfo(); // Report _Report_Exfo = new Report(); // Report_Exfo _report_exfo = new Report_Exfo(); Maticsoft.BLL.WorkOrder _M_WorkOrder = new WorkOrder(); Maticsoft.Model.WorkOrder _WorkOrder = new Maticsoft.Model.WorkOrder(); _WorkOrder = _M_WorkOrder.GetModel(txb_Report_OrderID_3D.Text.Trim()); ExportMethod_Set(_M_PackExfo, _Report_Exfo, _report_exfo, _M_WorkOrder, _WorkOrder); btn_Report_Exfo.IsEnabled = true; } catch { } }
/// <summary> /// 默认构造函数 /// </summary> /// <param name="_TemplatePath">模板路径</param> /// <param name="_LabelSet">标签设置信息</param> /// <param name="_ExfoTestData">待打印Exfo测试数据</param> public LabelPrintEventArgs(Maticsoft.Model.WorkOrder _WorkOrder, string _TemplatePath, DataSet _LabelSet, DataSet _ExfoTestData) { this.WorkOrder = _WorkOrder; this.TemplatePath = _TemplatePath; this.LabelSet = _LabelSet; this.ExfoTestData = _ExfoTestData; }
//显示工单信息 private void showOrderInfo(Maticsoft.Model.WorkOrder _workOrderInfo) { Info_OrderID_Count.Text = _workOrderInfo.Count; Info_PeoductName.Text = _workOrderInfo.ProductName; Info_Model.Text = _workOrderInfo.Model; Info_DeliveryDate.Text = _workOrderInfo.DeliveryDate; }
// //查找数据 // private void btn_Search_Click(object sender, System.Windows.RoutedEventArgs e) { DataSet ds_3D = new DataSet(); DataSet ds_Exfo = new DataSet(); Maticsoft.Model.SerialNumber _SerialNumber = new Maticsoft.Model.SerialNumber(); Maticsoft.Model.WorkOrder _WorkOrder = new Maticsoft.Model.WorkOrder(); Maticsoft.BLL.User_3D_Test_Good _M_Test_3D = new Maticsoft.BLL.User_3D_Test_Good(); // _SerialNumber = _M_SerialNumber.GetModel(txb_Barcode.Text.Trim()); _WorkOrder = _M_WorkOrder.GetModel(_SerialNumber.OrderID); // if (_WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.MPO检测) { ds_3D = _M_MultiFiber.Getdata_Method_mpo(_SerialNumber.SN); } else { ds_3D = _M_Pack_3D.GetList("ClientSN ='" + _SerialNumber.SN + "'"); } ds_Exfo = _M_Pack_Exfo.GetList("ClientSN ='" + _SerialNumber.SN + "'"); // dgv_3D.ItemsSource = ds_3D.Tables[0].DefaultView; dgv_Exfo.ItemsSource = ds_Exfo.Tables[0].DefaultView; }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(Maticsoft.Model.WorkOrder model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into tb_WorkOrder("); strSql.Append("OrderID,Client,ProductName,Model,Count,InspectMethod,InspectType,DeliveryDate,LabelType,ModelNo,CableCordage,NexansSap,Length,DataT,Qty,Workshop,State)"); strSql.Append(" values ("); strSql.Append("@OrderID,@Client,@ProductName,@Model,@Count,@InspectMethod,@InspectType,@DeliveryDate,@LabelType,@ModelNo,@CableCordage,@NexansSap,@Length,@DataT,@Qty,@Workshop,@State)"); SqlParameter[] parameters = { new SqlParameter("@OrderID", SqlDbType.VarChar, 50), new SqlParameter("@Client", SqlDbType.VarChar, 50), new SqlParameter("@ProductName", SqlDbType.VarChar, 255), new SqlParameter("@Model", SqlDbType.VarChar, 100), new SqlParameter("@Count", SqlDbType.VarChar, 50), new SqlParameter("@InspectMethod", SqlDbType.VarChar, 50), new SqlParameter("@InspectType", SqlDbType.VarChar, 50), new SqlParameter("@DeliveryDate", SqlDbType.VarChar, 50), new SqlParameter("@LabelType", SqlDbType.VarChar, 50), new SqlParameter("@ModelNo", SqlDbType.VarChar, 50), new SqlParameter("@CableCordage", SqlDbType.VarChar, 50), new SqlParameter("@NexansSap", SqlDbType.VarChar, 50), new SqlParameter("@Length", SqlDbType.VarChar, 50), new SqlParameter("@DataT", SqlDbType.VarChar, 50), new SqlParameter("@Qty", SqlDbType.VarChar, 50), new SqlParameter("@Workshop", SqlDbType.VarChar, 50), new SqlParameter("@State", SqlDbType.VarChar, 50) }; parameters[0].Value = model.OrderID; parameters[1].Value = model.Client; parameters[2].Value = model.ProductName; parameters[3].Value = model.Model; parameters[4].Value = model.Count; parameters[5].Value = model.InspectMethod; parameters[6].Value = model.InspectType; parameters[7].Value = model.DeliveryDate; parameters[8].Value = model.LabelType; parameters[9].Value = model.ModelNo; parameters[10].Value = model.CableCordage; parameters[11].Value = model.NexansSap; parameters[12].Value = model.Length; parameters[13].Value = model.DataT; parameters[14].Value = model.Qty; parameters[15].Value = model.Workshop; parameters[16].Value = model.State; int rows = dbs.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
/// <summary> /// 显示工单跳线领取状况 列表显示 /// </summary> /// <param name="_Order"></param> /// <param name="temds"></param> /// <param name="OrderInfoChart"></param> private void ShowInfo_MaterialControl(Maticsoft.Model.WorkOrder _Order, DataSet temds, DataSeries OrderInfoChart) { MCP_CS.Cls_OrderInfo.Order = _WorkOrder.GetModel(txb_Info_OrderID.Text); string[] temOrd = new string[1] { txb_Info_OrderID.Text }; lsv_ShowOrderMaterialInfo.DataContext = MCP_CS.Cls_OrderInfo.GetOrderInfo(temOrd); dgv_OrderMaterialInfo.ItemsSource = MCP_CS.Cls_OrderInfo.GetOrderMaterialInfo.Tables[0].DefaultView; }
/// <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 { } }
/// <summary> /// 生成SN列表 /// </summary> /// <param name="_OrderInfo">工单信息</param> /// <param name="_StatSN">开始编码</param> /// <param name="_EndSN">结束编码</param> /// <returns></returns> private ArrayList GenerateSN(Maticsoft.Model.WorkOrder _OrderInfo, long _StatSN, long _EndSN) { ArrayList _tem = new ArrayList(); if (_OrderInfo.InspectMethod == Maticsoft.Model.E_InspectMethod.双并检测) { for (long sn = _StatSN; sn <= _EndSN; sn++) { _tem.Add(sn.ToString() + "-A1"); _tem.Add(sn.ToString() + "-A2"); _tem.Add(sn.ToString() + "-B1"); _tem.Add(sn.ToString() + "-B2"); } } else if (_OrderInfo.InspectMethod == Maticsoft.Model.E_InspectMethod.一码一签_跳线) { Generate_SN_MoreCode(_StatSN, _EndSN, _tem, 2); } else if (_OrderInfo.InspectMethod == Maticsoft.Model.E_InspectMethod.四芯检测) { Generate_SN_MoreCode(_StatSN, _EndSN, _tem, 4); } else if (_OrderInfo.InspectMethod == Maticsoft.Model.E_InspectMethod.八芯检测) { Generate_SN_MoreCode(_StatSN, _EndSN, _tem, 8); } else if (_OrderInfo.InspectMethod == Maticsoft.Model.E_InspectMethod.十二芯检测) { Generate_SN_MoreCode(_StatSN, _EndSN, _tem, 12); } else if (_OrderInfo.InspectMethod == Maticsoft.Model.E_InspectMethod.二十四芯检测) { Generate_SN_MoreCode(_StatSN, _EndSN, _tem, 24); } else if (_OrderInfo.InspectMethod == Maticsoft.Model.E_InspectMethod.四十八芯检测) { Generate_SN_MoreCode(_StatSN, _EndSN, _tem, 48); } else { for (long sn = _StatSN; sn <= _EndSN; sn++) { _tem.Add(sn.ToString()); } } Note("生产SN列表,SN " + _tem.Count + " 条"); return(_tem); }
//****************************************************** // //调取工单信息 // private void txb_OrderID_KeyUp(object sender, System.Windows.Input.KeyEventArgs e) { if (e.Key == System.Windows.Input.Key.Enter && txb_OrderID.IsFocused) { _W_OrderInfo = MCP_CS._M_WorkOrder.GetModel(txb_OrderID.Text.Trim()); if (_W_OrderInfo != null) { txb_Note.Text += "线材类型:" + _W_OrderInfo.InspectMethod + "\r\v"; } else { My_MessageBox.My_MessageBox_Message("未找到工单信息,请确实工单已经存在!"); } } }
/// <summary> /// 验证此批号数量 是否会超出工单数量 /// </summary> /// <param name="OrderID"></param> /// <param name="_Count"></param> /// <returns></returns> private bool V_BatchCount(string OrderID, int _Count) { int orderIDCount = 0, batchCount = 0; Maticsoft.Model.WorkOrder _Order = MCP_CS._M_WorkOrder.GetModel(OrderID); int.TryParse(_Order.Count, out orderIDCount); batchCount = MCP_CS._M_PackBatch.Get_BatchCount("OrderID= '"+OrderID+"'"); if (orderIDCount < (batchCount + _Count)) { return false; } else { return true; } }
/*************************** 方法 ********************************************/ /// <summary> /// 显示工单信息 /// </summary> /// <param name="OrderID"></param> private void showOrderInfo(string OrderID) { #region 之前代码 // DataSet _OrderInfo = _WorkOrder.GetOrderInfo(OrderID); //工单基本信息 // dgv_OrderInfo.ItemsSource = _WorkOrder.GetOrderMaterial(OrderID).Tables[0].DefaultView; //工单物料需领用量 //窗体控件显示 /* * txb_Info_OrderID.Text = _OrderInfo.Tables[0].Rows[0]["TA001"].ToString() +"-"+ _OrderInfo.Tables[0].Rows[0]["TA002"].ToString(); * txb_Info_Prodotto_Num.Text = _OrderInfo.Tables[0].Rows[0]["品号"].ToString(); * txb_Info_Prodotto_Name.Text = _OrderInfo.Tables[0].Rows[0]["品名"].ToString(); * txb_Info_Model.Text =_OrderInfo.Tables[0].Rows[0]["规格"].ToString(); * txb_Info_CommenceData.Text = _OrderInfo.Tables[0].Rows[0]["开工日期"].ToString().Trim(); * txb_Info_CompletionData.Text =_OrderInfo.Tables[0].Rows[0]["完工日期"].ToString(); * lab_Info_OrderCount.Text = _OrderInfo.Tables[0].Rows[0]["批量"].ToString().Trim(); */ #endregion Maticsoft.BLL.WorkOrder _M_OrderInfo = new Maticsoft.BLL.WorkOrder(); Maticsoft.BLL.OrderMaterial _M_OrderMaterial = new Maticsoft.BLL.OrderMaterial(); Maticsoft.Model.WorkOrder _OrderInfo = new Maticsoft.Model.WorkOrder(); // _OrderInfo = _M_OrderInfo.GetModel(OrderID); if (_OrderInfo != null) { txb_Info_OrderID.Text = _OrderInfo.OrderID; txb_Info_Prodotto_Name.Text = _OrderInfo.ProductName; txb_Info_Model.Text = _OrderInfo.Model; txb_Info_CompletionData.Text = _OrderInfo.DeliveryDate; // DataSet temMaterialList = _M_OrderMaterial.GetList("OrderID= N'" + OrderID + "'"); //工单物料需领用量 _WTT_MaterialList = PressMaterialList(temMaterialList); dgv_OrderInfo_Material.ItemsSource = _WTT_MaterialList.Tables[0].DefaultView; //图表表示 Show_OrderChart(_OrderInfo); } else { My_MessageBox.My_MessageBox_Message("未找到工单:" + OrderID + "的信息!请联系助理录入工单信息后重试!!!"); } }
// #endregion // //工单单号 // private void txb_OrderID_KeyUp(object sender, KeyEventArgs e) { if (e.Key == Key.Enter && txb_OrderID.IsFocused == true && txb_OrderID.Text != "") { _WTT_WorkOrder = MCP_CS._M_WorkOrder.GetModel(txb_OrderID.Text.Trim()); if (_WTT_WorkOrder != null) { txb_Info_ProductName.Text = _WTT_WorkOrder.ProductName; txb_Info_Model.Text = _WTT_WorkOrder.Model; txb_Info_DemandQuantity.Text = _WTT_WorkOrder.Count; showInfo(_WTT_StateList_Receive); txb_Quantity.Focus(); } else { My_MessageBox.My_MessageBox_Message("未找到此工单的任何信息!\r\n工单:" + txb_OrderID.Text.Trim() + "\r\n请联系助理进行录入!"); } } }
/// <summary> /// 在图表中显示工单信息 /// </summary> private void Show_OrderChart(Maticsoft.Model.WorkOrder _Order) { DataSet temds = MCP_CS._M_Material_Inject.GetInjectView(txb_OrderID.Text.Trim()); DataSeries OrderInfoChart = new DataSeries(); //声明临时变量 if (temds.Tables[0].Rows.Count > 0) { ShowInfo_MaterialControl(_Order, temds, OrderInfoChart); } /* * OrderInfoChart.DataPoints.Add(new DataPoint { AxisXLabel = "已领取", YValue = 0 }); * OrderInfoChart.DataPoints.Add(new DataPoint { AxisXLabel = "已投入", YValue = 0 }); * OrderInfoChart.DataPoints.Add(new DataPoint { AxisXLabel = "已测试", YValue = 0 }); * OrderInfoChart.DataPoints.Add(new DataPoint { AxisXLabel = "待测Exfo", YValue = 0 }); * OrderInfoChart.DataPoints.Add(new DataPoint { AxisXLabel = "已包装", YValue = 0 }); * OrderInfoChart.DataPoints.Add(new DataPoint { AxisXLabel = "已出货", YValue = 0 }); */ Order_Chart(OrderInfoChart); //将Dataseries 类型的值 传递给方法 Order_Chart() 进行图表显示 }
// //装箱设置 OrderID控件 // private void txb_Pak_OrderID_KeyUp(object sender, System.Windows.Input.KeyEventArgs e) { if (e.Key == System.Windows.Input.Key.Enter && txb_Pak_OrderID.IsFocused) { if (txb_Pak_OrderID.Text != "") { Maticsoft.BLL.PackBatch _temPackBatch = new PackBatch(); Maticsoft.BLL.WorkOrder _M_TemWorkOrder = new WorkOrder(); cmb_Pak_BatchNo.DataContext = _temPackBatch.GetList("OrderID='"+txb_Pak_OrderID.Text.Trim()+"'").Tables[0]; cmb_Pak_BatchNo.DisplayMemberPath = "BatchNo"; Maticsoft.Model.WorkOrder _Orm = _M_TemWorkOrder.GetModel(txb_Pak_OrderID.Text.Trim()); if (_Orm.OrderID != null) { txb_Pak_OrderCount.Text = _Orm.Count; }//工单批量 else { My_MessageBox.My_MessageBox_Message("未找到工单信息!"); } } else { My_MessageBox.My_MessageBox_Message("工单单号不能为空"); } } }
// //工单单号 // private void txb_OrderID_PreviewKeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Enter && txb_Orderid.IsFocused) { if (txb_Orderid.Text != "") { cmb_BatchNo.DisplayMemberPath = "BatchNo"; DataSet temds = new DataSet(); temds = _M_PackBatchNo.GetList("OrderID ='" + txb_Orderid.Text + "'"); cmb_BatchNo.DataContext = temds.Tables[0]; _WTT_OrderInfo = _M_WorkOrder.GetModel(txb_Orderid.Text.Trim()); showOrderInfo(_WTT_OrderInfo); txb_Orderid.IsEnabled = false; cmb_BatchNo.IsEnabled = true; } else { My_MessageBox.My_MessageBox_Message("工单单号不能为空"); } } }
/// <summary> /// 得到一个对象实体 /// </summary> /// <param name="_orderID">工单单号</param> /// <returns></returns> public Maticsoft.Model.WorkOrder GetModel(string _orderID) { //该表无主键信息,请自定义主键/条件字段 StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 OrderID,Client,ProductName,Model,Count,InspectMethod,InspectType,DeliveryDate,LabelType,ModelNo,CableCordage,NexansSap,Length,DataT,Qty,Workshop,State,ID_Key from tb_WorkOrder "); strSql.Append(" where OrderID ='" + _orderID + "' "); SqlParameter[] parameters = { }; Maticsoft.Model.WorkOrder model = new Maticsoft.Model.WorkOrder(); DataSet ds = dbs.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
/// <summary> /// 导出方法设置 /// </summary> /// <param name="_M_PackExfo"></param> /// <param name="_Report_Exfo"></param> /// <param name="_report_exfo"></param> /// <param name="_M_WorkOrder"></param> /// <param name="_WorkOrder"></param> private void ExportMethod_Set(Pack_Exfo _M_PackExfo, Report _Report_Exfo, Report_Exfo _report_exfo, Maticsoft.BLL.WorkOrder _M_WorkOrder, Maticsoft.Model.WorkOrder _WorkOrder) { //双并导出 if (_WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.双并检测) { //获取每一个SN的已包装数据 ArrayList temDatalist = new ArrayList(); ArrayList temSnList = new ArrayList(); Maticsoft.BLL.SerialNumber _M_seriarlnumber = new SerialNumber(); temSnList = _M_seriarlnumber.Get_SN_List(MCP_CS._M_PackBatch.GetModel(cmb_Report_BatchNo_3D.Text.Trim()), Maticsoft.Model.E_SerialNumber_Type.ClientSN, Maticsoft.Model.E_Barcode_State.Yet_Pack); foreach (string _sn in temSnList) { temDatalist.Add(_M_PackExfo.Get_PackData(_sn)); } //导出Exfo数据 Report.ImportEventArgs ep = new Report.ImportEventArgs(temDatalist, _TemPlate, temSavePatch + "\\" + temBatchNo); _Report_Exfo.Export_TextReport += _report_exfo.Export_Twin; ep.OrderInfo = _WorkOrder; ep.UpProgressBar += UpProgressBar; _Report_Exfo.StatExport(ep); } else if (_WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.四芯检测 || _WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.一码一签_跳线) { //获取每一个SN的已包装数据 ArrayList temDatalist = new ArrayList(); ArrayList temSnList = new ArrayList(); Maticsoft.BLL.SerialNumber _M_seriarlnumber = new SerialNumber(); Maticsoft.Model.PackBatch temPack = MCP_CS._M_PackBatch.GetModel(cmb_Report_BatchNo_3D.Text.Trim()); temSnList = _M_seriarlnumber.Get_SN_List(temPack, Maticsoft.Model.E_SerialNumber_Type.ClientSN, Maticsoft.Model.E_Barcode_State.Yet_Pack); foreach (string _sn in temSnList) { temDatalist.Add(_M_PackExfo.Get_PackData(_sn)); } //导出Exfo数据 Report.ImportEventArgs ep = new Report.ImportEventArgs(temDatalist, _TemPlate, temSavePatch + "\\" + temBatchNo); _Report_Exfo.Export_TextReport += _report_exfo.Export_fourCore; ep.OrderInfo = _WorkOrder; ep.UpProgressBar += UpProgressBar; _Report_Exfo.StatExport(ep); } else if (_WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.MPO检测) { Maticsoft.BLL.PackBatch _M_BatchNo = new PackBatch(); //导出Exfo数据 Maticsoft.Model.WorkOrder _temorder = _M_WorkOrder.GetModel(txb_Report_OrderID_3D.Text); Report.ImportEventArgs ep = new Report.ImportEventArgs(_M_PackExfo.Get_PackData(_temorder.OrderID, _temorder.InspectMethod), _TemPlate, temSavePatch + "\\" + temBatchNo); ep.BatchNo = _M_BatchNo.GetModel(cmb_Report_BatchNo_3D.Text.Trim()); _Report_Exfo.Export_TextReport += _report_exfo.Export_Exfo_MPO; ep.OrderInfo = _WorkOrder; ep.UpProgressBar += UpProgressBar; _Report_Exfo.StatExport(ep); } else if (_WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.八芯检测) { Maticsoft.BLL.PackBatch _M_BatchNo = new PackBatch(); //导出Exfo数据 Maticsoft.Model.WorkOrder _temorder = _M_WorkOrder.GetModel(txb_Report_OrderID_3D.Text); Report.ImportEventArgs ep = new Report.ImportEventArgs(_M_PackExfo.Get_PackData(_temorder.OrderID, _temorder.InspectMethod), _TemPlate, temSavePatch + "\\" + temBatchNo); ep.BatchNo = _M_BatchNo.GetModel(cmb_Report_BatchNo_3D.Text.Trim()); _Report_Exfo.Export_TextReport += _report_exfo.Export_EightCore; ep.OrderInfo = _WorkOrder; ep.UpProgressBar += UpProgressBar; _Report_Exfo.StatExport(ep); } else { //导出Exfo数据 Maticsoft.Model.WorkOrder _temorder = _M_WorkOrder.GetModel(txb_Report_OrderID_3D.Text); Report.ImportEventArgs ep = new Report.ImportEventArgs(_M_PackExfo.Get_PackData(cmb_Report_BatchNo_3D.Text.Trim(), _temorder.InspectMethod), _TemPlate, temSavePatch + "\\" + temBatchNo); _Report_Exfo.Export_TextReport += _report_exfo.Export_Exfo_One; ep.OrderInfo = _WorkOrder; ep.UpProgressBar += UpProgressBar; _Report_Exfo.StatExport(ep); } }
/// <summary> /// 导出3D数据报告 /// </summary> private void btn_Report_3D_Click(object sender, RoutedEventArgs e) { try { btn_Report_3D.IsEnabled = false; temBatchNo = cmb_Report_BatchNo_3D.Text; _TemPlate = cmb_TemplateList.Text; temSavePatch = txb_SavePatch.Text; // Pack_3D _M_Pack3D = new Pack_3D(); Pack_Exfo _M_PackExfo = new Pack_Exfo(); // Report _Report_3D = new Report(); Report _Report_Exfo = new Report(); // Report_3D _report_3d = new Report_3D(); Report_Exfo _report_exfo = new Report_Exfo(); Maticsoft.BLL.WorkOrder _M_WorkOrder = new WorkOrder(); Maticsoft.Model.WorkOrder _WorkOrder = new Maticsoft.Model.WorkOrder(); _WorkOrder = _M_WorkOrder.GetModel(txb_Report_OrderID_3D.Text.Trim()); //十二芯X2 导出 if (_WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.TFK十二芯检测x2) { //导出3D数据 _Report_3D.Export_TextReport += _report_3d.TFK十二芯检测x2; Report.ImportEventArgs p = new Report.ImportEventArgs(_M_Pack3D.Get_PackData(cmb_Report_BatchNo_3D.Text.Trim(), _WorkOrder.InspectMethod), _TemPlate, temSavePatch + "\\" + temBatchNo); p.OrderInfo = _WorkOrder; OrderLabSet _M_OrderLabSet = new OrderLabSet(); p.LabInfo = _M_OrderLabSet.GetLabInfo("OrderID='" + txb_Report_OrderID_3D.Text + "'"); p.UpProgressBar += UpProgressBar; _Report_3D.StatExport(p); //导出Exfo数据 } else if (_WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.配组_二十四芯 || _WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.配组_四十八芯 || _WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.配组_九十六芯 || _WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.四十八芯检测 || _WorkOrder.InspectMethod == Maticsoft.Model.E_InspectMethod.二十四芯检测 ) { //导出3D数据 Maticsoft.BLL.SerialNumber _M_SerialNumber = new SerialNumber(); _Report_3D.Export_TextReport += _report_3d.Multicore; DataSet temds = new DataSet(); Report.ImportEventArgs p = new Report.ImportEventArgs(temds, _TemPlate, temSavePatch + "\\"); p.OrderInfo = _WorkOrder; OrderLabSet _M_OrderLabSet = new OrderLabSet(); p.LabInfo = _M_OrderLabSet.GetLabInfo("OrderID='" + txb_Report_OrderID_3D.Text + "'"); p.UpProgressBar += UpProgressBar; ArrayList _SN_List = _M_SerialNumber.Get_SN_List(_WorkOrder.OrderID, Maticsoft.Model.E_SerialNumber_Type.ClientSN, Maticsoft.Model.E_Barcode_State.Yet_Pack); _Report_3D.StatExport(p, _SN_List); } //配组8芯 else { //导出3D数据 _Report_3D.Export_TextReport += _report_3d.peizu; Report.ImportEventArgs p = new Report.ImportEventArgs(_M_Pack3D.Get_PackData(cmb_Report_BatchNo_3D.Text.Trim(), _WorkOrder.InspectMethod), _TemPlate, temSavePatch + "\\" + temBatchNo); p.OrderInfo = _WorkOrder; p.UpProgressBar += UpProgressBar; _Report_3D.StatExport(p); } btn_Report_3D.IsEnabled = true; } catch { } }
/// <summary> /// 生成数据 /// </summary> /// <param name="_OrderInfo">工单信息</param> /// <param name="_SN_List">SN列表</param> /// <param name="_ConectionType">接头类型</param> /// <param name="_IL_Min">IL_Min</param> /// <param name="_IL_Max">IL_Max</param> /// <param name="_RL_Min">RL_Min</param> /// <param name="_RL_Man">RL_Max</param> /// <returns></returns> private ArrayList GenerateDataList(Maticsoft.Model.WorkOrder _OrderInfo, ArrayList _SN_List, string _ConectionType, int _IL_Min, int _IL_Max, int _RL_Min, int _RL_Man) { ArrayList _temList = new ArrayList(); try { double _temIL_1310nm = 0, _temIL_1550nm = 0; //计算接续值 foreach (string _SN in _SN_List) { bool TemV = true; while (TemV) { _temIL_1310nm = _W_GenerateData.Next(_IL_Min, _IL_Max); _temIL_1550nm = _W_GenerateData.Next(_IL_Min, _IL_Max); if ((_temIL_1310nm - _temIL_1550nm) < 10 && (_temIL_1310nm - _temIL_1550nm) > -10) { TemV = false; } } //对生成的数值进行处理 if (_temIL_1310nm >= 10) { _temIL_1310nm = double.Parse("0." + _temIL_1310nm); } else { _temIL_1310nm = double.Parse("0.0" + _temIL_1310nm); } if (_temIL_1550nm >= 10) { _temIL_1550nm = double.Parse("0." + _temIL_1550nm); } else { _temIL_1550nm = double.Parse("0.0" + _temIL_1550nm); } #region 添加数据 //循环添加 1310nm 和 1550nm for (int i = 1; i <= 2; i++) { //定义变量 string temWave = ""; double temIL_A = 0; double temRL_A = _W_GenerateData.Next(_RL_Min, _RL_Man); //变量赋值 if (i == 1) { temWave = "1310nm"; temIL_A = _temIL_1310nm; } else { temWave = "1550nm"; temIL_A = _temIL_1550nm; } //添加至列表 Maticsoft.Model.User_JDS_Test_Good _jdsTest = new Maticsoft.Model.User_JDS_Test_Good() { SN = _SN, PartNumber = "", Wave = temWave, Result = "Passed", TestDate = DateTime.Now.Date.ToString(), IL_A = temIL_A.ToString("0.00"), Refl_A = temRL_A.ToString("0"), IL_B = "null", Refl_B = "null" }; _temList.Add(_jdsTest); } #endregion } Note("生成数据记录" + _W_DataList.Count + "条"); } catch (SystemException ex) { My_MessageBox.My_MessageBox_Message(ex.Message); } return(_temList); }
/// <summary> /// Exfo数是否测试通过 /// </summary> /// <param name="_PigtailList">Pigtail数组</param> /// <returns></returns> public ArrayList Result_Exfo(Maticsoft.Model.WorkOrder _WorkOrder, ArrayList _PigtailList) { ArrayList temList = _StandatdList.Pigtail_Standard_pigtailNum(_WorkOrder.InspectMethod); return(isEqual(temList, _PigtailList)); }
/********************** Method **********************/ //获取测试数据 根据工单 private DataSet Get_Data(Maticsoft.Model.WorkOrder _workOrder) { return(null); }
/// <summary> /// 添加工单基本信息 /// </summary> /// <returns></returns> private void Add_orderInfo(Maticsoft.Model.WorkOrder _workOrder) { _workOrder = new Maticsoft.Model.WorkOrder() { OrderID = txb_OrderID.Text.ToString(), //工单单号 Client = "Ezconn", ProductName = txb_ProductName.Text.ToString(), Model = txb_Model.Text.ToString(), Count = txb_Order_Count.Text.ToString(), //枚举类型的检测方法 InspectMethod = (Maticsoft.Model.E_InspectMethod)Enum.Parse(typeof(Maticsoft.Model.E_InspectMethod), cmb_InspectMethod.SelectedItem.ToString(), false), //枚举类型检测选项 InspectType = (Maticsoft.Model.E_InspectType)Enum.Parse(typeof(Maticsoft.Model.E_InspectType), cmb_InspectType.Text.ToString(), false), DeliveryDate = date_DeliveryDate.Text.ToString(), // LabelType = cmb_LabType.Text.ToString(), ModelNo = txb_Model.Text.ToString(), Workshop = cmb_WorkShop.Text.ToString(), State = "待生产" , ID_Key = _workOrder.ID_Key }; //判断是否添加成功 if (_M_WorkOrder.Update(_workOrder)) { _dt_OrderMaterial = _M_WorkOrder.GetOrderMaterial(txb_OrderID.Text); //工单物料需领用量 Add_orderMaterial(_dt_OrderMaterial); //添加工单中的物料清单 Add_MaterialInfo(_dt_OrderMaterial); //添加物料信息 暂时使用 用于收集物料信息 //弹出提示信息 My_MessageBox.My_MessageBox_Message("工单" + txb_OrderID.Text.ToString() + "添加成功!"); //保存条码 if (txb_Stat_SN.Text != "") { Maticsoft.BLL.SerialNumber _M_SerialNumber = new SerialNumber(); if (_M_SerialNumber.GetList("OrderID = '" + txb_OrderID.Text.Trim() + "'").Tables[0].Rows.Count < 1) { addSerialNumber(long.Parse(txb_Stat_SN.Text.ToString()), int.Parse(txb_Order_Count.Text)); } else { if (MessageBox.Show("工单" + txb_OrderID.Text.ToString() + "已经存在条码,继续将替换原有条码!\r\n是否继续添加", "系统提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Error) == DialogResult.OK) { // _M_SerialNumber.DeleteList("OrderID = '" + txb_OrderID.Text.Trim() + "'"); addSerialNumber(long.Parse(txb_Stat_SN.Text.ToString()), int.Parse(txb_Order_Count.Text)); } } } else { My_MessageBox.My_MessageBox_Message("开始条码 为空 将不进行条码添加!"); } #region 清空文本框 txb_OrderID.Text = ""; txb_ProductName.Text = ""; txb_Model.Text = ""; txb_Order_Count.Text = ""; cmb_InspectMethod.Text = ""; cmb_InspectType.Text = ""; date_DeliveryDate.Text = ""; txb_Model.Text = ""; cmb_WorkShop.Text = ""; txb_Stat_SN.Text = ""; _GLL_Lst_SerialNumber.Clear(); #endregion } else { //弹出提示信息 My_MessageBox.My_MessageBox_Erry("工单" + txb_OrderID.Text.ToString() + "添加失败!"); } }
public bool ShowOrderInfo(Maticsoft.Model.WorkOrder _OrderInfo) { return(true); }