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 CoreFS.CA06;
using Core.Mes.Client.Comm.Control;
using Infragistics.Win.UltraWinGrid;
namespace Core.StlMes.Client.PlnSaleOrd
{
public partial class ComMscPilneCtrl : UserControl
{
///
/// 质量设计
///
private string desginKey = "";
///
/// 合同行pk
///
private string ordLnPk = "";
///
/// 交货行pk
///
private string ordLnDivPk = "";
///
/// 选择工艺号
///
private string cheCraftNo = "";
///
/// 工艺序号
///
private string cheCraftSeq = "";
///
/// 工艺负责人
///
private string cheCraftName = "";
///
/// 制程
///
private string cheMscPline = "";
///
/// 制程钢种
///
private string gradeNameAll = "";
///
/// 合同来源
///
private string orderSource = "";
private ComMscPilneBLL mscPilneBLL;
public ComMscPilneCtrl()
{
InitializeComponent();
PlanComm.setGridActivation(this.ultraGridMscPline.DisplayLayout.Bands[0], "CHC");
}
public void ComBLL(OpeBase ob)
{
mscPilneBLL = new ComMscPilneBLL(ob);
}
///
/// 查询制程
///
public void DoQuery()
{
DataTable dt = new DataTable();
if (orderSource.Equals("备料需求") || ordLnPk.StartsWith("ZZBY"))
{
DataTable ds = mscPilneBLL.QueryPk(ordLnDivPk);
dt = mscPilneBLL.Query(ds.Rows[0]["ORD_LN_PK"].ToString2());
}
else
{
dt = mscPilneBLL.Query(ordLnPk);
}
GridHelper.CopyDataToDatatable(dt, this.dataTable1, true);
if (!cheMscPline.Equals("") && !cheCraftSeq.Equals("") && ultraGridMscPline.Rows.Count > 0)
{
foreach (UltraGridRow uRow in this.ultraGridMscPline.Rows)
{
if (uRow.Cells["MSC_PLINE"].Value.ToString().Equals(cheMscPline)
&& uRow.Cells["CRAFT_SEQ"].Value.ToString().Equals(cheCraftSeq))
{
uRow.Cells["CHC"].Value = true;
desginKey = uRow.Cells["DESGIN_KEY"].Value.ToString();
cheCraftNo = uRow.Cells["CRAFT_NO"].Value.ToString();
cheCraftName = uRow.Cells["CRAFT_NAME"].Value.ToString();
gradeNameAll = "";
foreach (UltraGridRow cRow in ultraGridGrade.Rows)
{
gradeNameAll += cRow.Cells["GRADENAME"].Value.ToString() + ",";
}
if (gradeNameAll.Contains(','))
{
int num = gradeNameAll.LastIndexOf(',');
gradeNameAll = gradeNameAll.Substring(0, num);
}
ultraGridMscPline.ActiveRow = uRow;
}
}
}
}
///
/// 查询制程信息
///
public void DoQueryInfo(string desginKey, string mscPline)
{
DataTable dtPrc = mscPilneBLL.QueryPrc(desginKey, mscPline);
DataTable dtGrade = mscPilneBLL.QueryGrade(desginKey, mscPline);
lblStationPath.Value = mscPilneBLL.QueryStation(desginKey, mscPline);
GridHelper.CopyDataToDatatable(dtPrc, this.dataTable2, true);
GridHelper.CopyDataToDatatable(dtGrade, this.dataTable3, true);
PlanComm.setGridActivation(this.ultraGridProcess.DisplayLayout.Bands[0]);
PlanComm.setGridActivation(this.ultraGridGrade.DisplayLayout.Bands[0]);
}
private void ultraGridMscPline_AfterRowActivate(object sender, EventArgs e)
{
string mscPline = ultraGridMscPline.ActiveRow.Cells["MSC_PLINE"].Value.ToString();
DoQueryInfo(desginKey, mscPline);
}
private void ultraGridMscPline_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
{
if (e.Cell.Column.Key.Equals("CHC"))
{
if (Convert.ToBoolean(e.Cell.Row.Cells["CHC"].Text))
{
cheMscPline = e.Cell.Row.Cells["MSC_PLINE"].Value.ToString();
cheCraftNo = e.Cell.Row.Cells["CRAFT_NO"].Value.ToString();
cheCraftSeq = e.Cell.Row.Cells["CRAFT_SEQ"].Value.ToString();
cheCraftName = e.Cell.Row.Cells["CRAFT_NAME"].Value.ToString();
desginKey = e.Cell.Row.Cells["DESGIN_KEY"].Value.ToString();
gradeNameAll = "";
foreach (UltraGridRow uRow in ultraGridGrade.Rows)
{
gradeNameAll += uRow.Cells["GRADENAME"].Value.ToString() + ",";
}
if (gradeNameAll.Contains(','))
{
gradeNameAll = gradeNameAll.Substring(0,
gradeNameAll.LastIndexOf(','));
}
foreach (UltraGridRow uRow in ultraGridMscPline.Rows)
{
if (uRow != e.Cell.Row)
{
uRow.Cells["CHC"].Value = false;
}
}
}
else
{
e.Cell.Row.Cells["CHC"].Value = true;
}
}
}
///
/// 合同来源
///
public string OrderSource
{
get { return orderSource; }
set { orderSource = value; }
}
///
/// 交货行PK
///
public string OrdLnDivPk
{
get { return ordLnDivPk; }
set { ordLnDivPk = value; }
}
///
/// 质量设计
///
public string DesginKey
{
get { return desginKey; }
set { desginKey = value; }
}
///
/// 制程
///
public string CheMscPline
{
get { return cheMscPline; }
set { cheMscPline = value; }
}
///
/// 选择工艺号
///
public string CheCraftNo
{
get { return cheCraftNo; }
set { cheCraftNo = value; }
}
///
/// 工艺序号
///
public string CheCraftSeq
{
get { return cheCraftSeq; }
set { cheCraftSeq = value; }
}
///
/// 工艺负责人
///
public string CheCraftName
{
get { return cheCraftName; }
set { cheCraftName = value; }
}
///
/// 合同行pk
///
public string OrdLnPk
{
get { return ordLnPk; }
set { ordLnPk = value; }
}
///
/// 制程钢种
///
public string GradeNameAll
{
get { return gradeNameAll; }
set { gradeNameAll = value; }
}
///
/// 制程grid
///
public Infragistics.Win.UltraWinGrid.UltraGrid UltraGridMscPline
{
get { return ultraGridMscPline; }
set { ultraGridMscPline = value; }
}
}
}