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 PrintSolution;
using Infragistics.Win.UltraWinGrid;
namespace Core.LZMes.Client.UIJ
{
public partial class UIJ060010 : FrmBase
{
#region
public UIJ060010()
{
InitializeComponent();
}
public override void ToolBar_Click(object sender, string ToolbarKey)
{
switch (ToolbarKey)
{
case "Query":
this.DoQuery();
break;
case "Save":
this.DoSave();
break;
case "Comfirm":
this.DoComfirm();
break;
case "Print":
DoPrint();
break;
case "Exit":
this.Close();
break;
}
}
#endregion
private void UIJ060010_Load(object sender, EventArgs e)
{
initParam();
this.tabControl1.SelectedIndex = 1;
}
private void initParam()
{
try
{
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryTransUnits";
ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal);
ArrayList transList = (ArrayList)ccp.ReturnObject;
int listSize = transList.Count;
Infragistics.Win.ValueListItem[] valueListItems = new Infragistics.Win.ValueListItem[listSize];
for (int i = 0; i < listSize; i++)
{
Infragistics.Win.ValueListItem item = new Infragistics.Win.ValueListItem();
Hashtable ht = (Hashtable)transList[i];
item.DataValue = ht["VALUE"].ToString();
item.DisplayText = ht["LABEL"].ToString(); ;
valueListItems[i] = item;
}
this.ultraComboEditor1.Items.AddRange(valueListItems);
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
}
///
/// 查询装车计划
///
private void DoQuery()
{
string shipProgCd = "03";//发货指示状态
string fromDate = this.ultraDateTimeEditor1.Value != null ? ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd") : "";
//this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
string toDate = this.ultraDateTimeEditor2.Value != null ? ultraDateTimeEditor2.DateTime.ToString("yyyyMMdd") : "";
//this.ultraDateTimeEditor2.DateTime.ToString("yyyyMMdd");
string shipDirNo = this.textBox1.Text.Trim();//发货指示号
string curProgCd = "DFB";//物料进度
string laneTp = "";//火车入库道次
string entranceSeq = "";//装车次数
string shipCompNm = 0 > this.ultraComboEditor1.SelectedIndex ? "" : this.ultraComboEditor1.SelectedItem.DataValue.ToString();//运输单位
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryTransPlan";
DataRowCollection drs = null;
string dlivTp = "";//运输方式
switch (this.tabControl1.SelectedIndex)
{
case 0:
dlivTp = "T";
this.dataSet1.Tables[0].Clear();
ccp.SourceDataTable = this.dataSet1.Tables[0];
ccp.ServerParams = new Object[] { shipProgCd, fromDate, toDate, shipDirNo, curProgCd, shipCompNm, dlivTp, laneTp, entranceSeq };
this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal);
drs = dataSet1.Tables[0].Rows;
for (int i = 0; i < drs.Count; i++)
{
ultraGrid1.Rows[i].Cells[0].Value = false;
ultraGrid1.Rows[i].Cells[0].Column.CellActivation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
}
dataSet5.Tables[0].Clear();
dataSet3.Tables[0].Clear();
break;
case 1:
dlivTp = "C";
this.dataSet2.Tables[0].Clear();
ccp.SourceDataTable = this.dataSet2.Tables[0];
ccp.ServerParams = new Object[] { shipProgCd, fromDate, toDate, shipDirNo, curProgCd, shipCompNm, dlivTp, laneTp, entranceSeq };
this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal);
drs = dataSet2.Tables[0].Rows;
for (int i = 0; i < drs.Count; i++)
{
ultraGrid4.Rows[i].Cells[0].Value = false;
ultraGrid4.Rows[i].Cells[0].Column.CellActivation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
}
dataSet4.Tables[0].Clear();
dataSet6.Tables[0].Clear();
break;
default:
return;
}
}
///
/// 排车
///
private void DoSave()
{
Infragistics.Win.UltraWinGrid.RowsCollection rs = null;
ArrayList list = new ArrayList();
string[] param = null;
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
switch (this.tabControl1.SelectedIndex)
{
case 0://火车
label10.Focus();
ultraGrid1.Update();
rs = this.ultraGrid1.Rows;
for (int i = 0; i < rs.Count; i++)
{
if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
param = new string[6];
param[0] = rs[i].Cells["ALLOC_SEQ"].Value.ToString().Trim();
param[1] = rs[i].Cells["TRANS_CAR_NO"].Value.ToString().Trim();
param[2] = rs[i].Cells["LANE_TP"].Value.ToString().Trim();
param[3] = rs[i].Cells["ENTERANCE_SEQ"].Value.ToString().Trim();
param[4] = rs[i].Cells["DLIV_DIRNO"].Value.ToString().Trim();
param[5] = rs[i].Cells["SHIP_DIRNO"].Value.ToString().Trim();
list.Add(param);
if (param[1] == null || param[1].Equals(""))
{
MessageBox.Show("车辆号不能为空,请确认后重新操作!");
return;
}
if (param[2] == null || param[2].Equals(""))
{
MessageBox.Show("入库道次不能为空,请确认后重新操作!");
return;
}
if (param[3] == null || param[3].Equals(""))
{
MessageBox.Show("装车次数不能为空,请确认后重新操作!");
return;
}
}
}
ccp.MethodName = "saveSHIPTrain";
ccp.ServerParams = new Object[] { list };
this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
for (int i = 0; i < rs.Count; i++)
{
if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
//设置单元格禁用
rs[i].Cells["CHK"].Column.CellActivation = Infragistics.Win.UltraWinGrid.Activation.Disabled;
}
}
queryDlivDirCoil("T");
break;
case 1://汽车
label13.Focus();
ultraGrid4.Update();
rs = this.ultraGrid4.Rows;
for (int i = 0; i < rs.Count; i++)
{
if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
param = new string[4];
param[0] = rs[i].Cells["ALLOC_SEQ"].Value.ToString().Trim();
param[1] = rs[i].Cells["TRANS_CAR_NO"].Value.ToString().Trim();
param[2] = rs[i].Cells["DLIV_DIRNO"].Value.ToString().Trim();
param[3] = rs[i].Cells["SHIP_DIRNO"].Value.ToString().Trim();
list.Add(param);
if (param[1] == null || param[1].Equals(""))//param[0] == null || param[0].Equals("") ||
{
MessageBox.Show("车辆号不能为空,请确认后重新操作!");
return;
}
}
}
ccp.MethodName = "saveSHIPDIRCAR";
ccp.ServerParams = new Object[] { list };
this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
for (int i = 0; i < rs.Count; i++)
{
if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
//设置单元格禁用
rs[i].Cells["CHK"].Column.CellActivation = Infragistics.Win.UltraWinGrid.Activation.Disabled;
}
}
queryDlivDirCoil("C");
break;
default:
return;
}
}
///
/// 确认装车操作
///
private void DoComfirm()
{
if (DialogResult.Yes != MessageBox.Show("确认后不能进行排车操作,是否排车完毕?", "提示", MessageBoxButtons.YesNo))
{
return;
}
//用户名
string regId = this.UserInfo.GetUserID();
//超重是否继续装车标识
bool top_wgt = false;
//超数车辆数量
int num_car = 0;
Infragistics.Win.UltraWinGrid.RowsCollection rs = null;
ArrayList list = new ArrayList();
string[] param = null;
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
switch (this.tabControl1.SelectedIndex)
{
case 0:
rs = this.ultraGrid2.Rows;
for (int i = 0; i < rs.Count; i++)
{
if (!"TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
MessageBox.Show("第" + (i + 1) + "行的选择项没有选择,作为同一批次的车不能出现为空的现象!");
return;
}
param = new string[8];
param[0] = rs[i].Cells["ALLOC_SEQ"].Text.Trim();//排车顺序号
param[1] = rs[i].Cells["TRANS_CAR_NO"].Text.Trim();//车厢号
param[2] = rs[i].Cells["DLIV_DIRNO"].Text.Trim();//运输号
param[3] = rs[i].Cells["SHIP_DIRNO"].Text.Trim();//发货指示号
param[4] = rs[i].Cells["OLD_SAMPL_NO"].Text.Trim();//批次号
param[5] = rs[i].Cells["COIL_NO"].Text.Trim();//钢卷号
param[6] = rs[i].Cells["ACT_WGT"].Text.Trim();//钢卷重量
param[7] = rs[i].Cells["CUR_LOAD_LOC"].Text.Trim();//垛位
list.Add(param);
}
ccp.MethodName = "saveDLIVDIRCAR";
ccp.ServerParams = new Object[] { regId, UserInfo.GetUserOrder(), UserInfo.GetUserGroup(), list };
this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
break;
case 1:
rs = this.ultraGrid6.Rows;
for (int i = 0; i < rs.Count; i++)
{
if (!"TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
MessageBox.Show("第" + (i + 1) + "行的选择项没有选择,作为同一批次的车不能出现为空的现象!");
return;
}
param = new string[8];
param[0] = rs[i].Cells["ALLOC_SEQ"].Text.Trim();//排车顺序号
param[1] = rs[i].Cells["TRANS_CAR_NO"].Text.Trim();//车厢号
param[2] = rs[i].Cells["DLIV_DIRNO"].Text.Trim();//运输号
param[3] = rs[i].Cells["SHIP_DIRNO"].Text.Trim();//发货指示号
param[4] = rs[i].Cells["OLD_SAMPL_NO"].Text.Trim();//批次号
param[5] = rs[i].Cells["COIL_NO"].Text.Trim();//钢卷号
param[6] = rs[i].Cells["ACT_WGT"].Text.Trim();//钢卷重量
param[7] = rs[i].Cells["CUR_LOAD_LOC"].Text.Trim();//垛位
list.Add(param);
}
ccp.MethodName = "saveDLIVDIRCAR";
ccp.ServerParams = new Object[] { regId, UserInfo.GetUserOrder(), UserInfo.GetUserGroup(), list };
this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
break;
default:
return;
}
this.DoQuery();
}
//汽车待装车计划
private void label13_Click(object sender, EventArgs e)
{
string shipProgCd = "04";
string fromDate = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
string toDate = this.ultraDateTimeEditor2.DateTime.ToString("yyyyMMdd");
string shipDirNo = this.textBox1.Text.Trim();
string curProgCd = "DFB";
string laneTp = "";
string entranceSeq = "";
string shipCompNm = 0 > this.ultraComboEditor1.SelectedIndex ? "" : this.ultraComboEditor1.SelectedItem.DataValue.ToString();
string dlivTp = "C";
this.dataSet2.Tables[0].Clear();
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryTransPlan";
ccp.SourceDataTable = this.dataSet2.Tables[0];
ccp.ServerParams = new Object[] { shipProgCd, fromDate, toDate, shipDirNo, curProgCd, shipCompNm, dlivTp, laneTp, entranceSeq };
this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal);
DataRowCollection drs = dataSet2.Tables[0].Rows;
for (int i = 0; i < drs.Count; i++)
{
ultraGrid4.Rows[i].Cells[0].Value = true;
ultraGrid4.Rows[i].Cells[0].Column.CellActivation = Infragistics.Win.UltraWinGrid.Activation.Disabled;
}
queryDlivDirCoil(dlivTp);
}
///
/// 查询待装车钢卷 queryShipDir
///
public void queryDlivDirCoil(string dlivTp)
{
if ("T".Equals(dlivTp.ToUpperInvariant()))
{
this.dataSet3.Tables[0].Clear();
CoreClientParam ccp4 = new CoreClientParam();
ccp4.ServerName = "UIJ.UIJ06.UIJ060010";
ccp4.MethodName = "queryShipDir";
ccp4.SourceDataTable = this.dataSet3.Tables[0];
ccp4.ServerParams = new Object[] { dlivTp };
this.ExecuteQueryToDataTable(ccp4, CoreInvokeType.Internal);
DataRowCollection drs = dataSet3.Tables[0].Rows;
for (int i = 0; i < drs.Count; i++)
{
ultraGrid2.Rows[i].Cells[0].Value = false;
}
}
else
{
this.dataSet4.Tables[0].Clear();
CoreClientParam ccp4 = new CoreClientParam();
ccp4.ServerName = "UIJ.UIJ06.UIJ060010";
ccp4.MethodName = "queryShipDir";
ccp4.SourceDataTable = this.dataSet4.Tables[0];
ccp4.ServerParams = new Object[] { dlivTp };
this.ExecuteQueryToDataTable(ccp4, CoreInvokeType.Internal);
DataRowCollection drs = dataSet4.Tables[0].Rows;
for (int i = 0; i < drs.Count; i++)
{
ultraGrid6.Rows[i].Cells[0].Value = false;
}
}
}
///
/// 查询下达汽车排车计划时排车计划对应的钢卷信息 queryPlanCoil
///
///
///
private void ultraGrid6_DoubleClickRow(object sender, Infragistics.Win.UltraWinGrid.DoubleClickRowEventArgs e)
{
Infragistics.Win.UltraWinGrid.UltraGridRow uRow = this.ultraGrid6.ActiveRow;
string dlivNo = uRow.Cells["DLIV_DIRNO"].Text.ToString().Trim();
this.dataSet6.Tables[0].Clear();
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryPlanCoil";
ccp.SourceDataTable = this.dataSet6.Tables[0];
ccp.ServerParams = new Object[] { dlivNo };
this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal);
}
///
/// 取消火车待装车指示
///
///
///
private void label7_Click(object sender, EventArgs e)
{
Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid2.Rows;
ArrayList list = new ArrayList();
string[] param = null;
for (int i = 0; i < rs.Count; i++)
{
if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
param = new string[2];
param[0] = rs[i].Cells["DLIV_DIRNO"].Value.ToString().Trim();
param[1] = rs[i].Cells["SHIP_DIRNO"].Value.ToString().Trim();
bool flag = false;
//去除重复的发运指示号
foreach (string[] tmp in list)
{
if (param[0].Equals(tmp[0]) && param[1].Equals(tmp[1]))
{
flag = true;
break;
}
}
if (!flag)
{
list.Add(param);
}
}
}
if (DialogResult.Yes == MessageBox.Show("是否确认同一运输指示号(计划号)下的钢卷全部选择上?", "提示", MessageBoxButtons.YesNo))
{
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "returnSHIPDIRCAR";
ccp.ServerParams = new Object[] { list };
this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
dataSet3.Tables[0].Clear();
dataSet5.Tables[0].Clear();
this.DoQuery();
}
}
///
/// 取消汽车待装车指示
///
///
///
private void label15_Click(object sender, EventArgs e)
{
Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid6.Rows;
ArrayList list = new ArrayList();
string[] param = null;
for (int i = 0; i < rs.Count; i++)
{
if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
{
param = new string[2];
param[0] = rs[i].Cells["DLIV_DIRNO"].Value.ToString().Trim();
param[1] = rs[i].Cells["SHIP_DIRNO"].Value.ToString().Trim();
bool flag = false;
//去除重复的发运指示号
foreach (string[] tmp in list)
{
if (param[0].Equals(tmp[0]) && param[1].Equals(tmp[1]))
{
flag = true;
break;
}
}
if (!flag)
{
list.Add(param);
}
}
}
if (DialogResult.Yes == MessageBox.Show("是否确认同一运输指示号(计划号)下的钢卷全部选择上?", "提示", MessageBoxButtons.YesNo))
{
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "returnSHIPDIRCAR";
ccp.ServerParams = new Object[] { list };
this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
dataSet4.Tables[0].Clear();
dataSet6.Tables[0].Clear();
this.DoQuery();
}
}
///
/// 火车待装车计划
///
///
///
private void label10_Click(object sender, EventArgs e)
{
if (this.ultraComboEditor2.SelectedIndex < 0)
{
MessageBox.Show("火车入库道次不能为空,请选择相应的入库道次!");
return;
}
if ("".Equals(this.textBox2.Text.Trim()))
{
MessageBox.Show("装车次数不能为空,请输入相应的装车次数信息!");
return;
}
string shipProgCd = "04";
string fromDate = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
string toDate = this.ultraDateTimeEditor2.DateTime.ToString("yyyyMMdd");
string shipDirNo = this.textBox1.Text.Trim();
string curProgCd = "DFB";
string laneTp = this.ultraComboEditor2.Value.ToString();
string entranceSeq = this.textBox2.Text.Trim();
string shipCompNm = 0 > this.ultraComboEditor1.SelectedIndex ? "" : this.ultraComboEditor1.SelectedItem.DataValue.ToString();
string dlivTp = "T";
this.dataSet1.Tables[0].Clear();
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryTransPlan";
ccp.SourceDataTable = this.dataSet1.Tables[0];
ccp.ServerParams = new Object[] { shipProgCd, fromDate, toDate, shipDirNo, curProgCd, shipCompNm, dlivTp, laneTp, entranceSeq };
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 = true;
ultraGrid1.Rows[i].Cells[0].Column.CellActivation = Infragistics.Win.UltraWinGrid.Activation.Disabled;
}
queryDlivDirCoil(dlivTp);
}
///
/// 查询下达火车排车计划时排车计划对应的钢卷信息
///
///
///
private void ultraGrid2_DoubleClickRow(object sender, Infragistics.Win.UltraWinGrid.DoubleClickRowEventArgs e)
{
Infragistics.Win.UltraWinGrid.UltraGridRow uRow = this.ultraGrid2.ActiveRow;
string dlivNo = uRow.Cells["DLIV_DIRNO"].Text.ToString().Trim();
this.dataSet5.Tables[0].Clear();
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryPlanCoil";
ccp.SourceDataTable = this.dataSet5.Tables[0];
ccp.ServerParams = new Object[] { dlivNo };
this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal);
}
///
/// 打印产品调运单
///
private void DoPrint()
{
switch (this.tabControl1.SelectedIndex)
{
case 0:
foreach (Infragistics.Win.UltraWinGrid.UltraGridRow uRow in this.ultraGrid1.Rows)
{
if (Convert.ToBoolean(uRow.Cells["CHK"].Value))
{
try
{
ArrayList param = new ArrayList();
param.Add(uRow.Cells["TRANS_CAR_NO"].Value.ToString());//车辆号
string dlivDirNo = uRow.Cells["DLIV_DIRNO"].Text.ToString().Trim();
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryTransCoils";
ccp.ServerParams = new Object[] { dlivDirNo };
ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal);
ArrayList coils = (ArrayList)ccp.ReturnObject;
param.Add(coils.Count);//钢卷数
double sumWeight = 0;
foreach (object obj in coils)
{
Hashtable ht = (Hashtable)obj;
sumWeight += Convert.ToDouble(((Hashtable)ht["ACT_WGT"])["value"].ToString().Trim());
}
param.Add(sumWeight / 1000);//钢卷总重量
for (int i = 0; i < 10; i++)
{
if (i < coils.Count)
{
Hashtable ht = (Hashtable)coils[i];
param.Add(ht["COIL_NO"].ToString());//卷号
param.Add(ht["SPEC_STL_GRD"].ToString());//牌号
param.Add(ht["ORD_SIZE"].ToString());//订单规格
param.Add(((Hashtable)ht["ACT_WGT"])["value"].ToString().Trim());//重量
param.Add(ht["CUR_LOAD_LOC"].ToString());//堆放位置
}
else
{
param.Add("");
param.Add("");
param.Add("");
param.Add("");
param.Add("");
}
}
ExcelPrinter ePrinter = new ExcelPrinter("trans.xml", param);
ePrinter.PageSetup.IsCustom = true;
ePrinter.Orientation = 1;//横向打印
ePrinter.printExcel();
}
catch (Exception ex)
{
MessageBox.Show("打印失败,请关闭程序后重新操作!");
return;
}
}
}
break;
case 1:
foreach (Infragistics.Win.UltraWinGrid.UltraGridRow uRow in this.ultraGrid4.Rows)
{
if (Convert.ToBoolean(uRow.Cells["CHK"].Value))
{
try
{
ArrayList param = new ArrayList();
param.Add(uRow.Cells["TRANS_CAR_NO"].Value.ToString());//车辆号
string dlivDirNo = uRow.Cells["DLIV_DIRNO"].Text.ToString().Trim();
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "UIJ.UIJ06.UIJ060010";
ccp.MethodName = "queryTransCoils";
ccp.ServerParams = new Object[] { dlivDirNo };
ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal);
ArrayList coils = (ArrayList)ccp.ReturnObject;
param.Add(coils.Count);//钢卷数
double sumWeight = 0;
foreach (object obj in coils)
{
Hashtable ht = (Hashtable)obj;
sumWeight += Convert.ToDouble(((Hashtable)ht["ACT_WGT"])["value"].ToString().Trim());
}
param.Add(sumWeight / 1000);//钢卷总重量
for (int i = 0; i < 10; i++)
{
if (i < coils.Count)
{
Hashtable ht = (Hashtable)coils[i];
param.Add(ht["COIL_NO"].ToString());//卷号
param.Add(ht["SPEC_STL_GRD"].ToString());//牌号
param.Add(ht["ORD_SIZE"].ToString());//订单规格
param.Add(((Hashtable)ht["ACT_WGT"])["value"].ToString().Trim());//重量
param.Add(ht["CUR_LOAD_LOC"].ToString());//堆放位置
}
else
{
param.Add("");
param.Add("");
param.Add("");
param.Add("");
param.Add("");
}
}
ExcelPrinter ePrinter = new ExcelPrinter("trans.xml", param);
ePrinter.PageSetup.IsCustom = true;
ePrinter.Orientation = 1;//横向打印
ePrinter.printExcel();
}
catch (Exception ex)
{
MessageBox.Show("打印失败,请关闭程序后重新操作!");
return;
}
}
}
break;
default:
return;
}
}
private void label3_Click(object sender, EventArgs e)
{
ArrayList coils = new ArrayList();
string dlivDirNo = string.Empty;
string ordNo = string.Empty;
string ordSeq = string.Empty;
ultraGrid6.UpdateData();
Infragistics.Win.UltraWinGrid.RowsCollection rs = ultraGrid6.Rows;
for (int i = 0; i < rs.Count; i++)
{
if (Convert.ToBoolean(rs[i].Cells["CHK"].Value))
{
if (string.IsNullOrEmpty(ordNo))
{
ordNo = rs[i].Cells["ORD_NO"].Value.ToString();
ordSeq = rs[i].Cells["ORD_SEQ"].Value.ToString();
}
if (string.IsNullOrEmpty(dlivDirNo) || rs[i].Cells["DLIV_DIRNO"].Value.ToString().Equals(dlivDirNo))
{
coils.Add(rs[i].Cells["COIL_NO"].Value.ToString());
dlivDirNo = rs[i].Cells["DLIV_DIRNO"].Value.ToString();
}
else
{
MessageBox.Show("只能对同一发运计划进行换卷!");
return;
}
}
}
if (coils.Count == 0)
{
MessageBox.Show("请选择需要替换的钢卷!");
return;
}
}
#region 根据车辆号选择
private void ultraGrid6_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.ultraGrid6.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;
}
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.ultraGrid6.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 ultraGrid2_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.ultraGrid2.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;
}
}
}
else
{
string vDLIV_DIRNO = e.Cell.Row.Cells["DLIV_DIRNO"].Text;
Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid2.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());
}
}
}
}