using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Collections; using CoreFS.CA06; using System.IO; using Microsoft.Office.Interop.Excel; using ET; namespace Core.LZMes.Client.UIJ { public partial class UIJ030070 : FrmBase { public UIJ030070() { InitializeComponent(); } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": this.DoQuery(); break; case "Save": this.DoSave(); break; case "Export": this.DoExport(); break; case "Receive": this.DoReceive(); break; case "Exit": this.Close(); break; } } /// /// 查询发货实绩 /// private void DoQuery() { string dlivDirNo = this.textBox3.Text; 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("0")) { trnfDTime = ""; coilProgCd = "YFA"; } else { coilProgCd = "YFF"; if (ultraDateTimeEditor1.Value == null) { MessageBox.Show("需要选择出库时间,否则数据量过大,不便于查找!"); return; } } } else { MessageBox.Show("状态区分必须选择,否则导致数据量过大!"); return; } this.dataSet1.Tables[0].Clear(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ03.UIJ030070"; ccp.MethodName = "queryShippingResult"; ccp.ServerParams = new Object[] { dlivDirNo, trnfDTime, shipProgCd }; 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; } } /// /// /// 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; } } 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 ("0".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["COIL_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] = "01";//钢卷公共表中的状态字段 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] = rs[i].Cells["PKG_WGT"].Text;//产品名称 // param[31] = rs[i].Cells["COIL_INDIA"].Text;//钢卷内径 list.Add(param); //检查接口表是否有数据 //CoreClientParam ccp = new CoreClientParam(); //ccp.ServerName = "UIJ.UIJ03.UIJ030070"; //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; //} } } } if (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 = "25";//草支垫重量改为固定25KG//this.textBox1.Text.Trim(); string czdWgt = ""; CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ03.UIJ030070"; ccp.MethodName = "saveYtgResult"; ccp.ServerParams = new Object[] { trnfShift, trnfGroup, trnfRegId, trnfDtime,czdWgt, list }; this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); this.ultraComboEditor2.SelectedIndex = 1; } //生成发货实绩后再次查询 this.DoQuery(); } 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 DoReceive() { Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows; 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 ("3".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["COIL_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] = "4";//钢卷公共表中的状态字段 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] = rs[i].Cells["PKG_WGT"].Text;//产品名称 list.Add(param); } } } if (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"); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ03.UIJ030070"; ccp.MethodName = "saveCoilIn"; ccp.ServerParams = new Object[] { trnfShift, trnfGroup, trnfRegId, trnfDtime, list }; this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); this.ultraComboEditor2.SelectedIndex = 1; } //生成发货实绩后再次查询 this.DoQuery(); } /// /// 打印后修改发货状态 /// private void print() { ArrayList list = new ArrayList(); ArrayList listP = new ArrayList(); string[] param = null; string[] paramP = null; string regId = this.UserInfo.GetUserID(); string name = string.Empty; 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["COIL_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] = rs[i].Cells["PKG_WGT"].Text;//包装 list.Add(param); paramP = new string[22]; 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; 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] = "25";//this.textBox1.Text.Trim(); paramP[20] = ""; paramP[21] = rs[i].Cells["PKG_WGT"].Text; listP.Add(paramP); } else 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] = 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; 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] = ""; paramP[21] = rs[i].Cells["PKG_WGT"].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 = ""; CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIJ.UIJ03.UIJ030070"; ccp.MethodName = "printShippingResult"; 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); } else 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); } } private void UIJ030070_Load(object sender, EventArgs e) { this.ultraDateTimeEditor1.Value = null; this.ultraComboEditor2.SelectedIndex = 0; this.DoQuery(); } /// /// 导出 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; 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[21]); czdWgt = double.Parse(param[20]); } 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++) { 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.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.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; } #region 根据发运指示号选择 private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { try { if (e.Cell.Column.Key == "CHK") { e.Cell.Row.Update(); if (e.Cell.Value.ToString().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["CHK"].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["CHK"].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["CHK"].Value = false; // rs[i].Appearance.ForeColor = System.Drawing.Color.Black; // } // } //} } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } } #endregion private void button1_Click(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); } } } }