using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Collections; using System.Windows.Forms; using CoreFS.CA06; using System.IO; using Microsoft.Office.Interop.Excel; using ET; namespace Core.LZMes.Client.UIJ { public partial class UIJ050030 : FrmBase { public UIJ050030() { InitializeComponent(); } private void UIJ050030_Load(object sender, EventArgs e) { this.ultraDateTimeEditor1.Value = null; this.ultraComboEditor1.SelectedIndex = 1; this.ultraComboEditor2.SelectedIndex = 0; this.DoQuery(); } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": this.DoQuery(); break; case "Save": this.DoSave(); break; case "Print": this.DoPrint(); break; case "Export": this.DoExport(); break; case "Exit": this.Close(); break; } } /// /// 查询发货实绩 /// private void DoQuery() { string dlivTp = this.ultraComboEditor1.SelectedIndex < 0 ? "" : this.ultraComboEditor1.Value.ToString(); string transCarNo = this.textBox2.Text.Trim(); string dlivDirNo = this.textBox3.Text.Trim(); string shipProgCd = this.ultraComboEditor2.SelectedIndex < 0 ? "" : this.ultraComboEditor2.Value.ToString(); string trnfDTime = this.ultraDateTimeEditor1.Value == null ? "" : this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd"); string coilProgCd = ""; if (this.ultraComboEditor2.SelectedIndex >= 0) { if (ultraComboEditor2.Value.ToString().Equals("06")) { trnfDTime = ""; coilProgCd = "DFB"; } else { coilProgCd = "DFF"; if (ultraDateTimeEditor1.Value == null) { MessageBox.Show("需要选择出库时间,否则数据量过大,不便于查找!"); return; } } } else { MessageBox.Show("状态区分必须选择,否则导致数据量过大!"); return; } this.dataSet1.Tables[0].Clear(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ05.UIJ050010"; ccp.MethodName = "queryShippingResultLt"; ccp.ServerParams = new Object[] { dlivTp, coilProgCd, transCarNo, dlivDirNo, shipProgCd, trnfDTime }; ccp.SourceDataTable = this.dataSet1.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); DataRowCollection drs = dataSet1.Tables[0].Rows; for (int i = 0; i < drs.Count; i++) { ultraGrid1.Rows[i].Cells[0].Value = false; } foreach (Infragistics.Win.UltraWinGrid.UltraGridRow ugr in ultraGrid1.Rows) { if (ugr.Cells["PATH_MILL_CD"].Value.ToString().Equals("1") ) { ugr.Appearance.BackColor = Color.LightGreen; } } } private void DoSave() { if (this.ultraDateTimeEditor1.Value == null) { MessageBox.Show("出库时间信息不能为空,请选择相应的出库时间!"); return; } String tftime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd"); String ntime = DateTime.Now.ToString("yyyyMMdd"); //if (tftime != ntime) //{ // if (MessageBox.Show("所选发运日期(" + tftime + ")不属于今天(" + ntime + "),是否继续发运?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) // { // return; // } //} if (tftime != ntime) { MessageBox.Show("出库时间不为当天,请重新输入!"); return; } //if (this.textBox1.Text.Trim().Equals("")) //{ // MessageBox.Show("草支垫重量信息不能为空,请输入相应的草支垫重量!"); // return; //} Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { string coilWgt = rs[i].Cells["COIL_WGT"].Text; string transCarNo = rs[i].Cells["TRANS_CAR_NO"].Text; if (coilWgt.Equals("")) { MessageBox.Show("第" + (i + 1) + "行卷重数据为空,请核对后再点击保存!"); return; } if (transCarNo.Equals("")) { MessageBox.Show("第" + (i + 1) + "行车辆号为空,请核对后再点击保存!"); return; } } } ArrayList list = new ArrayList(); string[] param = null; string regId = this.UserInfo.GetUserID(); //int PackingWeight = 0; //包装重量 for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()) && "06".Equals(rs[i].Cells["SHIP_PROG_CD"].Text)) { param = new string[38]; param[0] = rs[i].Cells["SHIP_DIRNO"].Text; ;//发货指示号 param[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号 param[2] = rs[i].Cells["TRANS_CAR_NO"].Text;//车辆号 param[3] = rs[i].Cells["GET_ON_PCD"].Text;//装车地点 param[4] = rs[i].Cells["DEST_PCD"].Text;//目的地 param[5] = rs[i].Cells["EXLV_LINE_CD"].Text;//专用线 param[6] = rs[i].Cells["GET_OFF_PCD"].Text;//卸车地点 param[7] = rs[i].Cells["BY_SEA_YN"].Text;//水运区分 param[8] = rs[i].Cells["DEPARTURE_CD"].Text;//出发港 param[9] = rs[i].Cells["ARRIVAL_CD"].Text;//到达港 param[10] = rs[i].Cells["OLD_SAMPL_NO"].Text;//生产钢卷号 param[11] = rs[i].Cells["TOT_DEC_GRD"].Text;//综合判定等级 param[12] = rs[i].Cells["COIL_WGT"].Text;//钢卷重量 param[13] = rs[i].Cells["COIL_OUTDIA"].Text;//钢卷外径 param[14] = rs[i].Cells["SHIP_INVNO"].Text;//发货清单号码 param[15] = rs[i].Cells["CRET_NO"].Text;//品质保证书号 param[16] = rs[i].Cells["TRNF_DTIME"].Text;//发货时间 param[17] = "07";//钢卷公共表中的状态字段 SHIP_PROG_CD param[18] = rs[i].Cells["SPEC_STL_GRD"].Text;//标冷牌号 param[19] = rs[i].Cells["BEF_PROG_CD"].Text;//钢卷公共表中当前状态做前状态使用 param[20] = rs[i].Cells["BEF_PROG_CD_DTIME"].Text;//状态改变时间 param[21] = rs[i].Cells["BEF_PROG_CD_PGM"].Text;//状态改变人 param[22] = rs[i].Cells["ORD_NO"].Text;//合同号 param[23] = rs[i].Cells["ORD_SEQ"].Text;//订单号 param[24] = rs[i].Cells["SHIP_COMP_CD"].Text;//运输公司编码 param[25] = rs[i].Cells["COIL_STAT"].Text;//钢卷状态 param[26] = rs[i].Cells["CUR_PROG_CD"].Text;//当前状态 param[27] = rs[i].Cells["CUR_PROG_CD_PGM"].Text;//当前状态修改人 param[28] = regId;//登录人 param[29] = rs[i].Cells["DLIV_TP"].Text;//火运汽运标志 param[30] = rs[i].Cells["COIL_INDIA"].Text;//钢卷内径 param[31] = rs[i].Cells["OLD_SAMPL_NO"].Text;//钢卷号 param[32] = rs[i].Cells["CUST_NM"].Text;//合同单位 param[33] = rs[i].Cells["ORD_NM"].Text;//收货单位 param[34] = rs[i].Cells["DEST_PCD_DESC"].Text;//到站 param[35] = rs[i].Cells["SHIP_COMP_NM"].Text;//运输公司名称 param[36] = rs[i].Cells["SM_CFNM"].Text;//产品名称 param[37] = this.textBox4.Text.Trim();//包装重量 /*param[38] = rs[i].Cells["PACKING_GRADE"].Text;//包装等级 新添字段ZMZ if (param[37].Equals("0") || param[37] == null || "".Equals(param[37])) { PackingWeight = packing_tool(param[12], param[38]); param[37] = packing_tool(param[12], param[38]).ToString(); }*/ list.Add(param); //检查接口表是否有数据 CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ03.UIJ030030"; ccp.MethodName = "hasCoilINTBJ"; ccp.ServerParams = new Object[] { rs[i].Cells["OLD_SAMPL_NO"].Text }; ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal); int count = int.Parse(ccp.ReturnObject.ToString()); if (count > 0) { MessageBox.Show("选择的钢卷已在销售接口中,无法发运!"); return; } } else if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()) && "08".Equals(rs[i].Cells["SHIP_PROG_CD"].Text)) { //发货明细结束后修改车辆号 list = new ArrayList(); string dlivDirNo = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号 string carNo = rs[i].Cells["TRANS_CAR_NO"].Text;//车辆号 CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ05.UIJ050010"; ccp.MethodName = "updateCarNo"; ccp.ServerParams = new Object[] { dlivDirNo, carNo }; this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); break; } } //初始化包装重量 ZMZ //this.textBox4.Text = PackingWeight.ToString(); //int MatWeight = 0; //草垫总重量 if (list.Count > 0) { //出库班次、出库班组、出库人、出库时间、草支垫重量 string trnfShift = UserInfo.GetUserOrder() ; string trnfGroup = UserInfo.GetUserGroup(); string trnfRegId = UserInfo.GetUserID(); string trnfDtime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd"); /*foreach (string[] param2 in list) { MatWeight = mat_tool(param2[12], rs.Count); break; }*/ string czdWgt = this.textBox1.Text.Trim(); //初始化草垫重量 ZMZ //this.textBox1.Text = czdWgt; // czdWgt = czdWgt * list.Count; CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ05.UIJ050010"; ccp.MethodName = "saveShippingResultLt"; ccp.ServerParams = new Object[] { trnfShift, trnfGroup, trnfRegId, trnfDtime, czdWgt, list }; this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); this.ultraComboEditor2.SelectedIndex = 1; } //生成发货实绩后再次查询 this.DoQuery(); } /// 将发货明细数据移送给货运中国系统进行物流跟踪! private void sendLCargocn_Click_1(object sender, EventArgs e) { Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { string coilWgt = rs[i].Cells["COIL_WGT"].Text; string transCarNo = rs[i].Cells["TRANS_CAR_NO"].Text; if (coilWgt.Equals("")) { MessageBox.Show("第" + (i + 1) + "行卷重数据为空,请核对后再点击保存!"); return; } if (transCarNo.Equals("")) { MessageBox.Show("第" + (i + 1) + "行车辆号为空,请核对后再点击保存!"); return; } } } ArrayList list = new ArrayList(); string[] param = null; string regId = this.UserInfo.GetUserID(); for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { if ("08".Equals(rs[i].Cells["SHIP_PROG_CD"].Text)) { param = new string[19]; param[0] = rs[i].Cells["SHIP_DIRNO"].Text; ;//发货指示号 param[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号 param[2] = rs[i].Cells["TRANS_CAR_NO"].Text;//车辆号 param[3] = rs[i].Cells["GET_ON_PCD"].Text;//装车地点 param[4] = rs[i].Cells["DEST_PCD"].Text;//目的地 param[5] = rs[i].Cells["GET_OFF_PCD"].Text;//卸车地点 param[6] = rs[i].Cells["COIL_WGT"].Text;//钢卷重量 param[7] = rs[i].Cells["SHIP_INVNO"].Text;//发货清单号码 param[8] = rs[i].Cells["TRNF_DTIME"].Text;//发货时间 param[9] = rs[i].Cells["SPEC_STL_GRD"].Text;//标冷牌号 param[10] = rs[i].Cells["SHIP_COMP_CD"].Text;//运输公司编码 param[11] = regId;//登录人 param[12] = rs[i].Cells["DLIV_TP"].Text;//火运汽运标志 param[13] = rs[i].Cells["CUST_NM"].Text;//合同单位 param[14] = rs[i].Cells["ORD_NM"].Text;//收货单位 param[15] = rs[i].Cells["DEST_PCD_DESC"].Text;//到站 param[16] = rs[i].Cells["OLD_SAMPL_NO"].Text;//钢卷号 param[17] = rs[i].Cells["SM_CFNM"].Text;//产品名称 param[18] = rs[i].Cells["SHIP_COMP_NM"].Text;//运输公司名称 list.Add(param); } } } if (list.Count > 0) { //直接在C#中调用后天Java方法,向物流跟踪平台发送明细数据 CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "xin.glue.cargocnHttpClient.WayBillClient"; ccp.MethodName = "cargocnClientPost"; ccp.ServerParams = new Object[] { list }; this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); //状态修改失败返回 if ("" != ccp.ReturnInfo && null != ccp.ReturnInfo) { MessageBox.Show(ccp.ReturnInfo + "\n结果值含义:0 表示发送成功,其他值都为失败" + "\n1000:签名验证失败 1001:运单对象不得为空" + "\n1002:发货人ID不得为空 1003:发货人信息加载出错" + "\n1004:发货人状态不正常 1005:订单号不得为空" + "\n1006:承运商不得为空 1007:承运商信息加载出错" + "\n1008:承运商没在货运中国平台开户 1009:运单子项不得为空" + "\n1010:车牌号不得为空 1011:车牌号信息加载出错" + "\n1012:车牌号没在货运中国平台注册\n1013:该车辆在货运中国平台尚未关联司机帐号"); return; } //if (0 == ccp.ReturnCode) //{ // MessageBox.Show("发送成功!"); // return; //} //else //{ // MessageBox.Show("发送失败,错误代码:" + ccp.ReturnCode + ";\n" // + "错误代码含义如下:" // + "\n 1000:签名验证失败\n 1001:运单对象不得为空\n 1002:发货人ID不得为空\n 1003:发货人信息加载出错" // + "\n 1004:发货人状态不正常\n 1005:订单号不得为空\n 1006:承运商不得为空\n 1007:承运商信息加载出错" // + "\n 1008:承运商没在货运中国平台开户\n 1009:运单子项不得为空\n 1010:车牌号不得为空" // + "\n 1011:车牌号信息加载出错\n 1012:车牌号没在货运中国平台注册\n 1013:该车辆在货运中国平台尚未关联司机帐号"); // return; //} } } /// /// 打印发货明细 /// private void DoPrint() { if (this.textBox1.Text.Trim().Equals("")) { MessageBox.Show("草支垫重量信息不能为空,请输入相应的草支垫重量!"); return; } Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; //发货明细打印必须是同一客户同合同号、发运指示号 string befOrdNo = "";//前运输号 string befDlivDirNo = "";//前运输指示号 ArrayList coils = new ArrayList();//钢卷信息 int coilCount = 0;//钢卷个数 double coilWgtSum = 0;//钢卷重量合计 for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { string[] coilInfo = new string[8]; string ordNoTmp = rs[i].Cells["ORD_NO"].Text; string dlivDirNoTmp = rs[i].Cells["DLIV_DIRNO"].Text; if (!"".Equals(befDlivDirNo) && !"".Equals(befOrdNo)) { if (!befDlivDirNo.Equals(dlivDirNoTmp)) { MessageBox.Show("不同运输指示号下的卷不能生成同一张发货明细,请确认后重新选择!"); return; } /* if (!befOrdNo.Equals(ordNoTmp)) { MessageBox.Show("同发运指示号下的卷,合同号不一样需要分开打印发货明细!"); return; }*/ } befDlivDirNo = dlivDirNoTmp; befOrdNo = ordNoTmp; coilCount++; coilInfo[0] = rs[i].Cells["OLD_SAMPL_NO"].Text;//钢卷号 coilInfo[1] = rs[i].Cells["SPEC_STL_GRD"].Text;//牌号 if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { coilInfo[2] = rs[i].Cells["C_W"].Text;//规格 } else { coilInfo[2] = rs[i].Cells["T_W"].Text;//规格 } coilInfo[3] = rs[i].Cells["TOT_DEC_GRD_DESC"].Text;//等级 coilInfo[4] = rs[i].Cells["MATLQLTY_DEC_GRD_DESC"].Text;//性能 coilInfo[5] = coilInfo[0].Length > 10 ? coilInfo[0].Substring(0, 10) : "";//轧批号 coilInfo[6] = (double.Parse(rs[i].Cells["COIL_WGT"].Text.Trim()) / 1000).ToString();//重量 coilInfo[7] = "";//备注 coilWgtSum += double.Parse(coilInfo[6]); coils.Add(coilInfo); } } //取出明细打印需要的数据 string dlivDirNo = "";//发运指示号 string ordNo = "";//合同号 string dlivTp = "";//运输方式 string shipInnNo = "";//发货清单号 string custNm = "";//客户名称 string ordNm = "";//合同单位 string destPcdDesc = "";//到站 string transCarNo = "";//车号 string prodNm = "";//产品名称 string specAbbsym = "";//标准 string hColorRem = "";//外贸合同钢卷颜色备注 for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { dlivDirNo = rs[i].Cells["DLIV_DIRNO"].Text; ordNo = rs[i].Cells["ORD_NO"].Text; dlivTp = rs[i].Cells["DLIV_TP"].Text; shipInnNo = rs[i].Cells["SHIP_INVNO"].Text; custNm = rs[i].Cells["CUST_NM"].Text; ordNo = rs[i].Cells["ORD_NM"].Text; destPcdDesc = rs[i].Cells["DEST_PCD_DESC"].Text; transCarNo = rs[i].Cells["TRANS_CAR_NO"].Text; prodNm = rs[i].Cells["SM_CFNM"].Text; specAbbsym = rs[i].Cells["SPEC_ABBSYM"].Text; hColorRem = rs[i].Cells["HCOLOUR_REM"].Text; break; } } //导出EXCEL //打印后修改发货状态 print(); this.ultraComboEditor2.SelectedIndex = 2; //打印明细后再次查询 this.DoQuery(); this.textBox3.Text = string.Empty; } /// /// 打印后修改发货状态 /// private void print() { ArrayList list = new ArrayList(); ArrayList listP = new ArrayList(); string[] param = null; string[] paramP = null; string name = string.Empty; string regId = this.UserInfo.GetUserID(); if (this.ultraComboEditor1.Value.ToString().Equals("T")) { name = "火车"; } if (this.ultraComboEditor1.Value.ToString().Equals("C")) { name = "汽车"; } Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { if ("07".Equals(rs[i].Cells["SHIP_PROG_CD"].Text)) { param = new string[38]; param[0] = rs[i].Cells["SHIP_DIRNO"].Text; ;//发货指示号 param[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号 param[2] = rs[i].Cells["TRANS_CAR_NO"].Text;//车辆号 param[3] = rs[i].Cells["GET_ON_PCD"].Text;//装车地点 param[4] = rs[i].Cells["DEST_PCD"].Text;//目的地 param[5] = rs[i].Cells["EXLV_LINE_CD"].Text;//专用线 param[6] = rs[i].Cells["GET_OFF_PCD"].Text;//卸车地点 param[7] = rs[i].Cells["BY_SEA_YN"].Text;//水运区分 param[8] = rs[i].Cells["DEPARTURE_CD"].Text;//出发港 param[9] = rs[i].Cells["ARRIVAL_CD"].Text;//到达港 param[10] = rs[i].Cells["OLD_SAMPL_NO"].Text;//生产钢卷号 param[11] = rs[i].Cells["TOT_DEC_GRD"].Text;//综合判定等级 param[12] = rs[i].Cells["COIL_WGT"].Text;//钢卷重量 param[13] = rs[i].Cells["COIL_OUTDIA"].Text;//钢卷外径 param[14] = rs[i].Cells["SHIP_INVNO"].Text;//发货清单号码 param[15] = rs[i].Cells["CRET_NO"].Text;//品质保证书号 param[16] = rs[i].Cells["TRNF_DTIME"].Text;//发货时间 param[17] = "08";//钢卷公共表中的状态字段 SHIP_PROG_CD param[18] = rs[i].Cells["SPEC_STL_GRD"].Text;//标冷牌号 param[19] = rs[i].Cells["BEF_PROG_CD"].Text;//钢卷公共表中当前状态做前状态使用 param[20] = rs[i].Cells["BEF_PROG_CD_DTIME"].Text;//状态改变时间 param[21] = rs[i].Cells["BEF_PROG_CD_PGM"].Text;//状态改变人 param[22] = rs[i].Cells["ORD_NO"].Text;//合同号 param[23] = rs[i].Cells["ORD_SEQ"].Text;//订单号 param[24] = rs[i].Cells["SHIP_COMP_CD"].Text;//运输公司编码 param[25] = rs[i].Cells["COIL_STAT"].Text;//钢卷状态 param[26] = rs[i].Cells["CUR_PROG_CD"].Text;//当前状态 param[27] = rs[i].Cells["CUR_PROG_CD_PGM"].Text;//当前状态修改人 param[28] = regId;//登录人 param[29] = rs[i].Cells["DLIV_TP"].Text;//火运汽运标志 param[30] = rs[i].Cells["COIL_THK"].Text;//厚度 param[31] = rs[i].Cells["ORD_CD"].Text; param[32] = rs[i].Cells["CUST_NM"].Text;//合同单位 param[33] = rs[i].Cells["ORD_NM"].Text;//收货单位 param[34] = rs[i].Cells["DEST_PCD_DESC"].Text;//到站 param[35] = rs[i].Cells["SHIP_COMP_NM"].Text;//运输公司名称 param[36] = rs[i].Cells["SM_CFNM"].Text;//产品名称 param[37] = this.textBox4.Text; ;//包装重量 list.Add(param); paramP = new string[20]; paramP[0] = rs[i].Cells["ORD_NO"].Text;//合同号 paramP[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号 paramP[2] = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd"); paramP[3] = rs[i].Cells["SHIP_INVNO"].Text; paramP[4] = rs[i].Cells["CUST_NM"].Text; paramP[5] = rs[i].Cells["DEST_PCD_DESC"].Text; paramP[6] = this.UserInfo.GetUserName(); paramP[7] = rs[i].Cells["TRANS_CAR_NO"].Text; paramP[8] = rs[i].Cells["ORD_NM"].Text; paramP[9] = rs[i].Cells["HCOLOUR_REM"].Text; paramP[10] = rs[i].Cells["SM_CFNM"].Text; paramP[11] = rs[i].Cells["SPEC_ABBSYM"].Text; paramP[12] = rs[i].Cells["OLD_SAMPL_NO"].Text.Substring(0, 9); paramP[13] = rs[i].Cells["SPEC_STL_GRD"].Text; if (rs[i].Cells["ORD_NO"].Text.Substring(0, 2) == "57") { paramP[14] = rs[i].Cells["COIL_THK"].Text + "*" + rs[i].Cells["COIL_WTH"].Text; } else if ("TRUE".Equals(rs[i].Cells["CY"].Text.ToUpperInvariant())) { paramP[14] = rs[i].Cells["C_W"].Text; } else { paramP[14] = rs[i].Cells["T_W"].Text; } paramP[15] = rs[i].Cells["COIL_WGT"].Text; paramP[16] = rs[i].Cells["OLD_SAMPL_NO"].Text; paramP[17] = rs[i].Cells["EXTSHAPE_QUALITY"].Text; //paramP[18] = rs[i].Cells["MATLQLTY_DEC_GRD_DESC"].Text; //paramP[19] = ""; paramP[18] = this.textBox1.Text; paramP[19] = this.textBox4.Text; listP.Add(paramP); } else if ("08".Equals(rs[i].Cells["SHIP_PROG_CD"].Text)) { paramP = new string[20]; paramP[0] = rs[i].Cells["ORD_NO"].Text;//合同号 paramP[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号 paramP[2] = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd"); paramP[3] = rs[i].Cells["SHIP_INVNO"].Text; paramP[4] = rs[i].Cells["CUST_NM"].Text; paramP[5] = rs[i].Cells["DEST_PCD_DESC"].Text; paramP[6] = this.UserInfo.GetUserName(); paramP[7] = rs[i].Cells["TRANS_CAR_NO"].Text; paramP[8] = rs[i].Cells["ORD_NM"].Text; paramP[9] = rs[i].Cells["HCOLOUR_REM"].Text; paramP[10] = rs[i].Cells["SM_CFNM"].Text; paramP[11] = rs[i].Cells["SPEC_ABBSYM"].Text; paramP[12] = rs[i].Cells["OLD_SAMPL_NO"].Text.Substring(0, 9); paramP[13] = rs[i].Cells["SPEC_STL_GRD"].Text; if (rs[i].Cells["ORD_NO"].Text.Substring(0, 2) == "57") { paramP[14] = rs[i].Cells["COIL_THK"].Text + "*" + rs[i].Cells["COIL_WTH"].Text; } else if ("TRUE".Equals(rs[i].Cells["CY"].Text.ToUpperInvariant())) { paramP[14] = rs[i].Cells["C_W"].Text; } else { paramP[14] = rs[i].Cells["T_W"].Text; } paramP[15] = rs[i].Cells["COIL_WGT"].Text; paramP[16] = rs[i].Cells["OLD_SAMPL_NO"].Text; paramP[17] = rs[i].Cells["EXTSHAPE_QUALITY"].Text; //paramP[18] = rs[i].Cells["MATLQLTY_DEC_GRD_DESC"].Text; //paramP[18] = ""; paramP[18] =this.textBox1.Text; paramP[19] = this.textBox4.Text; listP.Add(paramP); } } } if (listP.Count > 0 && list.Count > 0) { //出库班次、出库班组、出库人、出库时间、草支垫重量 string trnfShift = this.UserInfo.GetUserOrder(); string trnfGroup = this.UserInfo.GetUserGroup(); string trnfRegId = this.UserInfo.GetUserID(); string trnfDtime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd"); // string czdWgt = "";//this.textBox1.Text.Trim(); string czdWgt = this.textBox1.Text.Trim(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ05.UIJ050010"; ccp.MethodName = "printShippingResultLt"; ccp.ServerParams = new Object[] { trnfShift, trnfGroup, trnfRegId, trnfDtime, czdWgt, list }; this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); //状态修改失败返回 if (0 != ccp.ReturnCode) { MessageBox.Show("系统错误!!!!"); return; } //string printerName = "HP LaserJet P1505"; string printerName = new System.Drawing.Printing.PrintDocument().PrinterSettings.PrinterName; string tmpPrintName = AppDomain.CurrentDomain.BaseDirectory + "\\tmpPrint.xls"; ExportExcel(listP, tmpPrintName,name); this.printExcel(tmpPrintName, printerName); } if (listP.Count > 0 && list.Count <=0) { string printerName = new System.Drawing.Printing.PrintDocument().PrinterSettings.PrinterName; string tmpPrintName = AppDomain.CurrentDomain.BaseDirectory + "\\tmpPrint.xls"; ExportExcel(listP, tmpPrintName,name); this.printExcel(tmpPrintName, printerName); } } /// /// 导出 Excel 文件 /// /// 要导出的数据 /// 操作人 private void ExportExcel(ArrayList list, String strExcelFileName,string name) { if (list == null || list.Count < 1) { return; } string[] param1 = (string[])list[0]; StreamWriter writer = new StreamWriter(strExcelFileName, false, Encoding.UTF8); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine("siy "); writer.WriteLine("siy "); writer.WriteLine("11111 "); writer.WriteLine("steering "); writer.WriteLine("11.8107 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine("13590 "); writer.WriteLine("19200 "); writer.WriteLine("0 "); writer.WriteLine("285 "); writer.WriteLine("False "); writer.WriteLine("False "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 新余钢铁股份有限公司钢卷发货明细单("+name+") "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 合 同 号: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[0] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 发货单号: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[1] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 用户编码: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 发货日: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[2] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 第" + param1[3] + "号 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 用户名称: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[4] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 到站: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[5] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 制表: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[6] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 计划单号: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 车号: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[7] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 收货单位: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[8] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 发货备注: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[9] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 产品名称: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[10] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 标准: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param1[11] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 轧批号 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 钢号 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 规格(厚*宽)mm "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 重量(吨) "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 钢卷号 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 等级 "); writer.WriteLine(" "); ////writer.WriteLine(" "); ////writer.WriteLine(" 性能 "); //writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 草支垫 "); writer.WriteLine(" "); writer.WriteLine(" "); int index = 0; int coilCount = 0; double wgtCount = 0, sumPkgWgt = 0, sumCzdWgt = 0; // sumCzdWgt = double.Parse(param[18]);//草支垫为界面输入整车重量 不需要相加 for (; index < list.Count; index++) { string[] param = (string[])list[index]; double coilWgt = 0; double pkgWgt = 0, czdWgt = 0; try { coilWgt = double.Parse(param[15]) / 1000; pkgWgt = double.Parse(param[19]); czdWgt = double.Parse(param[18]); } catch (Exception ex) { } wgtCount += coilWgt; sumPkgWgt += pkgWgt; sumCzdWgt = czdWgt;//草支垫为界面输入整车重量 不需要相加 coilCount++; writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param[12] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param[13] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param[14] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + coilWgt + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param[16] + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + param[17] + " "); writer.WriteLine(" "); //writer.WriteLine(" "); //writer.WriteLine(" " + param[18] + " "); //writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); } for (; index < 12; index++)//index < 12 { writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); //writer.WriteLine(" "); //writer.WriteLine(" "); //writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); } writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 小计 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + coilCount + "卷 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" " + wgtCount + " "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 包装合计:" + sumPkgWgt + "公斤 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); //writer.WriteLine(" "); //writer.WriteLine(" "); //writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 合计:" + sumCzdWgt + "公斤 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 物流服务评价: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 满意□ "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 一般□ "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 不满意□ "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 原因: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" 收货人签名: "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine("
"); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine("3 "); writer.WriteLine("1 "); writer.WriteLine("1 "); writer.WriteLine(" "); writer.WriteLine(" "); writer.WriteLine("False "); writer.WriteLine("False "); writer.WriteLine(" "); writer.WriteLine("
"); writer.WriteLine("
"); writer.Close(); } private bool printExcel(string fileName, string printerName) { object missing = System.Reflection.Missing.Value; try { if (isExcelInstalled()) { Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbook workbook = excel.Application.Workbooks.Add(fileName); //excel.Visible = true; Microsoft.Office.Interop.Excel._Worksheet ws = (Microsoft.Office.Interop.Excel._Worksheet)workbook.Worksheets["Sheet1"]; ws.PageSetup.Orientation = Microsoft.Office.Interop.Excel.XlPageOrientation.xlLandscape; ws.PageSetup.CenterHorizontally = true;//水平居中 ws.PageSetup.CenterVertically = true; ws.PageSetup.Zoom = false; ws.PageSetup.FitToPagesTall = 1; ws.PageSetup.FitToPagesWide = 1; ws.PrintOut(1, 2, 1, false, printerName, false, false, missing);//"HP LaserJet P1505" workbook.Saved = true; workbook.Close(missing, missing, missing); excel.Quit(); System.Runtime.InteropServices.Marshal.ReleaseComObject(ws); System.Runtime.InteropServices.Marshal.ReleaseComObject(excel); } else { ET.Application et = new ET.Application(); ET._Workbook ewb = et.Workbooks.Add(fileName); //et.Visible = true; ET._Worksheet ews = (ET._Worksheet)ewb.Worksheets["Sheet1"]; ews.PageSetup.Orientation = ET.XlPageOrientation.xlLandscape;//"EPSON LQ-1600KIII" ews.PageSetup.CenterHorizontally = true;//水平居中 ews.PageSetup.CenterVertically = true; ews.PageSetup.Zoom = false; ews.PageSetup.FitToPagesTall = 1; ews.PageSetup.FitToPagesWide = 1; ews.PrintOut(1, 1, 1, false, printerName, false, false, missing, false, 1, 1, 0, 0, false, ET.ETPaperTray.etPrinterDefaultBin, false, ET.ETPaperOrder.etPrinterRepeat); ewb.Saved = true; ewb.Close(missing, missing, missing); et.Quit(); System.Runtime.InteropServices.Marshal.ReleaseComObject(ews); System.Runtime.InteropServices.Marshal.ReleaseComObject(et); } return true; } catch (Exception ex) { MessageBox.Show(ex.ToString()); return false; } } bool isExcelInstalled() { Type type = Type.GetTypeFromProgID("Excel.Application"); return type != null; } //private void DoExport() //{ // Infragistics.Win.UltraWinGrid.RowsCollection rs1 = this.ultraGrid1.Rows; // //发货明细打印必须是同一客户同合同号、发运指示号 // string befOrdNo = "";//前运输号 // string befDlivDirNo = "";//前运输指示号 // string name0 = string.Empty; // if (this.ultraComboEditor1.Value.ToString().Equals("T")) // { // name0 = "火车"; // } // if (this.ultraComboEditor1.Value.ToString().Equals("C")) // { // name0 = "汽车"; // } // for (int i = 0; i < rs1.Count; i++) // { // if ("TRUE".Equals(rs1[i].Cells["CHK"].Text.ToUpperInvariant())) // { // string ordNoTmp = rs1[i].Cells["ORD_NO"].Text; // string dlivDirNoTmp = rs1[i].Cells["DLIV_DIRNO"].Text; // if (!"".Equals(befDlivDirNo) && !"".Equals(befOrdNo)) // { // if (!befDlivDirNo.Equals(dlivDirNoTmp)) // { // MessageBox.Show("不同运输指示号下的卷不能生成同一张发货明细,请确认后重新选择!"); // return; // } // if (!befOrdNo.Equals(ordNoTmp)) // { // MessageBox.Show("同发运指示号下的卷,合同号不一样需要分开打印发货明细!"); // return; // } // } // befDlivDirNo = dlivDirNoTmp; // befOrdNo = ordNoTmp; // } // } // //导出 // ArrayList listP = new ArrayList(); // string[] paramP = null; // string regId = this.UserInfo.GetUserID(); // Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; // for (int i = 0; i < rs.Count; i++) // { // if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) // { // if ("08".Equals(rs[i].Cells["SHIP_PROG_CD"].Text)) // { // paramP = new string[22]; // paramP[0] = rs[i].Cells["ORD_NO"].Text;//合同号 // paramP[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号 // paramP[2] = rs[i].Cells["TRNF_DTIME"].Text.Substring(0, 10); // paramP[3] = rs[i].Cells["SHIP_INVNO"].Text; // paramP[4] = rs[i].Cells["CUST_NM"].Text; // paramP[5] = rs[i].Cells["DEST_PCD_DESC"].Text; // paramP[6] = this.UserInfo.GetUserName(); // paramP[7] = rs[i].Cells["TRANS_CAR_NO"].Text; // paramP[8] = rs[i].Cells["ORD_NM"].Text; // paramP[9] = rs[i].Cells["HCOLOUR_REM"].Text; // paramP[10] = rs[i].Cells["SM_CFNM"].Text; // paramP[11] = rs[i].Cells["SPEC_ABBSYM"].Text; // paramP[12] = rs[i].Cells["OLD_SAMPL_NO"].Text.Substring(0, 9); // paramP[13] = rs[i].Cells["SPEC_STL_GRD"].Text; // paramP[14] = rs[i].Cells["T_W"].Text; // paramP[15] = rs[i].Cells["COIL_WGT"].Text; // paramP[16] = rs[i].Cells["OLD_SAMPL_NO"].Text; // paramP[17] = rs[i].Cells["TOT_DEC_GRD_DESC"].Text; // paramP[18] = rs[i].Cells["MATLQLTY_DEC_GRD_DESC"].Text; // paramP[19] = ""; // paramP[20] = rs[i].Cells["CZD_WGT"].Text; // paramP[21] = rs[i].Cells["PKG_WGT"].Text; // listP.Add(paramP); // } // else // { // MessageBox.Show("只能导出已经结束的发运明细!"); // return; // } // } // } // if (listP.Count > 0) // { // if (this.saveFileDialog1.ShowDialog(this) == DialogResult.OK) // { // string fileName = this.saveFileDialog1.FileName; // ExportExcel(listP, fileName, name0); // System.Diagnostics.Process.Start(fileName); // } // } //} private void DoExport() { try { if (this.saveFileDialog1.ShowDialog(this) == DialogResult.OK) { string fileName = this.saveFileDialog1.FileName; ultraGridExcelExporter1.Export(ultraGrid1, fileName); System.Diagnostics.Process.Start(fileName); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } private void ultraCheckEditor1_CheckedChanged(object sender, EventArgs e) { try { Infragistics.Win.UltraWinGrid.UltraGridBase tmpGrid = this.ultraGrid1; foreach (Infragistics.Win.UltraWinGrid.UltraGridRow row in this.ultraGrid1.Rows) { if (!row.IsFilteredOut) { row.Cells["CHK"].Value = this.ultraCheckEditor1.Checked.ToString().ToUpper(); row.Update(); } } } catch (System.Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } } private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { try { string curColumnName = e.Cell.Column.Key; if (curColumnName == "CHK" || curColumnName == "CY") { //e.Cell.Row.Update(); if (e.Cell.Text.ToUpper() == "TRUE") { string vDLIV_DIRNO = e.Cell.Row.Cells["DLIV_DIRNO"].Text; Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; for (int i = 0; i < rs.Count; i++) { if (rs[i].Cells["DLIV_DIRNO"].Text == vDLIV_DIRNO) { rs[i].Cells[curColumnName].Value = true; rs[i].Appearance.ForeColor = System.Drawing.Color.Blue; //---------- if (i.Equals(rs.Count - 1) && 1==this.ultraComboEditor2.SelectedIndex) { this.textBox3.Text = rs[i].Cells["DLIV_DIRNO"].Value.ToString(); } } else { rs[i].Cells[curColumnName].Value = false; rs[i].Appearance.ForeColor = System.Drawing.Color.Black; } } } //else //{ // string vDLIV_DIRNO = e.Cell.Row.Cells["DLIV_DIRNO"].Text; // Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; // for (int i = 0; i < rs.Count; i++) // { // if (rs[i].Cells["DLIV_DIRNO"].Text == vDLIV_DIRNO) // { // rs[i].Cells[curColumnName].Value = false; // rs[i].Appearance.ForeColor = System.Drawing.Color.Black; // } // } //} } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } } private void button1_Click(object sender, EventArgs e) { DoExport(); } private void button1_Click_1(object sender, EventArgs e) { Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { string coilWgt = rs[i].Cells["COIL_WGT"].Text; string transCarNo = rs[i].Cells["TRANS_CAR_NO"].Text; if (coilWgt.Equals("")) { MessageBox.Show("第" + (i + 1) + "行卷重数据为空,请核对后再点击保存!"); return; } if (transCarNo.Equals("")) { MessageBox.Show("第" + (i + 1) + "行车辆号为空,请核对后再点击保存!"); return; } } } ArrayList list = new ArrayList(); string[] param = null; string regId = this.UserInfo.GetUserID(); for (int i = 0; i < rs.Count; i++) { if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant())) { if ("08".Equals(rs[i].Cells["SHIP_PROG_CD"].Text)) { param = new string[1]; param[0] = rs[i].Cells["DLIV_DIRNO"].Text; ;//发货指示号 list.Add(param); } } } if (list.Count > 0) { //直接在C#中调用后天Java方法,向物流跟踪平台发送明细数据 CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ05.UIJ050010"; ccp.MethodName = "resend"; ccp.ServerParams = new Object[] { list,"" }; this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); } } private void ultraGrid1_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e) { } //判断包装等级 返回包装重量 private int packing_tool(string Weight2, string PackingGrade) { int PackingWeight = 0; int Weight = int.Parse(Weight2); if (Weight >= 2000 && Weight < 12000) { if (PackingGrade.Equals("出口包装2") || PackingGrade.Equals("出口包装")) { PackingWeight = 60; } else if (PackingGrade.Equals("精致包装")) { PackingWeight = 50; } else if (PackingGrade.Equals("普通包装")) { PackingWeight = 40; } else if (PackingGrade.Equals("简易包装")) { PackingWeight = 30; } else if (PackingGrade.Equals("不包装") || "".Equals(PackingGrade)) { PackingWeight = 0; } else { MessageBox.Show("没有此包装等级"); } } else if (Weight >= 12000 && Weight <= 26000) { if (PackingGrade.Equals("出口包装2") || PackingGrade.Equals("出口包装")) { PackingWeight = 80; } else if (PackingGrade.Equals("精致包装")) { PackingWeight = 60; } else if (PackingGrade.Equals("普通包装")) { PackingWeight = 50; } else if (PackingGrade.Equals("简易包装")) { PackingWeight = 40; } else if (PackingGrade.Equals("不包装") || "".Equals(PackingGrade)) { PackingWeight = 0; } else { MessageBox.Show("没有此包装等级"); } } else { MessageBox.Show("重量超出指定范围"); } return PackingWeight; } //判断草垫重量 private int mat_tool(string Weight2, int volume) { int MatWeight = 0; int Weight = int.Parse(Weight2); if (Weight < 20000) { MatWeight = (volume + 1) * 12; } else if (Weight >= 20000) { MatWeight = volume * 4 * 12; } else { MessageBox.Show("重量不符合规范"); } return MatWeight; } } }