| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062 |
- 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.Tool;
- using com.steering.pss.plnsaleord.order.model;
- using System.Collections;
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Server;
- using Infragistics.Win.UltraWinGrid;
- using Core.Mes.Client.Comm;
- using Infragistics.Win;
- namespace Core.StlMes.Client.PlnSaleOrd
- {
- public partial class ComPlnJGDJDeal : UserControl
- {
- int inNum = 0;
- public OpeBase _ob = null;
- public ComPlnJGDJDeal()
- {
- InitializeComponent();
- Init();
- }
- /// <summary>
- /// 初始化
- /// </summary>
- public void Init()
- {
- EntityHelper.ShowGridCaption<PlnSaleordEntity>(ultraGridSaleOrder.DisplayLayout.Bands[0]);
- EntityHelper.ShowGridCaption<PlnPorderBlReqEntity>(ultraGridBl.DisplayLayout.Bands[0]);
- comOrdJGDJPanel1.ctrlForQueryPORDERSTATUS.SelectedIndex = 0;
- ultraGridSaleOrder.DisplayLayout.Bands[0].Columns["BlGroupNum"].EditorComponent = ultraFileLook;
- ultraGridSaleOrder.DisplayLayout.Bands[0].Columns["BlGroupNum"].ButtonDisplayStyle = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
- PlanComm.setGridActivation(this.ultraGridSaleOrder.DisplayLayout.Bands[0], "CHC");
- PlanComm.setGridActivation(this.ultraGridBl.DisplayLayout.Bands[0], "CHC", "Aimwallthick", "Lengthmax", "Lengthmin", "Aimlength", "JgblReqNum");
- PlanComm.setGridActivation(this.ultraGridJgOrd.DisplayLayout.Bands[0], "CHC");
- PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 7, 3,
- "OrderQty", "Orderweight", "Planweight", "Paydownweight",
- "ReqQtysum", "ConfirmWtSum", "PaydownWtMin", "PaydownWtMax");
- PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 7, 2,
- "Totlength", "TotlengthM");
- PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 5, 2,
- "Outdiameter", "Wallthick", "Lengthmax", "Lengthmin", "LenToendMin",
- "LenToendMax", "LengthJg", "HeightOrdMax", "HeightOrdMin");
- PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 5, 0,
- "Ordernum", "PaydownNum");
- PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 3, 6, "WeightPerM");
- PlanComm.setGridSummarySet(ultraGridSaleOrder, 3, "OrderQty", "Orderweight", "Planweight",
- "ReqQtysum", "ConfirmWtSum", "PaydownWtMin", "PaydownWtMax", "Paydownweight");
- PlanComm.setGridSummarySet(ultraGridSaleOrder, 2, "TotlengthM");
- PlanComm.setGridSummarySet(ultraGridSaleOrder, 0, "Ordernum", "PaydownNum", "TotlengthM");
- PlanComm.setGridDigitalCol(ultraGridJgOrd.DisplayLayout.Bands[0], 5, 2,
- "MIN_D_JG", "MAX_D_JG", "DIAMETER_JG", "LENGTH_JG",
- "HEIGHT_JG", "WEIGHT_JG", "MIN_D", "MIN_H", "DIAMETER",
- "DIAMETER_PL", "HEIGHT_PL", "LENGTH_MIN", "LENGTH_MAX",
- "MIN_H_CP", "MAX_H_CP", "MIN_D_CP", "MAX_D_CP", "CHECK_J_VAL");
- PlanComm.setGridDigitalCol(ultraGridBl.DisplayLayout.Bands[0], 5, 2,
- "Outdiameter", "Wallthick", "Aimwallthick", "Lengthmax", "Lengthmin",
- "Aimlength", "GetrateDj", "DimaterYlg", "HeightYlg");
- PlanComm.setGridDigitalCol(ultraGridBl.DisplayLayout.Bands[0], 7, 3,
- "Singleweight", "JgblReqWeight", "Matchweight", "PlanWeight", "JgcutplanWt");
- PlanComm.setGridDigitalCol(ultraGridBl.DisplayLayout.Bands[0], 5, 0,
- "JgblReqNum", "Matchnum", "JgcutplanNum");
- }
- /// <summary>
- /// 获取查询条件信息
- /// </summary>
- /// <returns>查询条件信息</returns>
- public ArrayList GetQueryCondition()
- {
- ArrayList ary = new ArrayList();
- string strRollmonth = "";
- string strAcceptNo = "";//接收批次号
- string strOrderNo = ""; //合同号
- string strOrderStatus = ""; //合同状态
- string haveJg = ""; //是否有接箍
- string haveDj = ""; //是否有短节
- if (comOrdJGDJPanel1.checkBoxHvJg.Checked)
- {
- haveJg = "1";
- }
- if (comOrdJGDJPanel1.checkBoxHvDj.Checked)
- {
- haveDj = "1";
- }
- if (comOrdJGDJPanel1.checkBoxAcceptNo.Checked)
- {
- strAcceptNo = comOrdJGDJPanel1.ultraTextEditorAcceptNo.Text.Trim();
- }
- if (comOrdJGDJPanel1.checkBoxForReqPORDERSTATUS.Checked)
- {
- strOrderStatus = comOrdJGDJPanel1.ctrlForQueryPORDERSTATUS.Value.ToString();
- }
- if (comOrdJGDJPanel1.checkBoxForReqORDER_NO.Checked)
- {
- strOrderNo = comOrdJGDJPanel1.ctrlForQueryORDER_NO.Text.Trim();
- }
- if (comOrdJGDJPanel1.checkBoxRollMonth.Checked)
- {
- strRollmonth = comOrdJGDJPanel1.ultraDateTimeRollMonth.DateTime.ToString("yyyy-MM");
- }
- ary.Add(strRollmonth);
- ary.Add(strAcceptNo);
- ary.Add(strOrderNo);
- ary.Add(strOrderStatus);
- ary.Add(haveJg);
- ary.Add(haveJg);
- ary.Add(haveDj);
- ary.Add(haveDj);
- return ary;
- }
- /// <summary>
- /// 根据信息栏查询
- /// </summary>
- /// <param name="ary">查询条件信息</param>
- public void DoQuery(ArrayList ary)
- {
- if (ary == null)
- {
- return;
- }
- bindingSourceSaleOrd.DataSource = EntityHelper.GetData<PlnSaleordEntity>
- ("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.querySaleOrder",
- new object[] { ary }, _ob);
- DoQueryDjBl(ary);
- DoQueryJgOrd(ary);
- }
- /// <summary>
- /// 短节备料查询
- /// </summary>
- /// <param name="ary"></param>
- public void DoQueryDjBl(ArrayList ary)
- {
- if (ary == null)
- {
- return;
- }
- bindingSourceBlOrd.DataSource = EntityHelper.GetData<PlnPorderBlReqEntity>
- ("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.queryDjBlNeed",
- new object[] { ary }, _ob);
- foreach (UltraGridRow item in ultraGridBl.Rows)
- {
- if (item.Cells["Planstatus"].Text.Equals("待处理"))
- {
- //控制壁厚
- item.Cells["Aimwallthick"].Appearance.BackColor = Color.FromArgb(255, 255, 192);
- item.Cells["Aimwallthick"].Appearance.BackHatchStyle = BackHatchStyle.None;
- item.Cells["Aimwallthick"].Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
- //最大长度
- item.Cells["Lengthmax"].Appearance.BackColor = Color.FromArgb(255, 255, 192);
- item.Cells["Lengthmax"].Appearance.BackHatchStyle = BackHatchStyle.None;
- item.Cells["Lengthmax"].Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
- //最小长度
- item.Cells["Lengthmin"].Appearance.BackColor = Color.FromArgb(255, 255, 192);
- item.Cells["Lengthmin"].Appearance.BackHatchStyle = BackHatchStyle.None;
- item.Cells["Lengthmin"].Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
- //控制长度
- item.Cells["Aimlength"].Appearance.BackColor = Color.FromArgb(255, 255, 192);
- item.Cells["Aimlength"].Appearance.BackHatchStyle = BackHatchStyle.None;
- item.Cells["Aimlength"].Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
- //备料需求支数
- item.Cells["JgblReqNum"].Appearance.BackColor = Color.FromArgb(255, 255, 192);
- item.Cells["JgblReqNum"].Appearance.BackHatchStyle = BackHatchStyle.None;
- item.Cells["JgblReqNum"].Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
- }
- else
- {
- //控制壁厚
- item.Cells["Aimwallthick"].Appearance.BackColor = Color.Transparent;
- item.Cells["Aimwallthick"].Appearance.BackHatchStyle = BackHatchStyle.Default;
- item.Cells["Aimwallthick"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
- //最大长度
- item.Cells["Lengthmax"].Appearance.BackColor = Color.Transparent;
- item.Cells["Lengthmax"].Appearance.BackHatchStyle = BackHatchStyle.Default;
- item.Cells["Lengthmax"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
- //最小长度
- item.Cells["Lengthmin"].Appearance.BackColor = Color.Transparent;
- item.Cells["Lengthmin"].Appearance.BackHatchStyle = BackHatchStyle.Default;
- item.Cells["Lengthmin"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
- //控制长度
- item.Cells["Aimlength"].Appearance.BackColor = Color.Transparent;
- item.Cells["Aimlength"].Appearance.BackHatchStyle = BackHatchStyle.Default;
- item.Cells["Aimlength"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
- //备料需求支数
- item.Cells["JgblReqNum"].Appearance.BackColor = Color.Transparent;
- item.Cells["JgblReqNum"].Appearance.BackHatchStyle = BackHatchStyle.Default;
- item.Cells["JgblReqNum"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
- }
- }
- }
- /// <summary>
- /// 修改短节备料需求
- /// </summary>
- public void DoUpdateDjBl()
- {
- int intUpdate = 0;
- ultraGridBl.UpdateData();
- IQueryable<UltraGridRow> checkRows = ultraGridBl.Rows.AsQueryable().Where("CHC = 'True'");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("请勾选短节备料需求!!");
- return;
- }
- string time = DateTime.Now.ToString();
- ArrayList list1 = new ArrayList();
- foreach (UltraGridRow item in checkRows)
- {
- if (item.Cells["Planstatus"].Text.Equals("待处理"))
- {
- intUpdate += 1;
- ArrayList list = new ArrayList();
- list.Add(item.Cells["Aimwallthick"].Value.ToString());
- list.Add(item.Cells["Lengthmax"].Value.ToString());
- list.Add(item.Cells["Lengthmin"].Value.ToString());
- list.Add(item.Cells["Aimlength"].Value.ToString());
- list.Add(item.Cells["JgblReqNum"].Value.ToString());
- list.Add(item.Cells["ReqBlId"].Value.ToString());
- list.Add(item.Cells["Outdiameter"].Value.ToString());
- list.Add(CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName());
- list.Add(time);
- list1.Add(list);
- }
- }
- if (intUpdate == 0)
- {
- MessageUtil.ShowTips("请勾选计划状态为【待处理】的短节备料需求!");
- return;
- }
- PlanComm.WaitFromOpen(this.Cursor);
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal";
- ccp.MethodName = "doUpdateDjBl";
- ccp.ServerParams = new object[] { list1};
- ccp = _ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp == null)
- {
- MessageUtil.ShowError("服务端处理失败!");
- return;
- }
- if (ccp.ReturnCode < 0)
- {
- MessageUtil.ShowError("服务端处理失败!\n" + ccp.ReturnInfo);
- return;
- }
- if (ccp.ReturnCode!=-1)
- {
- MessageUtil.ShowTips(ccp.ReturnInfo.ToString());
- if (ccp.ReturnInfo.Equals("修改短节备料需求成功!"))
- {
- DoQueryDjBl(GetQueryCondition());
- }
- }
- }
- /// <summary>
- /// 接箍合同查询
- /// </summary>
- /// <param name="ary"></param>
- public void DoQueryJgOrd(ArrayList ary)
- {
- if (ary == null)
- {
- return;
- }
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.queryJgOrder",
- new object[] { ary }, _ob);
- GridHelper.CopyDataToDatatable(dt, dataTable2, true);
- }
- /// <summary>
- /// 接箍处理
- /// </summary>
- public void DoProcessJg()
- {
- ultraGridSaleOrder.UpdateData();
- IQueryable<UltraGridRow> checkRows = ultraGridSaleOrder.Rows.AsQueryable().Where("CHC = 'True'");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未勾选合同!");
- return;
- }
- PlanComm.WaitFromOpen(this.Cursor);
- ArrayList list = new ArrayList();
- foreach (UltraGridRow uRow in checkRows)
- {
- list.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
- }
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal";
- ccp.MethodName = "tranSactionJg";
- ccp.ServerParams = new object[] { list, CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName() };
- ccp = _ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp == null)
- {
- MessageUtil.ShowError("服务端处理失败!");
- return;
- }
- if (ccp.ReturnCode < 0)
- {
- MessageUtil.ShowError("服务端处理失败!\n" + ccp.ReturnInfo);
- return;
- }
- if (ccp.ReturnObject != null)
- {
- MessageUtil.ShowTips(ccp.ReturnObject.ToString());
- DoQuery(GetQueryCondition());
- }
- }
- /// <summary>
- /// 撤消接箍处理
- /// </summary>
- public void DoCancelJg()
- {
- ultraGridSaleOrder.UpdateData();
- IQueryable<UltraGridRow> checkRows = ultraGridSaleOrder.Rows.AsQueryable().Where("CHC = 'True'");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未勾选合同!");
- return;
- }
- PlanComm.WaitFromOpen(this.Cursor);
- ArrayList list = new ArrayList();
- foreach (UltraGridRow uRow in checkRows)
- {
- list.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
- }
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal";
- ccp.MethodName = "cancelJg";
- ccp.ServerParams = new object[] { list, CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName() };
- ccp = _ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp == null)
- {
- MessageUtil.ShowError("服务端处理失败!");
- return;
- }
- if (ccp.ReturnCode < 0)
- {
- MessageUtil.ShowError("服务端处理失败!\n" + ccp.ReturnInfo);
- return;
- }
- if (ccp.ReturnObject != null)
- {
- MessageUtil.ShowTips(ccp.ReturnObject.ToString());
- DoQuery(GetQueryCondition());
- }
- }
- /// <summary>
- /// 短节处理
- /// </summary>
- public void DoProcessDj()
- {
- try
- {
- int defailNum = 0;
- string messageErr = "";
- ultraGridSaleOrder.UpdateData();
- IQueryable<UltraGridRow> checkRows = ultraGridSaleOrder.Rows.AsQueryable().Where(" CHC = 'True'");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未勾选合同!");
- return;
- }
- ArrayList paramBL = new ArrayList();
- ArrayList paramUpdate = new ArrayList();
- PlanComm.WaitFromOpen(this.Cursor);
- foreach (UltraGridRow uRow in checkRows)
- {
- DataTable dtStatus = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.querySaleStatus",
- new object[] { uRow.Cells["OrdLnDlyPk"].Value.ToString() }, _ob);
- if (dtStatus == null || dtStatus.Rows.Count <= 0)
- {
- continue;
- }
- if (dtStatus.Rows[0]["PORDERSTATUS"].ToString().CompareTo("6") < 0
- && dtStatus.Rows[0]["PORDERSTATUS"].ToString().CompareTo("0") > 0)
- {
- if (dtStatus.Rows[0]["DJBL_REQ_IS_OK"].ToString().Equals("2"))
- {
- defailNum++;
- messageErr = "合同" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString() + "没有短节!";
- continue;
- }
- if (dtStatus.Rows[0]["DJBL_REQ_IS_OK"].ToString().Equals("1"))
- {
- defailNum++;
- messageErr = "合同" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString() + "已处理短节!";
- continue;
- }
- string desginKey = uRow.Cells["DesginKey"].Value.ToString();
- if (desginKey.Equals(""))
- {
- defailNum++;
- messageErr = "合同" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString()
- + "未找到质量设计!";
- continue;
- }
- DataTable dtBl = queryBlCodeByGp(desginKey, uRow.Cells["BlGroupNum"].Value.ToString());
- ArrayList listupdate = new ArrayList();
- if (dtBl.Rows.Count > 0 && dtBl != null)
- {
- foreach (DataRow dr in dtBl.Rows)
- {
- string strCodeBl = dr["PSC_BL"].ToString();//备料码
- DataTable dtbllist = QueryBlList(strCodeBl);
- if (dtbllist != null && dtbllist.Rows.Count > 0)
- {
- PlnPorderBlReqEntity blReqEntity = new PlnPorderBlReqEntity();
- int planNum = (int)Math.Ceiling(double.Parse(dtStatus.Rows[0]["ORDERNUM"].ToString()) * (1 + double.Parse(dtStatus.Rows[0]["DELVRY_RANGE_MAX"].ToString()) / 100));
- #region 备料清单信息
- double min_d = Convert.ToDouble(dtbllist.Rows[0]["MIN_D"]);
- double min_h = Convert.ToDouble(dtbllist.Rows[0]["MIN_H"]);
- double Weight_One = PlanComm.WeightOfMi(min_d, min_h);//米单重(吨/米)
- double aimlength = (Convert.ToDouble(dtbllist.Rows[0]["MAX_L"])
- + Convert.ToDouble(dtbllist.Rows[0]["MIN_L"])) / 2;
- double singleweight = aimlength * Weight_One;//单重
- //每只备料管可切短节支数。
- int eatchBlnum = (int)(aimlength / Convert.ToDouble(uRow.Cells["Lengthmax"].Value));
- if(eatchBlnum==0)
- {
- int eatchBlnum_minL = (int)(Convert.ToDouble(dtbllist.Rows[0]["MAX_L"]) / Convert.ToDouble(uRow.Cells["Lengthmin"].Value));
- if(eatchBlnum_minL >0)
- {
- eatchBlnum = 1;
- }
- else
- {
- PlanComm.WaitFromColse(this.Cursor);
- MessageBox.Show("备料管长度范围过小,不能满足合同要求!");
- return;
- }
- }
- string specSameSale = "0";
- if (uRow.Cells["Outdiameter"].Value.ToString().Equals(dtbllist.Rows[0]["MIN_D"].ToString())
- && uRow.Cells["Wallthick"].Value.ToString().Equals(dtbllist.Rows[0]["MIN_H"].ToString())
- && uRow.Cells["Steelcode"].Value.ToString().Equals(dtbllist.Rows[0]["STEELCODE"].ToString()))
- {
- specSameSale = "1";
- }
- if(Convert.ToDouble(dtbllist.Rows[0]["MIN_L"])< Convert.ToDouble(uRow.Cells["Lengthmin"].Value))
- {
- blReqEntity.Lengthmin =uRow.Cells["Lengthmin"].Value.ToString();
- }
- else
- {
- blReqEntity.Lengthmin = dtbllist.Rows[0]["MIN_L"].ToString();
- }
- blReqEntity.CodeDjBl = strCodeBl;
- blReqEntity.Bltype = "短节备料";
- blReqEntity.OrdLnDlyPk = uRow.Cells["OrdLnDlyPk"].Value.ToString();
- blReqEntity.OrderNo = uRow.Cells["OrderNo"].Value.ToString();
- blReqEntity.OrderSeq = uRow.Cells["OrderSeq"].Value.ToString();
- blReqEntity.DeliveryNo = uRow.Cells["DeliveryNo"].Value.ToString();
- blReqEntity.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
- blReqEntity.Outdiameter = min_d.ToString();
- blReqEntity.Wallthick = min_h.ToString();
- blReqEntity.Psc = QueryPsc(dtbllist.Rows[0]["PRODUCCODE"].ToString(),
- dtbllist.Rows[0]["STD_CODE"].ToString(),
- dtbllist.Rows[0]["STEELCODE"].ToString(),
- dtbllist.Rows[0]["STD_STYLE"].ToString());
- blReqEntity.Msc = QueryPscForMsc(blReqEntity.Psc);
- blReqEntity.Singleweight = singleweight.ToString(); //单重
- #endregion
- if (planNum % eatchBlnum == 0)
- {
- int blNum = (int)(planNum / eatchBlnum);
- blReqEntity.JgblReqWeight = (blNum * singleweight).ToString();//备料需求量
- blReqEntity.JgblReqNum = blNum.ToString();//备料需求支数
- }
- else
- {
- int blNum = (int)(planNum / eatchBlnum) + 1;
- blReqEntity.JgblReqWeight = (blNum * singleweight).ToString();//备料需求量
- blReqEntity.JgblReqNum = blNum.ToString();//备料需求支数
- }
- blReqEntity.SpecSameSale = specSameSale;
- paramBL.Add(blReqEntity);
- }
- else
- {
- defailNum++;
- messageErr = "备料码:" + strCodeBl + "未找到基础信息,请查看备料码是否已作废。";
- continue;
- }
- }
- }
- //完成短节
- listupdate.Add("1");
- listupdate.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
- paramUpdate.Add(listupdate);
- }
- else
- {
- defailNum++;
- if (dtStatus.Rows[0]["PORDERSTATUS"].ToString().CompareTo("1") < 0)
- {
- messageErr = "合同:" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString()
- + "未接收!";
- }
- //else
- //{
- // messageErr = "合同:" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- // + uRow.Cells["OrderSeq"].Value.ToString()
- // + "已经生产完了!";
- //}
- continue;
- }
- }
- if (paramBL.Count == 0)
- {
- PlanComm.WaitFromColse(this.Cursor);
- MessageUtil.ShowTips("0条处理成功," + defailNum + "条处理失败。\n" + messageErr);
- return;
- }
- int isSucceed = ServerHelper.SetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.tranSactionDj",
- new object[] { paramBL, paramUpdate }, _ob);
- PlanComm.WaitFromColse(this.Cursor);
- if (isSucceed > 0)
- {
- MessageUtil.ShowTips(paramBL.Count + "条处理成功," + defailNum + "条处理失败。\n" + messageErr);
- }
- }
- catch (Exception ex)
- {
- PlanComm.WaitFromColse(this.Cursor);
- if (!(ex is MESException))
- {
- MessageBox.Show(ex.Message);
- }
- }
- DoQuery(GetQueryCondition());
- }
- /// <summary>
- /// 撤消短节合同
- /// </summary>
- public void DoCancelDj()
- {
- try
- {
- int defailNum = 0;
- string messageErr = "";
- ultraGridSaleOrder.UpdateData();
- IQueryable<UltraGridRow> checkRows = ultraGridSaleOrder.Rows.AsQueryable().Where(" CHC = 'True'");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未勾选合同!");
- return;
- }
- ArrayList list = new ArrayList();
- PlanComm.WaitFromOpen(this.Cursor);
- foreach (UltraGridRow uRow in checkRows)
- {
- bool fl = false;
- DataTable dtStatus = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.querySaleStatus",
- new object[] { uRow.Cells["OrdLnDlyPk"].Value.ToString() }, _ob);
- if (dtStatus == null || dtStatus.Rows.Count <= 0)
- {
- continue;
- }
- DataTable dtBl = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.selectBlReqStatusByPk",
- new object[] { uRow.Cells["OrdLnDlyPk"].Value.ToString() }, _ob);
- if (dtBl == null || dtBl.Rows.Count <= 0)
- {
- defailNum++;
- messageErr = "合同:" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString()
- + "没有对应的备料需求!";
- continue;
- }
- foreach (DataRow dr in dtBl.Rows)
- {
- if (!dr["PLANSTATUS"].ToString().Trim().Equals("0"))
- {
- defailNum++;
- messageErr = "合同:" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString()
- + "的备料需求:" + dr["REQ_BL_ID"].ToString() + "已经确认。";
- break;
- }
- fl = true;
- }
- if (fl && dtStatus.Rows[0]["PORDERSTATUS"].ToString().CompareTo("6") < 0)
- {
- ArrayList param = new ArrayList();
- if (!dtStatus.Rows[0]["DJBL_REQ_IS_OK"].ToString().Equals("1"))
- {
- defailNum++;
- messageErr = "合同:" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString()
- + "没有短节合同!";
- continue;
- }
- param.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
- list.Add(param);
- }
- else if (dtStatus.Rows[0]["PORDERSTATUS"].ToString().CompareTo("1") < 0)
- {
- defailNum++;
- messageErr = "合同:" + uRow.Cells["ORDER_NO"].Value.ToString()
- + "/" + uRow.Cells["ORDER_SEQ"].Value.ToString() + "还未接收!";
- continue;
- }
- else
- {
- defailNum++;
- messageErr = "合同:" + uRow.Cells["OrderNo"].Value.ToString() + "/"
- + uRow.Cells["OrderSeq"].Value.ToString()
- + "已经生产完了!";
- continue;
- }
- }
- if (list.Count == 0)
- {
- PlanComm.WaitFromColse(this.Cursor);
- MessageUtil.ShowTips("0条撤销成功," + defailNum + "条撤销失败。\n" + messageErr);
- return;
- }
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal";
- ccp.MethodName = "doCancelDj";
- ccp.ServerParams = new object[] { list };
- PlanComm.WaitFromColse(this.Cursor);
- ccp = _ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- MessageUtil.ShowTips(list.Count + "条撤销成功," + defailNum
- + "条撤销失败。\n" + messageErr);
- }
- }
- catch (Exception ex)
- {
- PlanComm.WaitFromColse(this.Cursor);
- if (!(ex is MESException))
- {
- MessageBox.Show(ex.Message);
- }
- }
- DoQuery(GetQueryCondition());
- }
- /// <summary>
- /// 短节备料确认
- /// </summary>
- public void DoConfirmDj()
- {
- ultraGridBl.UpdateData();
- ArrayList list = new ArrayList();
- IQueryable<UltraGridRow> ugrs = ultraGridBl.Rows.AsQueryable().Where("CHC = 'True'");
- if (ugrs.Count() == 0)
- {
- MessageUtil.ShowTips("请勾选需要确认的备料需求。");
- return;
- }
- foreach (UltraGridRow ugr in ugrs)
- {
- PlnPorderBlReqEntity blReqEntity = new PlnPorderBlReqEntity();
- blReqEntity.ReqBlId = ugr.Cells["ReqBlId"].Value.ToString();
- list.Add(blReqEntity);
- }
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal";
- ccp.MethodName = "doConfirmBl";
- ccp.ServerParams = new object[] { list, CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName() };
- ccp = _ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- if (ccp.ReturnObject != null && !ccp.ReturnObject.ToString().Equals(""))
- {
- MessageUtil.ShowTips(ccp.ReturnObject.ToString());
- }
- DoQuery(GetQueryCondition());
- }
- }
- /// <summary>
- /// 短节备料取消确认
- /// </summary>
- public void CanCelConfirmBl()
- {
- ultraGridBl.UpdateData();
- ArrayList list = new ArrayList();
- IQueryable<UltraGridRow> ugrs = ultraGridBl.Rows.AsQueryable().Where("CHC = 'True'");
- if (ugrs.Count() == 0)
- {
- MessageUtil.ShowTips("未勾选备料需求。");
- return;
- }
- foreach (UltraGridRow ugr in ugrs)
- {
- list.Add(ugr.Cells["ReqBlId"].Value.ToString());
- }
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal";
- ccp.MethodName = "canCelConfirmBl";
- ccp.ServerParams = new object[] { list };
- ccp = _ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- if (ccp.ReturnObject != null && !ccp.ReturnObject.ToString().Equals(""))
- {
- MessageUtil.ShowTips(ccp.ReturnObject.ToString());
- }
- DoQuery(GetQueryCondition());
- }
- }
- /// <summary>
- /// 查询备料清单表
- /// </summary>
- /// <param name="strCodeJg">备料码</param>
- public DataTable QueryBlList(string strCodeJg)
- {
- try
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.queryBlList",
- new object[] { strCodeJg }, _ob);
- return dt;
- }
- catch
- {
- return null;
- }
- }
- /// <summary>
- /// 查询产品码
- /// </summary>
- /// <param name="parms">备料品名、标准、钢级、标准类别</param>
- /// <returns>产品码</returns>
- public string QueryPsc(string producCode, string stdCode, string steelCode, string stdStyle)
- {
- try
- {
- ArrayList param = new ArrayList();
- param.Add(producCode);
- param.Add(stdCode);
- param.Add(steelCode);
- param.Add(stdStyle);
- param.Add(stdStyle);
- param.Add(stdStyle);
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.queryblPsc",
- new object[] { param }, _ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- return dt.Rows[0]["PSC"].ToString();
- }
- else
- {
- return "";
- }
- }
- catch
- {
- return "";
- }
- }
- /// <summary>
- /// 查询产品码与冶金规范对应关系\
- /// </summary>
- /// <param name="strPsc">产品码</param>
- /// <returns>冶金规范码</returns>
- public string QueryPscForMsc(string strPsc)
- {
- try
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.queryPscForMsc",
- new object[] { strPsc }, _ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- return dt.Rows[0]["MSC"].ToString();
- }
- else
- {
- return "";
- }
- }
- catch
- {
- return "";
- }
- }
- /// <summary>
- /// 查询一组短节备料码
- /// </summary>
- /// <param name="designKey">质量设计主键</param>
- /// <param name="gourpNum">备料组号</param>
- /// <returns></returns>
- private DataTable queryBlCodeByGp(string designKey, string gourpNum)
- {
- try
- {
- ArrayList param = new ArrayList();
- param.Add(designKey);
- param.Add(gourpNum);
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.queryBlCodeByGp",
- new object[] { param }, _ob);
- return dt;
- }
- catch
- {
- return null;
- }
- }
- private void ultraGridSaleOrder_AfterSelectChange(object sender,
- Infragistics.Win.UltraWinGrid.AfterSelectChangeEventArgs e)
- {
- try
- {
- for (int i = 0; i < ultraGridSaleOrder.Selected.Rows.Count; i++)
- {
- if (ultraGridSaleOrder.Selected.Rows[i].GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow))
- {
- ultraGridSaleOrder.Selected.Rows[i].Cells["CHC"].Value = true;
- }
- }
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "出错");
- }
- }
- private void ultraFileLook_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
- {
- UltraGridRow ugr = ultraGridSaleOrder.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- DataTable dtStatus = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.querySaleStatus",
- new object[] { ugr.Cells["OrdLnDlyPk"].Value.ToString() }, _ob);
- if (dtStatus == null || dtStatus.Rows.Count <= 0)
- {
- return;
- }
- if (dtStatus.Rows[0]["PORDERSTATUS"].ToString().CompareTo("4") < 0
- && dtStatus.Rows[0]["PORDERSTATUS"].ToString().CompareTo("0") > 0)
- {
- //选择短节备料组
- FrmGroupofDjBl ChooseGroup = new FrmGroupofDjBl(_ob);
- int orderNum = 0;
- int.TryParse(ugr.Cells["Ordernum"].Value.ToString(), out orderNum);
- ChooseGroup.DesginKey = ugr.Cells["DesginKey"].Value.ToString();
- ChooseGroup.GroupNum = ugr.Cells["BlGroupNum"].Value.ToString();
- ChooseGroup.OrdLnDlyPk = ugr.Cells["OrdLnDlyPk"].Value.ToString();
- ChooseGroup.ShowDialog();
- //判断是否需要更新合同备料组
- if (!ugr.Cells["BlGroupNum"].Value.ToString().Equals(ChooseGroup.GroupNum))
- {
- try
- {
- ArrayList parms = new ArrayList();
- ugr.Cells["BlGroupNum"].Value = ChooseGroup.GroupNum;
- parms.Add(ugr.Cells["BlGroupNum"].Value.ToString());
- parms.Add(ugr.Cells["OrdLnDlyPk"].Value.ToString());
- ServerHelper.SetData("com.steering.pss.plnsaleord.order.CorePlnOrdJgDjDeal.updateDjBlGroup",
- new object[] { parms }, _ob);
- }
- catch (Exception ex)
- {
- if (!(ex is MESException))
- {
- MessageBox.Show(ex.Message);
- }
- }
- }
- if (ChooseGroup.IsCreatOk)
- {
- ugr.Cells["DjblReqIsOk"].Value = "是";
- DoQuery(GetQueryCondition());
- }
- }
- }
- private void ultraGridJgOrd_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = ultraGridJgOrd.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- ultraGridSaleOrder.UpdateData();
- IQueryable<UltraGridRow> uRows = ultraGridSaleOrder.Rows.AsQueryable().Where(
- " OrdLnDlyPk = '" + ugr.Cells["ORD_LN_DLY_PK"].Value.ToString() + "'");
- ultraGridSaleOrder.ActiveRow = uRows.First();
- }
- private void ultraGridSaleOrder_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = ultraGridSaleOrder.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- string orderNo = ugr.Cells["OrderNo"].Value.ToString();
- string orderSeq = ugr.Cells["OrderSeq"].Value.ToString();
- string deliveryNo = ugr.Cells["DeliveryNo"].Value.ToString();
- IEnumerable<UltraGridRow> ugrs = ultraGridBl.Rows.Where(a =>
- a.Cells["OrderNo"].Value.ToString().Equals(orderNo)
- && a.Cells["OrderSeq"].Value.ToString().Equals(orderSeq)
- && a.Cells["DeliveryNo"].Value.ToString().Equals(deliveryNo));
- foreach (UltraGridRow uRow in this.ultraGridBl.Rows)
- {
- if (ugrs.Contains(uRow))
- {
- uRow.Appearance.ForeColor = System.Drawing.Color.DarkBlue;
- }
- else
- {
- uRow.Appearance.ForeColor = System.Drawing.Color.Black;
- }
- }
- if (ugrs.Count() > 0)
- {
- UltraGridRow ugrbl = ultraGridBl.ActiveRow;
- if (ugrbl == null)
- {
- return;
- }
- if (!ugrs.Contains(ugrbl))
- {
- ultraGridBl.ActiveRow = ugrs.First();
- }
- }
- ultraGridJgOrd.UpdateData();
- IQueryable<UltraGridRow> uRows = ultraGridJgOrd.Rows.AsQueryable().Where(
- " ORD_LN_DLY_PK = '" + ugr.Cells["OrdLnDlyPk"].Value.ToString() + "'");
- foreach (UltraGridRow uRow in ultraGridJgOrd.Rows)
- {
- if (uRows.Contains(uRow))
- {
- uRow.Appearance.ForeColor = System.Drawing.Color.DarkBlue;
- }
- else
- {
- uRow.Appearance.ForeColor = System.Drawing.Color.Black;
- }
- }
- if (uRows.Count() > 0)
- {
- UltraGridRow ugrJg = ultraGridJgOrd.ActiveRow;
- if (ugrJg == null)
- {
- return;
- }
- if (!uRows.Contains(ugrJg))
- {
- ultraGridJgOrd.ActiveRow = uRows.First();
- }
- }
- }
- private void ultraGridBl_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = ultraGridBl.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- string orderNo = ugr.Cells["OrderNo"].Value.ToString();
- string orderSeq = ugr.Cells["OrderSeq"].Value.ToString();
- string deliveryNo = ugr.Cells["DeliveryNo"].Value.ToString();
- ultraGridSaleOrder.UpdateData();
- IEnumerable<UltraGridRow> uRows = ultraGridSaleOrder.Rows.Where(a =>
- a.Cells["OrderNo"].Value.ToString().Equals(orderNo)
- && a.Cells["OrderSeq"].Value.ToString().Equals(orderSeq)
- && a.Cells["DeliveryNo"].Value.ToString().Equals(deliveryNo));
- ultraGridSaleOrder.ActiveRow = uRows.First();
- }
- public void DoExport()
- {
- if(inNum==0||inNum==1){
- GridHelper.ulGridToExcel(ultraGridSaleOrder, "销售合同");
- }
- else if (inNum == 2)
- {
- GridHelper.ulGridToExcel(ultraGridBl, "短接备料需求");
- }
- }
- private void ultraGridSaleOrder_Click(object sender, EventArgs e)
- {
- inNum = 1;
- }
- private void ultraGridSaleOrder_ClickCell(object sender, ClickCellEventArgs e)
- {
- inNum = 1;
- }
- private void ultraGridBl_Click(object sender, EventArgs e)
- {
- inNum = 2;
- }
- private void ultraGridBl_ClickCell(object sender, ClickCellEventArgs e)
- {
- inNum = 2;
- }
- }
- }
|