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);
}
}
}
}