using com.steering.pss.plnsaleord.jggxpln.model;
using Core.Mes.Client.Comm.Control;
using Core.Mes.Client.Comm.Server;
using Core.Mes.Client.Comm.Tool;
using CoreFS.CA06;
using Infragistics.Win.UltraWinGrid;
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;
namespace Core.StlMes.Client.PlnSaleOrd.JGGXPln
{
public partial class FrmJgUseStock : FrmBase
{
///
/// 接箍订单号
///
private string proPlanId = "";
///
/// 接箍订单分组号
///
private string jgGroupId = "";
private bool isChecked = false;
public bool IsChecked
{
get { return isChecked; }
set { isChecked = value; }
}
public FrmJgUseStock(string _proPlanId, string _jgGroupId, OpeBase _ob)
{
this.ob = _ob;
proPlanId = _proPlanId;
jgGroupId = _jgGroupId;
InitializeComponent();
}
private void ultraToolbarsManager1_ToolClick(object sender,
Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
{
switch (e.Tool.Key)
{
case "Query":
DoQuery();
break;
case "OutBound":
OutBound();
break;
case "DeleteMatJg":
DoDeleteMatJg();
break;
case "Close":
this.Close();
break;
default:
break;
}
}
private void FrmJgUseStock_Load(object sender, EventArgs e)
{
Init();
RefresDate();
}
///
/// 初始化
///
private void Init()
{
PlanComm.setGridActivation(ultraGridMatJg.DisplayLayout.Bands[0], "CHC", "CHECKED_NUM");
PlanComm.setGridSummarySet(ultraGridMatJg, 0, "CHECKED_NUM", "PIECES");
PlanComm.setGridSummarySet(ultraGridMatJg, 3, "WEIGHT");
PlanComm.setGridActivation(ultraGridMatButtress.DisplayLayout.Bands[0], "CHC");
PlanComm.setGridSummarySet(ultraGridMatButtress, 0, "PIECES");
PlanComm.setGridSummarySet(ultraGridMatButtress, 3, "WEIGHT");
PlanComm.setGridDigitalCol(ultraGridMatJg.DisplayLayout.Bands[0], 5, 0, "CHECKED_NUM", "PIECES");
PlanComm.setGridDigitalCol(ultraGridMatJg.DisplayLayout.Bands[0], 5, 2, "WEIGHT",
"OUTDIAMETER", "WALLTHICK", "CHECK_J_VAL", "AIMLENGTH", "SINGLEWEIGHT");
PlanComm.setGridDigitalCol(ultraGridMatButtress.DisplayLayout.Bands[0], 5, 0, "PIECES");
PlanComm.setGridDigitalCol(ultraGridMatButtress.DisplayLayout.Bands[0], 5, 2, "WEIGHT",
"OUTDIAMETER", "WALLTHICK", "CHECK_J_VAL", "AIMLENGTH", "SINGLEWEIGHT");
Core.StlMes.Client.PlnSaleOrd.PlanStove.CommHelper.SetColumnAutoFitSize1(this.ultraGridMatButtress.DisplayLayout.Bands[0]);
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_COPPER"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_DETECTION"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_BLAST"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_BONDERIZING"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_COPPER"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_DETECTION"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_BLAST"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_BONDERIZING"].Style
= Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
}
///
/// 刷新
///
private void RefresDate()
{
DataTable dt1 = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch.selectBaseInfoSort",
new object[] { "408403" }, this.ob);
DataTable dt2 = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch.selectBaseInfoSort",
new object[] { "408401" }, this.ob);
DataTable dt3 = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch.selectBaseInfoSort",
new object[] { "408404" }, this.ob);
DataTable dt4 = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch.selectBaseInfoSort",
new object[] { "408402" }, this.ob);
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_COPPER"].ValueList
= PlanComm.GeneralValuelist(ref dt1, "BASECODE", "BASENAME");
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_DETECTION"].ValueList
= PlanComm.GeneralValuelist(ref dt2, "BASECODE", "BASENAME");
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_BLAST"].ValueList
= PlanComm.GeneralValuelist(ref dt3, "BASECODE", "BASENAME");
ultraGridMatJg.DisplayLayout.Bands[0].Columns["DEMAND_BONDERIZING"].ValueList
= PlanComm.GeneralValuelist(ref dt4, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_COPPER"].ValueList
= PlanComm.GeneralValuelist(ref dt1, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_DETECTION"].ValueList
= PlanComm.GeneralValuelist(ref dt2, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_BLAST"].ValueList
= PlanComm.GeneralValuelist(ref dt3, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_BONDERIZING"].ValueList
= PlanComm.GeneralValuelist(ref dt4, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_COPPER_LK"].ValueList
= PlanComm.GeneralValuelist(ref dt1, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_DETECTION_LK"].ValueList
= PlanComm.GeneralValuelist(ref dt2, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_BLAST_LK"].ValueList
= PlanComm.GeneralValuelist(ref dt3, "BASECODE", "BASENAME");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DEMAND_BONDERIZING_LK"].ValueList
= PlanComm.GeneralValuelist(ref dt4, "BASECODE", "BASENAME");
DataTable dtstatus = new DataTable();
dtstatus.Columns.Add("Status");
dtstatus.Columns.Add("Text");
dtstatus.Rows.Add("0","待处理");
dtstatus.Rows.Add("1","已处理");
dtstatus.Rows.Add("2","无要求");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["IMPRESS_DEAL_STATUS"].ValueList
= PlanComm.GeneralValuelist(ref dtstatus, "Status", "Text");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["COPPER_DEAL_STATUS"].ValueList
= PlanComm.GeneralValuelist(ref dtstatus, "Status", "Text");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["DETECT_DEAL_STATUS"].ValueList
= PlanComm.GeneralValuelist(ref dtstatus, "Status", "Text");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["BLAST_DEAL_STATUS"].ValueList
= PlanComm.GeneralValuelist(ref dtstatus, "Status", "Text");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["PLT_CU_DEAL_STATUS"].ValueList
= PlanComm.GeneralValuelist(ref dtstatus, "Status", "Text");
ultraGridMatButtress.DisplayLayout.Bands[0].Columns["PHOS_DEAL_STATUS"].ValueList
= PlanComm.GeneralValuelist(ref dtstatus, "Status", "Text");
DoQuery();
}
///
/// 查询
///
private void DoQuery()
{
DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch.getPlnGxJgMStatus",
new object[] { proPlanId, jgGroupId }, this.ob);
if (dt != null && dt.Rows.Count > 0)
{
int matchNum = 0;
int jgNum = 0;
int.TryParse(dt.Rows[0]["MATCHNUM_JG"].ToString(), out matchNum);
int.TryParse(dt.Rows[0]["GROUP_NUM"].ToString(), out jgNum);
ultraNumericBoundNum.Value = matchNum;
ultraNumericJgNum.Value = jgNum;
}
DataTable dtMat = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch.queryMatch",
new object[] { proPlanId, jgGroupId }, this.ob);
GridHelper.CopyDataToDatatable(dtMat, dataTable1, true);
DataTable dtButtress = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch.queryJgMButtress",
new object[] { proPlanId, jgGroupId }, this.ob);
GridHelper.CopyDataToDatatable(dtButtress, dataTable2, true);
}
///
/// 利库
///
private void OutBound()
{
IQueryable ugrs = null;
List list = new List();
isChecked = true;
ultraGridMatJg.UpdateData();
ugrs = ultraGridMatJg.Rows.AsQueryable().Where(" CHC = 'True'");
if (ugrs.Count() == 0)
{
MessageUtil.ShowTips("未勾选任何利库材料。");
return;
}
foreach (UltraGridRow ugr in ugrs)
{
CouplingMatButtressEntity matButtEntity = new CouplingMatButtressEntity();
int jgNum = 0;
int.TryParse(ugr.Cells["CHECKED_NUM"].Value.ToString(), out jgNum);
if (jgNum <= 0)
{
MessageUtil.ShowTips("利库个数不能小于0。(材料:"
+ ugr.Cells["MAT_NO"].Value.ToString() + ")。");
return;
}
matButtEntity.ProPlanId = proPlanId;
matButtEntity.JgGroupId = jgGroupId;
matButtEntity.MatNo = ugr.Cells["MAT_NO"].Value.ToString();
matButtEntity.MatNoXh = ugr.Cells["MAT_NO_XH"].Value.ToString();
matButtEntity.Pieces = jgNum.ToString();
matButtEntity.CreateName = UserInfo.GetUserName();
list.Add(matButtEntity);
}
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch";
ccp.MethodName = "outBound";
ccp.ServerParams = new object[] { list, proPlanId, jgGroupId, UserInfo.GetUserName() };
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp.ReturnCode != -1)
{
if (ccp.ReturnObject != null)
{
MessageUtil.ShowTips(ccp.ReturnObject.ToString());
}
}
DoQuery();
}
///
/// 删除出库记录
///
private void DoDeleteMatJg()
{
IQueryable ugrs = null;
List list = new List();
isChecked = true;
ultraGridMatButtress.UpdateData();
ugrs = ultraGridMatButtress.Rows.AsQueryable().Where(" CHC = 'True'");
if (ugrs.Count() == 0)
{
MessageUtil.ShowTips("未勾选任何出库记录。");
return;
}
foreach (UltraGridRow ugr in ugrs)
{
CouplingMatButtressEntity matButtEntity = new CouplingMatButtressEntity();
matButtEntity.MatNo = ugr.Cells["MAT_NO"].Value.ToString();
matButtEntity.MatNoXh = ugr.Cells["MAT_NO_XH"].Value.ToString();
list.Add(matButtEntity);
}
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.CoreJgMPropMatch";
ccp.MethodName = "deleteMatJg";
ccp.ServerParams = new object[] { list, proPlanId, jgGroupId, UserInfo.GetUserName() };
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp.ReturnCode != -1)
{
if (ccp.ReturnObject != null)
{
MessageUtil.ShowTips(ccp.ReturnObject.ToString());
}
}
DoQuery();
}
///
/// 出库个数更新
///
private void getOutBoundNum()
{
int sumJgNum = 0;
IQueryable ugrs = null;
ultraGridMatJg.UpdateData();
ugrs = ultraGridMatJg.Rows.AsQueryable().Where(" CHC = 'True' ");
if (ugrs.Count() == 0)
{
ultraNumericOutBound.Value = 0;
return;
}
foreach (UltraGridRow ugr in ugrs)
{
int jgNum = 0;
int.TryParse(ugr.Cells["CHECKED_NUM"].Value.ToString(), out jgNum);
sumJgNum += jgNum;
}
ultraNumericOutBound.Value = sumJgNum;
}
private void ultraGridMatJg_CellChange(object sender, CellEventArgs e)
{
if (e.Cell.Column.Key.Equals("CHC") || e.Cell.Column.Key.Equals("CHECKED_NUM"))
{
getOutBoundNum();
}
if (e.Cell.Column.Key.Equals("CHC"))
{
e.Cell.Row.Update();
if (Convert.ToBoolean(e.Cell.Row.Cells["CHC"].Text))
{
int jgNum = 0;
int.TryParse(e.Cell.Row.Cells["PIECES"].Value.ToString(), out jgNum);
e.Cell.Row.Cells["CHECKED_NUM"].Value = jgNum;
}
else
{
e.Cell.Row.Cells["CHECKED_NUM"].Value = 0;
}
}
}
private void ultraGridMatJg_AfterHeaderCheckStateChanged(object sender,
AfterHeaderCheckStateChangedEventArgs e)
{
if (e.Column.Key.Equals("CHC"))
{
getOutBoundNum();
}
}
private void ultraGridMatJg_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
{
foreach (UltraGridRow uRow in ultraGridMatJg.Selected.Rows)
{
if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow))
{
uRow.Cells["CHC"].Value = true;
}
}
getOutBoundNum();
}
private void ultraGridMatJg_ClickCell(object sender, ClickCellEventArgs e)
{
int matchNum = 0;
UltraGridRow ugr = e.Cell.Row;
if (ugr == null)
{
return;
}
int.TryParse(ugr.Cells["PIECES"].Value.ToString(), out matchNum);
ugr.Cells["CHECKED_NUM"].Column.MaxValue = matchNum;
}
private void ultraGridMatButtress_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
{
foreach (UltraGridRow uRow in ultraGridMatButtress.Selected.Rows)
{
if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow))
{
uRow.Cells["CHC"].Value = true;
}
}
}
}
}