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.Server;
using Core.Mes.Client.Comm.Control;
using Infragistics.Win.UltraWinGrid;
using Core.StlMes.Client.Qcm;
using Core.Mes.Client.Comm.Format;
using System.Collections;
using Core.Mes.Client.Comm.Tool;
using Core.StlMes.Client.SaleOrder.Dialog;
namespace Core.StlMes.Client.SaleOrder
{
public partial class frmOrderDeliveryReview : FrmBase
{
public frmOrderDeliveryReview()
{
InitializeComponent();
this.IsLoadUserView = true;
}
private string[] dataArr = null;
public frmOrderDeliveryReview(OpeBase _ob, string[] arr)
{
InitializeComponent();
this.IsLoadUserView = true;
this.ob = _ob;
this.CustomInfo = "CHGE";
dataArr = new string[arr.Length];
dataArr = arr;
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
foreach (UltraGridColumn col in ultraGrid1.DisplayLayout.Bands[0].Columns)
{
col.SortIndicator = SortIndicator.Disabled;
}
}
///
/// 来自于哪个界面 1交货期评审提报 2 交货期评审 3 合同行变更时的交货期
///
private string statusFrom = ""; //
private void frmOrderDeliveryReview_Load(object sender, EventArgs e)
{
//默认查询当前日期-1月——当前日期数据。
udtEnd.DateTime = DateTime.Now;
udtStart.DateTime = DateTime.Now.AddMonths(-1);
if (this.CustomInfo.Contains("REPORT")) //交货期评审提报
{
statusFrom = "1";
}
else if (this.CustomInfo.Contains("CHGE")) //合同变更
{
statusFrom = "3";
}
else //交货期评审
{
statusFrom = "2";
}
}
///
/// 重写基类toolBar方法
///
///
///
public override void ToolBar_Click(object sender, string ToolbarKey)
{
switch (ToolbarKey)
{
case "doQuery":
doQuery();
break;
case "doReport":
doReport();
break;
case "doCancel":
doCancel();
break;
case "doClose":
this.Close();
break;
case "Cycle":
DoCycle();
break;
case "InPutMpsNo":
InPutMpsNo();
break;
case "Update":
UpdateDelivery();
break;
//分界面
case "doOk":
this.doOk();
break;
case "doReviewNotPass":
this.doReviewNotPass();
break;
//------合同行变更交货期界面------
case "ChgeQuery":
this.ChgeQuery();
break;
case "ChgeUpdate":
UpdateDeliveryChge();
break;
}
}
///
/// 维护MPS编号
///
private void InPutMpsNo()
{
UltraGridRow ugr = ultraGHead.ActiveRow;
if (ugr == null)
{
MessageUtil.ShowWarning("请选择一个需要维护MPS编号的合同!");
return;
}
string ordPk = ugr.Cells["ORD_PK"].Value.ToString();
//判断选择的合同是否需要维护MPS编号
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.getMpsFlag", new object[] { ordPk }, this.ob);
if (dt != null && dt.Rows.Count > 0)
{
if (!dt.Rows[0][0].ToString().Contains("1"))
{
MessageUtil.ShowWarning("您选择的合同不需要维护MPS编号!");
return;
}
}
else
{
MessageUtil.ShowWarning("您选择的合同合同行出现异常!");
return;
}
FrmInPutMpsNo pmn = new FrmInPutMpsNo(this.ob, ordPk);
pmn.ShowDialog();
doQuery();
foreach (UltraGridRow uRow in ultraGHead.Rows)
{
if (uRow.Cells["ORD_PK"].Value.ToString() == ordPk)
{
uRow.Activate();
break;
}
}
}
///
/// 修改交货行的信息。替代之前的"保存“与”删除“
///
private void UpdateDelivery()
{
UltraGridRow row = ultraGridOrderLine.ActiveRow;
if (row == null)
{
MessageUtil.ShowWarning("请选择你要修改的合同行!");
return;
}
if (row.HasParent())
row = row.ParentRow;
//合同行变更时交货期。
if (statusFrom == "3")
{
string lnPk = row.Cells["ORD_LN_PK"].Value.ToString();
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.selectOrderLine", new object[] { lnPk }, this.ob);
if (dt != null && dt.Rows.Count > 0)
{
string lnStatus = dt.Rows[0]["ORDER_LN_STATUS"].ToString();
string isLock = dt.Rows[0]["ISLOCK"].ToString();
if (isLock != "1")
{
MessageUtil.ShowWarning("您选择的合同行尚未锁定!");
return;
}
if (lnStatus != "12020202")
{
MessageUtil.ShowWarning("您选择的合同行尚未通过技术评审!");
return;
}
}
else
{
MessageUtil.ShowWarning("您选择的合同行已不存在!");
return;
}
}
UltraGridRow ugr = ultraGHead.ActiveRow;
string ordPk = ugr.Cells["ORD_PK"].Value.ToString();
DataTable stsDt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.getOrdStatus", new object[] { ordPk }, this.ob);
if (stsDt != null && stsDt.Rows.Count > 0)
{
string ordSts = stsDt.Rows[0][0].ToString();
if (ordSts != "12020202" && ordSts != "12020211")
{
MessageUtil.ShowWarning("只有技术评审通过和交货期评审失败的状态才可以修改交货期!");
return;
}
}
else
{
MessageUtil.ShowWarning("您选择的合同已被删除!");
return;
}
string orderunit = ""; //订货单位
string shrow = ""; //收货单位
string enTotalLen = ""; //保总长
string lenUnit = ""; //长度单位
string specCode = ""; //产品规格代码
orderunit = row.Cells["ORDER_UNIT"].Value.ToString();
if (row.HasParent())
{
shrow = row.Cells["RECEIV_NM"].Value == null ? "" : row.Cells["RECEIV_NM"].Value.ToString();
enTotalLen = row.ParentRow.Cells["ORD_ENSU_TOTL_LEN"].Value.ToString();
lenUnit = row.ParentRow.Cells["LEN_UNIT"].Value.ToString();
specCode = row.ParentRow.Cells["SPEC_CODE"].Value.ToString();
}
else
{
shrow = row.ChildBands[0].Rows[0].Cells["RECEIV_NM"].Value == null ? "" : row.ChildBands[0].Rows[0].Cells["RECEIV_NM"].Value.ToString();
enTotalLen = row.Cells["ORD_ENSU_TOTL_LEN"].Value.ToString();
lenUnit = row.Cells["LEN_UNIT"].Value.ToString();
specCode = row.Cells["SPEC_CODE"].Value.ToString();
}
DataTable dlyDt = new DataTable();
frmOrderDelivery fod = new frmOrderDelivery(this.ob);
fod.OrderNo = row.Cells["ORD_LN_PK"].Value.ToString();
string ordLnPk = row.Cells["ORD_LN_PK"].Value.ToString();
fod.NumWt = row.Cells["ORDER_QTY"].Value.ToString();
fod.OrderUnit = orderunit;
fod.LenUnit = lenUnit;
fod.SaleOrg = ClsBaseInfo.GetSaleOrg(UserInfo.GetDeptid());
fod.ShRow = shrow;
fod.FromForm = "1";
fod.ManageNo = ordPk;
fod.OrderNo = ordLnPk;
fod.Order_line_lne = Convert.ToDouble(enTotalLen == "" ? "0" : enTotalLen);
fod.Spec_code = specCode;
fod.ShowDialog();
dlyDt = fod.DlyDt;
doQuery();
foreach (UltraGridRow uRow in ultraGHead.Rows)
{
if (uRow.Cells["ORD_PK"].Value.ToString().Equals(ordPk))
{
uRow.Activate();
DoCycle();
break;
}
}
foreach (UltraGridRow cRow in ultraGridOrderLine.Rows)
{
if (cRow.Cells["ORD_LN_PK"].Value.ToString().Equals(ordLnPk))
{
cRow.Activate();
break;
}
}
if (fod.DialogResult != DialogResult.OK)
return;
string strLine = "";
for (int k = 0; k < dlyDt.Rows.Count; k++)
{
string ordLnDlyPk = dlyDt.Rows[k]["ORD_LN_DLY_PK"].ToString();
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getOrderDlyTransit", new object[] { ordLnDlyPk }, this.ob);
string trasLine = "";
for (int n = 0; n < dt.Rows.Count; n++)
{
string agency = dt.Rows[n]["AGENCY_FL"].ToString();
if (agency == "0" || agency == "2") //买方线路
{
if (agency == "0")
trasLine += " 买方线路:";
else
{
trasLine += " 买方线路(买方代办):";
}
if (dt.Rows[n]["TRANSIT_TYP"].ToString() != "")
trasLine = trasLine + "运输方式:" + dt.Rows[n]["TRANSIT_TYP"].ToString();
if (dt.Rows[n]["DESTINATION"].ToString() != "")
trasLine = trasLine + " 目的地:" + dt.Rows[n]["DESTINATION"].ToString();
if (dt.Rows[n]["STATION_NO"].ToString() != "")
trasLine = trasLine + " 到站名称:" + dt.Rows[n]["STATION_NM"].ToString();
if (dt.Rows[n]["SPCL_LN_NO"].ToString() != "")
trasLine = trasLine + " 专用线名称:" + dt.Rows[n]["SPCL_LN_NM"].ToString();
if (dt.Rows[n]["PORT_NO"].ToString() != "")
trasLine = trasLine + " 港口/码头:" + dt.Rows[n]["PORT_DESC"].ToString();
if (dt.Rows[n]["CARRIER_UNIT"].ToString() != "")
trasLine = trasLine + " 承运单位:" + dt.Rows[n]["CARRIER_UNIT"].ToString();
if (dt.Rows[n]["RECEIVOR"].ToString() != "")
trasLine = trasLine + " 接货人:" + dt.Rows[n]["RECEIVOR"].ToString();
}
else
{
trasLine += " TPCO代办线路:";
if (dt.Rows[n]["TRANSIT_TYP"].ToString() != "")
trasLine = trasLine + " 运输方式:" + dt.Rows[n]["TRANSIT_TYP"].ToString();
if (dt.Rows[n]["DESTINATION"].ToString() != "")
trasLine = trasLine + " 目的地:" + dt.Rows[n]["DESTINATION"].ToString();
if (dt.Rows[n]["STATION_NO"].ToString() != "")
trasLine = trasLine + " 到站名称:" + dt.Rows[n]["STATION_NM"].ToString();
if (dt.Rows[n]["SPCL_LN_NO"].ToString() != "")
trasLine = trasLine + " 专用线名称:" + dt.Rows[n]["SPCL_LN_NM"].ToString();
if (dt.Rows[n]["PORT_NO"].ToString() != "")
trasLine = trasLine + " 港口/码头:" + dt.Rows[n]["PORT_DESC"].ToString();
if (dt.Rows[n]["CARRIER_UNIT"].ToString() != "")
trasLine = trasLine + " 承运单位:" + dt.Rows[n]["CARRIER_UNIT"].ToString();
if (dt.Rows[n]["RECEIVOR"].ToString() != "")
trasLine = trasLine + " 接货人:" + dt.Rows[n]["RECEIVOR"].ToString();
}
trasLine = trasLine + ";";
}
strLine += "交货量:" + dlyDt.Rows[k]["DELVRY_QTY"].ToString() + ";交货日期:" + dlyDt.Rows[k]["DELVRY_EDATE"].ToString() + ";收货单位:" + dlyDt.Rows[k]["RECEIV_NM"].ToString() + ";交货地点:" + dlyDt.Rows[k]["DELVRY_ADDR"].ToString() + trasLine + "\r\n";//;运输方案:" + orderDerlivery.Tables[i].Rows[k]["TRANSIT_PLAN"].ToString() + "\r\n";
}
UltraGridRow ugrLine = ultraGridOrderLine.ActiveRow;
ServerHelper.SetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.setOrderLineDlyEtime", new object[] { ugrLine.Cells["ORD_LN_PK"].Value.ToString(), ugrLine.Cells["DELVRY_EDATE"].Value.ToString(), strLine }, this.ob);
}
private void UpdateDeliveryChge()
{
UltraGridRow row = ultraGridOrderLine.ActiveRow;
if (row == null)
{
MessageUtil.ShowWarning("请选择你要修改的合同行!");
return;
}
if (row.HasParent())
row = row.ParentRow;
//合同行变更时交货期。
if (statusFrom == "3")
{
string lnPk = row.Cells["ORD_LN_PK"].Value.ToString();
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.selectOrderLine", new object[] { lnPk }, this.ob);
if (dt != null && dt.Rows.Count > 0)
{
string lnStatus = dt.Rows[0]["ORDER_LN_STATUS"].ToString();
string isLock = dt.Rows[0]["ISLOCK"].ToString();
if (isLock != "1")
{
MessageUtil.ShowWarning("您选择的合同行尚未锁定!");
return;
}
if (lnStatus != "12020202")
{
MessageUtil.ShowWarning("您选择的合同行尚未通过技术评审!");
return;
}
}
else
{
MessageUtil.ShowWarning("您选择的合同行已不存在!");
return;
}
}
UltraGridRow ugr = ultraGHead.ActiveRow;
string ordPk = ugr.Cells["ORD_PK"].Value.ToString();
string orderunit = ""; //订货单位
string shrow = ""; //收货单位
string enTotalLen = ""; //保总长
string lenUnit = ""; //长度单位
string specCode = ""; //产品规格代码
orderunit = row.Cells["ORDER_UNIT"].Value.ToString();
if (row.HasParent())
{
shrow = row.Cells["RECEIV_NM"].Value == null ? "" : row.Cells["RECEIV_NM"].Value.ToString();
enTotalLen = row.ParentRow.Cells["ORD_ENSU_TOTL_LEN"].Value.ToString();
lenUnit = row.ParentRow.Cells["LEN_UNIT"].Value.ToString();
specCode = row.ParentRow.Cells["SPEC_CODE"].Value.ToString();
}
else
{
shrow = row.ChildBands[0].Rows[0].Cells["RECEIV_NM"].Value == null ? "" : row.ChildBands[0].Rows[0].Cells["RECEIV_NM"].Value.ToString();
enTotalLen = row.Cells["ORD_ENSU_TOTL_LEN"].Value.ToString();
lenUnit = row.Cells["LEN_UNIT"].Value.ToString();
specCode = row.Cells["SPEC_CODE"].Value.ToString();
}
DataTable dlyDt = new DataTable();
frmOrderDelivery fod = new frmOrderDelivery(this.ob);
fod.OrderNo = row.Cells["ORD_LN_PK"].Value.ToString();
string ordLnPk = row.Cells["ORD_LN_PK"].Value.ToString();
fod.NumWt = row.Cells["ORDER_QTY"].Value.ToString();
fod.OrderUnit = orderunit;
fod.LenUnit = lenUnit;
fod.SaleOrg = ClsBaseInfo.GetSaleOrg(UserInfo.GetDeptid());
fod.ShRow = shrow;
fod.FromForm = "3";
fod.ManageNo = ordPk;
fod.OrderNo = ordLnPk;
fod.Order_line_lne = Convert.ToDouble(enTotalLen == "" ? "0" : enTotalLen);
fod.Spec_code = specCode;
fod.ShowDialog();
dlyDt = fod.DlyDt;
doQuery();
foreach (UltraGridRow uRow in ultraGHead.Rows)
{
if (uRow.Cells["ORD_PK"].Value.ToString().Equals(ordPk))
{
uRow.Activate();
DoCycle();
break;
}
}
foreach (UltraGridRow cRow in ultraGridOrderLine.Rows)
{
if (cRow.Cells["ORD_LN_PK"].Value.ToString().Equals(ordLnPk))
{
cRow.Activate();
break;
}
}
if (fod.DialogResult != DialogResult.OK)
return;
string strLine = "";
for (int k = 0; k < dlyDt.Rows.Count; k++)
{
string ordLnDlyPk = dlyDt.Rows[k]["ORD_LN_DLY_PK"].ToString();
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getOrderDlyTransit", new object[] { ordLnDlyPk }, this.ob);
string trasLine = "";
for (int n = 0; n < dt.Rows.Count; n++)
{
string agency = dt.Rows[n]["AGENCY_FL"].ToString();
if (agency == "0" || agency == "2") //买方线路
{
if (agency == "0")
trasLine += " 买方线路:";
else
{
trasLine += " 买方线路(买方代办):";
}
if (dt.Rows[n]["TRANSIT_TYP"].ToString() != "")
trasLine = trasLine + "运输方式:" + dt.Rows[n]["TRANSIT_TYP"].ToString();
if (dt.Rows[n]["DESTINATION"].ToString() != "")
trasLine = trasLine + " 目的地:" + dt.Rows[n]["DESTINATION"].ToString();
if (dt.Rows[n]["STATION_NO"].ToString() != "")
trasLine = trasLine + " 到站名称:" + dt.Rows[n]["STATION_NM"].ToString();
if (dt.Rows[n]["SPCL_LN_NO"].ToString() != "")
trasLine = trasLine + " 专用线名称:" + dt.Rows[n]["SPCL_LN_NM"].ToString();
if (dt.Rows[n]["PORT_NO"].ToString() != "")
trasLine = trasLine + " 港口/码头:" + dt.Rows[n]["PORT_DESC"].ToString();
if (dt.Rows[n]["CARRIER_UNIT"].ToString() != "")
trasLine = trasLine + " 承运单位:" + dt.Rows[n]["CARRIER_UNIT"].ToString();
if (dt.Rows[n]["RECEIVOR"].ToString() != "")
trasLine = trasLine + " 接货人:" + dt.Rows[n]["RECEIVOR"].ToString();
}
else
{
trasLine += " TPCO代办线路:";
if (dt.Rows[n]["TRANSIT_TYP"].ToString() != "")
trasLine = trasLine + " 运输方式:" + dt.Rows[n]["TRANSIT_TYP"].ToString();
if (dt.Rows[n]["DESTINATION"].ToString() != "")
trasLine = trasLine + " 目的地:" + dt.Rows[n]["DESTINATION"].ToString();
if (dt.Rows[n]["STATION_NO"].ToString() != "")
trasLine = trasLine + " 到站名称:" + dt.Rows[n]["STATION_NM"].ToString();
if (dt.Rows[n]["SPCL_LN_NO"].ToString() != "")
trasLine = trasLine + " 专用线名称:" + dt.Rows[n]["SPCL_LN_NM"].ToString();
if (dt.Rows[n]["PORT_NO"].ToString() != "")
trasLine = trasLine + " 港口/码头:" + dt.Rows[n]["PORT_DESC"].ToString();
if (dt.Rows[n]["CARRIER_UNIT"].ToString() != "")
trasLine = trasLine + " 承运单位:" + dt.Rows[n]["CARRIER_UNIT"].ToString();
if (dt.Rows[n]["RECEIVOR"].ToString() != "")
trasLine = trasLine + " 接货人:" + dt.Rows[n]["RECEIVOR"].ToString();
}
trasLine = trasLine + ";";
}
strLine += "交货量:" + dlyDt.Rows[k]["DELVRY_QTY"].ToString() + ";交货日期:" + dlyDt.Rows[k]["DELVRY_EDATE"].ToString() + ";收货单位:" + dlyDt.Rows[k]["RECEIV_NM"].ToString() + ";交货地点:" + dlyDt.Rows[k]["DELVRY_ADDR"].ToString() + trasLine + "\r\n";//;运输方案:" + orderDerlivery.Tables[i].Rows[k]["TRANSIT_PLAN"].ToString() + "\r\n";
}
UltraGridRow ugrLine = ultraGridOrderLine.ActiveRow;
ServerHelper.SetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.setOrderLineDlyEtime", new object[] { ugrLine.Cells["ORD_LN_PK"].Value.ToString(), ugrLine.Cells["DELVRY_EDATE"].Value.ToString(), strLine }, this.ob);
}
///
/// 交货期评审失败
///
private void doReviewNotPass()
{
UltraGridRow ugr = ultraGHead.ActiveRow;
if (ugr == null)
{
MessageUtil.ShowWarning("请选择你要操作的合同!");
return;
}
//如果选择的是交货期评审失败的合同呢
if (ugr.Cells["ORDER_STS"].Text.Trim() == "12020211")
{
MessageUtil.ShowWarning("您选择的合同已经是”交货期评审失败状态“,不必重复操作!");
return;
}
if (MessageBox.Show("是否对所选合同进行评审不通过操作?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
return;
dlgReviewMemo dlg = new dlgReviewMemo();
dlg.ReviewFlag = 0;
dlg.ReviewSatus = "评审不通过";
dlg.ShowDialog();
string reviewMemo = dlg.ReviewMemo;
if (dlg.DialogResult != DialogResult.OK)
return;
string name = UserInfo.GetUserName();
string dept = ClsBaseInfo.GetDepartBySectionIdChangeSale(UserInfo.GetDeptid(), this.ob);
dept = dept + "-" + UserInfo.GetDepartment();
string ordPk = ultraGHead.ActiveRow.Cells["ORD_PK"].Value.ToString();
//UpdateHeadStatus(ordPk, hStatus, hStatusDesc);
CoreClientParam ccp = new CoreClientParam();
ccp.IfShowErrMsg = false;
ccp.ServerName = "com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview";
ccp.MethodName = "reviewBack";
ccp.ServerParams = new object[] { ordPk, name, dept, reviewMemo };
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp == null)
return;
else
{
if (ccp.ReturnCode == -1)
{
MessageBox.Show(ccp.ReturnObject.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
}
doQuery();
}
///
/// 交货期评审通过
///
private void doOk()
{
//12020212
UltraGridRow ugr = ultraGHead.ActiveRow;
if (ugr == null)
{
MessageUtil.ShowWarning("请选择你要操作的合同!");
return;
}
if (ugr.Cells["ORDER_STS"].Text.Trim() == "12020212")
{
MessageUtil.ShowWarning("您选择的合同已经是”交货期评审通过“,不能再评审通过!");
return;
}
//如果选择的是交货期评审失败的合同呢
if (ugr.Cells["ORDER_STS"].Text.Trim() == "12020211")
{
MessageUtil.ShowWarning("您选择的合同已经是”交货期评审失败状态“,不能再评审通过!");
return;
}
string ordPk = ultraGHead.ActiveRow.Cells["ORD_PK"].Value.ToString();
string hStatus = "12020212";
string hStatusDesc = "交货期评审通过";
if (MessageBox.Show("是否对选择的合同评审通过?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
return;
//投入产能井操作
dlgReviewMemo dlg = new dlgReviewMemo();
dlg.ReviewFlag = 1;
dlg.ReviewSatus = "评审通过";
dlg.ShowDialog();
string reviewMemo = dlg.ReviewMemo;
if (dlg.DialogResult != DialogResult.OK)
return;
string name = UserInfo.GetUserName();
string dept = ClsBaseInfo.GetDepartBySectionIdChangeSale(UserInfo.GetDeptid(), this.ob);
dept = dept + "-" + UserInfo.GetDepartment();
string saleOrg = ClsBaseInfo.GetSaleOrg(UserInfo.GetDeptid());
CoreClientParam ccp = new CoreClientParam();
ccp.IfShowErrMsg = false;
ccp.ServerName = "com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview";
//if (this.CustomInfo.ToString2().EndsWith("120504_0") || this.CustomInfo.ToString2().EndsWith("120504_1"))
//{
// string startStatus = this.CustomInfo.ToString2().Split('_')[1].ToString2();
// string endStatus = (int.Parse(startStatus) + 1 ).ToString2();
// ccp.MethodName = "updateThExamineStatus";
// ccp.ServerParams = new object[] { ordPk, name, dept, reviewMemo, startStatus, endStatus };
//}
//else {
ccp.MethodName = "inputWell";
ccp.ServerParams = new object[] { ordPk, name, dept, reviewMemo, saleOrg };
//}
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp == null)
return;
if (ccp != null)
{
if (ccp.ReturnCode == -1)
{
if (ccp.ReturnObject != null)
{
MessageUtil.ShowWarning(ccp.ReturnObject.ToString());
return;
}
else
{
MessageUtil.ShowWarning(ccp.ReturnInfo);
return;
}
}
}
doQuery();
//UpdateHeadStatus(ordPk, hStatus, hStatusDesc);
}
///
/// 取消提报
///
private void doCancel()
{
if (ultraGHead.ActiveRow == null)
{
MessageBox.Show("请选择你要操作的合同!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
return;
}
if (MessageBox.Show("是否确认撤销提报?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
return;
//1. 判断当前选中合同行交货期是否满足。
//2. 满足。
string ordPk = ultraGHead.ActiveRow.Cells["ORD_PK"].Value.ToString();
//string hStatus = "12020202";
//string hStatusDesc = "技术评审通过";
//UpdateHeadStatus(ordPk, hStatus, hStatusDesc);
CoreClientParam ccp = new CoreClientParam();
ccp.IfShowErrMsg = false;
ccp.ServerName = "com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview";
ccp.MethodName = "updateOrderStatusCancel";
ccp.ServerParams = new object[] { ordPk, UserInfo.GetUserName() };
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp == null)
return;
else
{
if (ccp.ReturnCode == -1)
{
MessageBox.Show(ccp.ReturnObject.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
}
doQuery();
}
///
/// 确认功能,提报
///
private void doReport()
{
if (ultraGHead.ActiveRow == null)
{
MessageBox.Show("请选择要操作的合同!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
return;
}
UltraGridRow ugr = ultraGHead.ActiveRow;
string ordPk = ultraGHead.ActiveRow.Cells["ORD_PK"].Value.ToString();
// string hStatus = "12020210";
// string hStatusDesc = "待交货期评审";
//判断交货行的交货量是否等于合同行的交货量!
//ORD_PK --合同行--每个合同行的交货行的总量
if (ultraGHead.ActiveRow.Cells["ORDER_STS"].Value.ToString() == "12020210")
{
MessageBox.Show("您所选合同已处于[待交货期评审]状态,不必重复提报!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
return;
}
CoreClientParam ccp = new CoreClientParam();
ccp.IfShowErrMsg = false;
ccp.ServerName = "com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview";
ccp.MethodName = "isMeetDelivery";
ccp.ServerParams = new object[] { ordPk };
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp != null)
{
if (ccp.ReturnCode == -1 || ccp.ReturnObject.ToString().Equals("N"))
{
MessageUtil.ShowWarning("您选择的合同的交货量与订货量不一致,不能提报!");
return;
}
}
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.getOrderDeliveryStatus", new object[] { ordPk }, this.ob);
List list = new List();
foreach (DataRow dr in dt.Rows)
{
list.Add(dr["PRDCYC_MEET"].ToString());
}
if (list.Contains("等待") || list.Count <= 0)
{
MessageUtil.ShowWarning("请先对要提报的合同进行交货期分析!");
return;
}
//卡住MPS的输入
DataTable mpsDt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.getLineMpsComplete", new object[] { ordPk }, this.ob);
list = new List();
foreach (DataRow dr in mpsDt.Rows)
{
list.Add(dr[0].ToString());
}
if (list.Contains("1"))
{
MessageUtil.ShowWarning("确认后的MPS编号不存在或者MPS编号对应的MPS文本尚未维护,不能提报!");
return;
}
//1. 判断当前选中合同行交货期是否满足。(这里需要到数据库验证)
if (ultraGHead.ActiveRow.Cells["ISDELIVERYD"].Value.ToString() == "满足")
{
if (MessageBox.Show("是否提报选择的合同!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
return;
}
else
{
//if (MessageBox.Show("您选择的合同交货期不满足,是否继续提报?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.No)
// return;
MessageBox.Show("您选择的合同交货期不满足,不能提报!请按系统分析的交货期调整", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
//UpdateHeadStatus(ordPk, hStatus, hStatusDesc);
string dept = ClsBaseInfo.GetDepartBySectionIdChangeSale(UserInfo.GetDeptid(), this.ob);
dept = dept + "-" + UserInfo.GetDepartment();
CoreClientParam ccp1 = new CoreClientParam();
ccp1.IfShowErrMsg = false;
ccp1.ServerName = "com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview";
ccp1.MethodName = "updateOrderStatusReport";
ccp1.ServerParams = new object[] { ordPk, UserInfo.GetUserName(), dept };
ccp1 = this.ExecuteNonQuery(ccp1, CoreInvokeType.Internal);
if (ccp1 == null)
return;
else
{
if (ccp1.ReturnCode == -1)
{
MessageBox.Show(ccp1.ReturnObject.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
}
doQuery();
}
///
/// 修正合同头状态
///
///
private void UpdateHeadStatus(string ordPk, string hStatus, string hStatusDesc)
{
//获取当前选中合同头主键,修正当前合同头主键下面全部合同行,全部交货行状态为交货期评审通过。
//执行数据库相关操作
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview";
ccp.MethodName = "UpdateHeadStatus";
ccp.ServerParams = new object[] { ordPk, hStatus, hStatusDesc };
try
{
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
}
catch (Exception ex)
{
MessageBox.Show("错误提示:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
if (ccp.ReturnCode == -1)
{
return;
}
else
{
MessageBox.Show("操作成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
doQuery();
foreach (UltraGridRow row in ultraGHead.Rows)
{
if (ordPk.Equals(row.Cells["ORD_PK"].Value.ToString()))
{
row.Activate();
break;
}
}
}
}
///
/// 查询出技术评审通过的合同头信息。
///
private void doQuery()
{
string orderNo = utxtOrderNo.Text.Trim();
string isDeliveryD = "";
if (uchkIsDeliveryD.Checked)
{
isDeliveryD = "0";
}
else
{
isDeliveryD = "1";
}
string orderStart = "1000-01-01 00:00:01";
string orderEnd = "9999-12-31 23:59:59";
TimeSpan ts = udtEnd.DateTime.Subtract(udtStart.DateTime);
if (ts.TotalDays < 0)
{
MessageBox.Show("创建开始日期必须小于创建结束日期。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
return;
}
string valid = "1";
if (chkValid.Checked)
{
valid = "0";
}
else
{
valid = "1";
}
if (uchkDate.Checked)
{
orderStart = udtStart.DateTime.ToString("yyyy-MM-dd") + " 00:00:01";
orderEnd = udtEnd.DateTime.ToString("yyyy-MM-dd") + " 23:59:59";
}
string[] arr = this.ValidDataPurviewIds;
string supp = this.CustomInfo.Contains("120504") ? "120504" : "";
if (this.CustomInfo.ToString2().Equals("REVIEW"))
{
supp = "120501";
}
string thExamineStatus = "";
//if (this.CustomInfo.ToString2().EndsWith("120504_0") || this.CustomInfo.ToString2().EndsWith("120504_1") || this.CustomInfo.ToString2().EndsWith("120504_2"))
//{
// thExamineStatus = this.CustomInfo.ToString2().Split('_')[1].ToString2();
//}
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.doQuery", new Object[] { orderNo, isDeliveryD, orderStart, orderEnd, valid, statusFrom, arr, supp, thExamineStatus }, this.ob);
GridHelper.CopyDataToDatatable(ref dt, ref this.orderHeadDt, true);
dataTable1.Clear();
string status = "满足";
string status1 = "不满足";
string status2 = "等待";
if (dt.Rows.Count > 0)
{
foreach (UltraGridRow row in ultraGHead.Rows)
{
if ("1".Equals(row.Cells["ISDELIVERYD"].Value))
{
row.Cells["ISDELIVERYD"].Value = status;
}
else if ("2".Equals(row.Cells["ISDELIVERYD"].Value))
{
row.Cells["ISDELIVERYD"].Value = status2;
}
else
{
row.Cells["ISDELIVERYD"].Value = status1;
}
if ("1".Equals(row.Cells["CUSTOMER_MODEL_FL"].Value))
{
row.Cells["CUSTOMER_MODEL_FL"].Value = status;
}
else
{
row.Cells["CUSTOMER_MODEL_FL"].Value = status1;
}
if ("1".Equals(row.Cells["VALIDFLAG"].Value))
{
row.Cells["VALIDFLAG"].Value = true;
row.Appearance.ForeColor = Color.Black;
}
else
{
row.Cells["VALIDFLAG"].Value = false;
row.Appearance.ForeColor = Color.Red;
}
}
//列自适应
GridHelper.RefreshAndAutoSizeExceptRows(ultraGHead, new UltraGridColumn[] { });
ultraGHead.UpdateData();
}
else
{
slm_order_line_delivery.Rows.Clear();
slm_order_line.Rows.Clear();
}
}
private void bindSlmOrderLine(string orderPk)
{
if (ultraGHead.ActiveRow == null)
{
MessageBox.Show("请先选择合同头信息!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
return;
}
this.slm_order_line_delivery.Rows.Clear();
this.slm_order_line.Clear();
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.GetOrderLine", new Object[] { orderPk, statusFrom }, this.ob);
DataTable deliveryDt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.GetOrderLineDelivery", new Object[] { orderPk, statusFrom }, this.ob);
GridHelper.CopyDataToDatatable(ref dt, ref this.slm_order_line, true);
GridHelper.CopyDataToDatatable(ref deliveryDt, ref this.slm_order_line_delivery, true);
//不同颜色区分是否有效数据
Infragistics.Win.UltraWinGrid.UltraGridRow row = null;
for (int i = 0; i < ultraGridOrderLine.Rows.Count; i++)
{
row = ultraGridOrderLine.Rows[i];
//主表不可编辑
DataRow[] dr = slm_order_line_delivery.Select("ORD_LN_PK = '" + row.Cells["ORD_LN_PK"].Value.ToString() + "'", "DELVRY_EDATE DESC");
if (dr.Length > 0)
{
row.Cells["DELVRY_EDATE"].Value = dr[0]["DELVRY_EDATE"].ToString();
}
for (int k = 0; k < ultraGridOrderLine.Rows[i].Cells.Count; k++)
{
ultraGridOrderLine.Rows[i].Cells[k].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
}
//从表不可编辑。
string strStatus = "满足";
UltraGridRow rowChind = null;
ArrayList list = new ArrayList();
for (int j = 0; j < ultraGridOrderLine.Rows[i].ChildBands[0].Rows.Count; j++)
{
rowChind = ultraGridOrderLine.Rows[i].ChildBands[0].Rows[j];
if ("等待".Equals(rowChind.Cells["PRDCYC_MEET"].Value.ToString()))
{
list.Add("a");
}
else if ("不满足".Equals(rowChind.Cells["PRDCYC_MEET"].Value.ToString()))
{
list.Add("b");
}
}
if (list.Count <= 0)
{
strStatus = "满足";
}
else
{
if (list.Contains("b"))
{
strStatus = "不满足";
}
else
{
strStatus = "等待";
}
}
//STATUS,状态字段:
row.Cells["STATUS"].Value = strStatus;
row.Cells["PlineSelect"].Value = "产线确认";
//交货量差
// row.Cells["DELVRY_RANGE"].Value = "-" + row.Cells["DELVRY_RANGE_MIN"].Value.ToString() + row.Cells["DELVRY_RANGE_TPE"].Value.ToString() + "," + "+" +
// row.Cells["DELVRY_RANGE_MAX"].Value.ToString() + row.Cells["DELVRY_RANGE_TPE"].Value.ToString();
}
//列自适应
UltraGridColumn[] col = new UltraGridColumn[] { ultraGridOrderLine.DisplayLayout.Bands[0].Columns["LEN_DESC"], ultraGridOrderLine.DisplayLayout.Bands[0].Columns["STD_NAME"]
, ultraGridOrderLine.DisplayLayout.Bands[0].Columns["PSC_DESC"] };
GridHelper.RefreshAndAutoSizeExceptColumns(ultraGridOrderLine, col);
ultraGridOrderLine.UpdateData();
}
///
/// 带出合同行信息和交货行信息。
///
///
///
private void ultraGHead_AfterRowActivate(object sender, EventArgs e)
{
if (ultraGHead.ActiveRow != null)
{
string orderPk = ultraGHead.ActiveRow.Cells["ORD_PK"].Value.ToString();
bindSlmOrderLine(orderPk);
}
dataTable2.Clear();
dataTable1.Clear();
}
private void uchkOrderNo_CheckedChanged(object sender, EventArgs e)
{
utxtOrderNo.ReadOnly = !uchkOrderNo.Checked;
}
///
/// 创建日期是否有效
///
///
///
private void uchkDate_CheckedChanged(object sender, EventArgs e)
{
if (uchkDate.Checked)
{
udtStart.ReadOnly = false;
udtEnd.ReadOnly = false;
}
else
{
udtStart.ReadOnly = true;
udtEnd.ReadOnly = true;
}
}
///
/// cellChange事件
///
///
///
private void ultraGridOrderLine_CellChange(object sender, CellEventArgs e)
{
if (e.Cell.Column.Key.Equals("DELVRY_EDATE"))
return;
ultraGridOrderLine.UpdateData();
if (e.Cell.Column.Key.Equals("CHK"))
{
if (Convert.ToBoolean(e.Cell.Value))
{
for (int i = 0; i < e.Cell.Row.Cells.Count; i++)
{
e.Cell.Row.Cells[i].Activation = Activation.AllowEdit;
}
}
else
{
for (int i = 0; i < e.Cell.Row.Cells.Count; i++)
{
if (e.Cell.Row.Cells[i].Column.Key.Equals("CHK"))
{
e.Cell.Row.Cells[i].Activation = Activation.AllowEdit;
}
else
e.Cell.Row.Cells[i].Activation = Activation.ActivateOnly;
}
}
}
}
private string deliveryInsertPk = "";
private int deliveryInsertSeq = 0;
///
/// 子表新增行时触发事件
///
///
///
private void ultraGridOrderLine_AfterRowInsert(object sender, RowEventArgs e)
{
// UltraGridRow ugr = ultraGridOrderLine.ActiveRow;
// if (ugr == null)
// return;
// if (!ugr.HasParent())
// return;
// if (Convert.ToBoolean(ugr.Cells["CHK"].Value))
// {
// for (int i = 0; i < ugr.Cells.Count; i++)
// {
// ugr.Cells[i].Activation = Activation.AllowEdit;
// }
// }
// else
// {
// for (int i = 0; i < ugr.Cells.Count; i++)
// {
// if (ugr.Cells[i].Column.Key.Equals("CHK"))
// ugr.Cells[i].Activation = Activation.AllowEdit;
// else
// ugr.Cells[i].Activation = Activation.ActivateOnly;
// }
// }
// string ordLnPk = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["ORD_LN_PK"].Value.ToString();
// //判断全局变量是否为空,不为空,则001+1,补0,组合,赋值即可。
// if ("".Equals(deliveryInsertPk))
// {
// //从数据库中去获取最大交货行主键,存入全局变量。35位+001
// string deliveryMaxPk = GetDeliveryMaxPk(ordLnPk);
// if ("".Equals(deliveryMaxPk))
// {
// deliveryInsertPk = ordLnPk;
// deliveryInsertSeq = 1;
// }
// else
// {
// deliveryInsertPk = ordLnPk;
// deliveryInsertSeq = Convert.ToInt32(deliveryMaxPk.Substring(35)) + 1;
// }
// }
// else
// {
// deliveryInsertSeq++;
// }
// string deliveryInsertSeqStr = deliveryInsertSeq.ToString();
// while (deliveryInsertSeqStr.Length < 3)
// {
// deliveryInsertSeqStr = "0" + deliveryInsertSeqStr;
// }
// //ORD_PK,ORD_LN_PK,ORD_LN_DLY_PK,DELIVERY_NO,DELVRY_EDATE,DELVRY_QTY,ORDER_UNIT,WGT_ESTMT,RECEIV_NO,RECEIV_NM
// e.Row.Cells["ORD_PK"].Value = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["ORD_PK"].Value;
// e.Row.Cells["ORD_LN_PK"].Value = ordLnPk;
// e.Row.Cells["ORD_LN_DLY_PK"].Value = ordLnPk + deliveryInsertSeqStr;
// e.Row.Cells["DELIVERY_NO"].Value = deliveryInsertSeqStr;
// e.Row.Cells["DELVRY_EDATE"].Value = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["DELVRY_EDATE"].Value;
// e.Row.Cells["DELVRY_QTY"].Value = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["DELVRY_QTY"].Value;
// e.Row.Cells["ORDER_UNIT"].Value = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["ORDER_UNIT"].Value;
// e.Row.Cells["WGT_ESTMT"].Value = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["WGT_ESTMT"].Value;
// e.Row.Cells["RECEIV_NO"].Value = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["RECEIV_NO"].Value;
// e.Row.Cells["RECEIV_NM"].Value = e.Row.ParentRow.ChildBands[0].Rows[0].Cells["RECEIV_NM"].Value;
}
///
/// 获取当前选中合同行向下最大交货行主键
///
///
///
private string GetDeliveryMaxPk(string ordLnPk)
{
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.GetDeliveryMaxPk", new Object[] { ordLnPk }, this.ob);
return dt.Rows[0][0].ToString();
}
private void ultraGridOrderLine_AfterRowActivate(object sender, EventArgs e)
{
UltraGridRow ugr = this.ultraGridOrderLine.ActiveRow;
if (ugr != null)
{
if (ugr.HasParent())
{
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.getMscPLPCLST", new object[] { ugr.Cells["ORD_LN_DLY_PK"].Value.ToString() }, this.ob);
GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true);
if (dt == null || dt.Rows.Count <= 0)
dataTable2.Clear();
if (Convert.ToBoolean(ugr.Cells["CHK"].Value))
{
for (int i = 0; i < ugr.Cells.Count; i++)
{
ugr.Cells[i].Activation = Activation.AllowEdit;
}
}
else
{
for (int i = 0; i < ugr.Cells.Count; i++)
{
if (ugr.Cells[i].Column.Key.Equals("CHK"))
{
ugr.Cells[i].Activation = Activation.AllowEdit;
}
else
ugr.Cells[i].Activation = Activation.ActivateOnly;
}
}
}
else
{
deliveryInsertPk = "";
deliveryInsertSeq = 0;
dataTable2.Clear();
dataTable1.Clear();
for (int i = 0; i < ugr.ChildBands[0].Rows.Count; i++)
{
ugr.ChildBands[0].Rows[i].Cells["CHK"].Value = true;
}
}
}
//ultraGridOrderLine.UpdateData();
}
///
/// 交货期分析 这里曾经出现一个70行的合同 计算过久导致服务端与客户端失去联系 从而报错! 所以后来改为单行分析。
///
private void DoCycle()
{
UltraGridRow ugr = ultraGHead.ActiveRow; //合同头GRID
if (ugr == null)
{
MessageUtil.ShowWarning("请选择您要分析的合同!");
return;
}
this.Cursor = Cursors.WaitCursor;
string ordPk = ugr.Cells["ORD_PK"].Value.ToString();
foreach (UltraGridRow row in ultraGridOrderLine.Rows)
{
string ordLnPk = row.Cells["ORD_LN_PK"].Value.ToString();
CoreClientParam ccp = new CoreClientParam();
ccp.IfShowErrMsg = false;
ccp.ServerName = "com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview";
ccp.MethodName = "castWell";
ccp.ServerParams = new object[] { ordPk, ordLnPk, CustomInfo };
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp != null)
{
if (ccp.ReturnCode == -1)
{
MessageBox.Show(ccp.ReturnInfo, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
row.Activate();
row.ExpandAll();
this.Cursor = Cursors.Default;
return;
}
}
}
doQuery();
foreach (UltraGridRow uRow in ultraGHead.Rows)
{
if (uRow.Cells["ORD_PK"].Value.ToString().Equals(ordPk))
{
uRow.Activate();
foreach (UltraGridRow uLineRow in ultraGridOrderLine.Rows)
{
uLineRow.ExpandAll();
}
break;
}
}
this.Cursor = Cursors.Default;
}
private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
{
UltraGridRow ugr = ultraGrid1.ActiveRow;
UltraGridRow ugrLine = ultraGridOrderLine.ActiveRow;
UltraGridRow ugrHead = ultraGHead.ActiveRow;
if (ugr == null)
{
dataTable2.Clear();
}
if (ugr == null || ugrLine == null || ugrHead == null)
return;
string designKey = ugrLine.Cells["DESGIN_KEY"].Value.ToString();
string processCode = ugr.Cells["PROCESS_CODE"].Value.ToString();
string saleOrg = ugrHead.Cells["SALE_ORG"].Value.ToString();
string time = ugr.Cells["REVIEW_ASK"].Value.ToString();
if (time == "")
return;
DateTime date = Convert.ToDateTime(time);
int year = date.Year;
int month = date.Month;
string wellCode = "";
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.getWellCode", new object[] { designKey, processCode }, this.ob);
if (dt != null && dt.Rows.Count > 0)
{
wellCode = dt.Rows[0][0].ToString();
}
else
{
MessageUtil.ShowWarning("找不到对应的产能井!");
return;
}
//DesignKey -- Wellcode ---消耗信息,月产值信息
DataTable wellDt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.getWellDetail", new object[] { wellCode, saleOrg, year, month }, this.ob);
GridHelper.CopyDataToDatatable(ref wellDt, ref dataTable2, true);
}
private void ultraGridOrderLine_ClickCellButton(object sender, CellEventArgs e)
{
UltraGridRow ugr = ultraGridOrderLine.ActiveRow;
if (ugr == null || ugr.HasParent())
return;
if (e.Cell.Column.Key.Equals("PlineSelect"))
{
string ordLnPk = ugr.Cells["ORD_LN_PK"].Value.ToString().Trim();
frmPlineSelected fps = new frmPlineSelected(ordLnPk, this.ob);
fps.ShowDialog();
}
}
private void utxtOrderNo_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 13)
doQuery();
}
///
/// 查询出技术评审通过的合同头信息。
///
private void ChgeQuery()
{
string orderNo = utxtOrderNo.Text.Trim();
string isDeliveryD = "";
if (uchkIsDeliveryD.Checked)
{
isDeliveryD = "0";
}
else
{
isDeliveryD = "1";
}
string orderStart = "1000-01-01 00:00:00";
string orderEnd = "9999-12-31 23:59:59";
TimeSpan ts = udtEnd.DateTime.Subtract(udtStart.DateTime);
if (ts.TotalDays < 0)
{
MessageBox.Show("创建开始日期必须小于创建结束日期。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
return;
}
string valid = "1";
if (chkValid.Checked)
{
valid = "0";
}
else
{
valid = "1";
}
if (uchkDate.Checked)
{
orderStart = udtStart.DateTime.ToShortDateString() + " 00:00:01";
orderEnd = udtEnd.DateTime.ToShortDateString() + " 23:59:59";
}
string[] arr = this.dataArr;
string supp = this.CustomInfo.Contains("120504") ? "120504" : "";
if (orderNo.StartsWith("TH"))
{
supp = "120504";
}
DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.ReviewForm.CoreDeliveryReview.doQuery", new Object[] { orderNo, isDeliveryD, orderStart, orderEnd, valid, statusFrom, arr, supp }, this.ob);
GridHelper.CopyDataToDatatable(ref dt, ref this.orderHeadDt, true);
dataTable1.Clear();
string status = "满足";
string status1 = "不满足";
string status2 = "等待";
if (dt.Rows.Count > 0)
{
foreach (UltraGridRow row in ultraGHead.Rows)
{
if ("1".Equals(row.Cells["ISDELIVERYD"].Value))
{
row.Cells["ISDELIVERYD"].Value = status;
}
else if ("2".Equals(row.Cells["ISDELIVERYD"].Value))
{
row.Cells["ISDELIVERYD"].Value = status2;
}
else
{
row.Cells["ISDELIVERYD"].Value = status1;
}
if ("1".Equals(row.Cells["CUSTOMER_MODEL_FL"].Value))
{
row.Cells["CUSTOMER_MODEL_FL"].Value = status;
}
else
{
row.Cells["CUSTOMER_MODEL_FL"].Value = status1;
}
if ("1".Equals(row.Cells["VALIDFLAG"].Value))
{
row.Cells["VALIDFLAG"].Value = true;
row.Appearance.ForeColor = Color.Black;
}
else
{
row.Cells["VALIDFLAG"].Value = false;
row.Appearance.ForeColor = Color.Red;
}
}
//列自适应
GridHelper.RefreshAndAutoSizeExceptRows(ultraGHead, new UltraGridColumn[] { });
ultraGHead.UpdateData();
}
else
{
slm_order_line_delivery.Rows.Clear();
slm_order_line.Rows.Clear();
}
}
}
}