| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398 |
- 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 Infragistics.Win.UltraWinGrid;
- using CoreFS.CA06;
- using Core.Mes.Client.Comm.Tool;
- using Core.StlMes.Client.PlnSaleOrd.Entity;
- using Infragistics.Win;
- using System.Collections;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm;
- using Infragistics.Win.UltraWinEditors;
- using Core.Mes.Client.Comm.Control;
- using com.steering.pss.plnsaleord.processOrder.entity;
- namespace Core.StlMes.Client.PlnSaleOrd
- {
- public partial class FrmPlnProcOrdJgx : FrmBase
- {
- UltraComboEditor uceA = new UltraComboEditor();
- //用于计算可分离容器的大小。
- private int _splitterDistance = 0;
- private bool _groupBox2ExpandedChanged = false;
- public FrmPlnProcOrdJgx()
- {
- this.IsLoadUserView = true;
- InitializeComponent();
- EntityHelper.ShowGridCaption<PlnOrdJgxSPineEntity>(ultraGridJgxOrd.DisplayLayout.Bands[0]);
- System.Threading.Thread t = new System.Threading.Thread(setGridColunmName);
- t.Start();
- }
- private void setGridColunmName()
- {
- System.Threading.Thread.Sleep(3000);
- if (!this.IsDisposed)
- {
- EntityHelper.ShowGridCaption<PlnOrdJgxSPineEntity>(ultraGridJgxOrd.DisplayLayout.Bands[0]);
- }
- }
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- base.ToolBar_Click(sender, ToolbarKey);
- switch (ToolbarKey)
- {
- case "Query": //查询
- DoQuery();
- break;
- case "ModifyPine": //修改产线
- DoModifyPine();
- break;
- case "InOutWl": //小时能力物料表维护
- DoInOutWl();
- break;
- case "Export":
- PlanComm.Export(ref ultraGridJgxOrd, "管加工" + DateTime.Now.ToString("yyyyMMdd"));
- break;
- case "ModifyGroupPine":
- DoModifyGroupPline();
- break;
- case "RefresDate"://刷新加载数据
- RefresDate();
- DoQuery();
- break;
- case "Close": //关闭
- this.Close();
- break;
- }
- }
- private void FrmPlnProcOrdJgx_Load(object sender, EventArgs e)
- {
- Init();
- RefresDate();
- }
- private void Init()
- {
- this.Controls.Add(uceA);
- uceA.Visible = false;
- ultraGridJgxOrd.DisplayLayout.Bands[0].Columns["NextGx"].Style =
- Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- comQueryPandProcOrd1.ultraDateTimeRollMonth.Value = DateTime.Now;
- comQueryPandProcOrd1.checkBoxIsConfirm.Visible = true;
- PlanComm.setGridActivation(ultraGridJgxOrd.DisplayLayout.Bands[0], "CHC", "PlineCode");
- PlanComm.setGridActivation(ultraGridJgOrd.DisplayLayout.Bands[0]);
- 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(ultraGridJgxOrd.DisplayLayout.Bands[0], 5, 2, "Outdiameter",
- "Wallthick", "Aimwallthick", "Lengthmax", "Lengthmin", "Aimlength",
- "Getrate", "LengthmaxIn", "LengthminIn");
- PlanComm.setGridDigitalCol(ultraGridJgxOrd.DisplayLayout.Bands[0], 5, 3, "WeigthS",
- "MatchWt", "BuyplanWt", "ReqProdWt", "Finishweight");
- PlanComm.setGridDigitalCol(ultraGridJgxOrd.DisplayLayout.Bands[0], 5, 0, "NumS",
- "MatchNum", "ReqProdNum");
- }
- /// <summary>
- /// 刷新数据加载
- /// </summary>
- private void RefresDate()
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx.queryPineBase",
- new object[] { "G" }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- ultraGridJgxOrd.DisplayLayout.Bands[0].Columns["PlineCode"].ValueList
- = PlanComm.GeneralValuelist(ref dt, "PLINE_CODE", "PLINE_NAME");
- ultraGridJgxOrd.DisplayLayout.Bands[0].Columns["PlineCode"].Style =
- Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- }
- DataTable dtPro = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx.queryBaseProcess",
- new object[] { }, this.ob);
- if (dtPro != null && dtPro.Rows.Count > 0)
- {
- uceA.DataSource = dtPro;
- uceA.DisplayMember = "PROCESS_DESC";
- uceA.ValueMember = "PROCESS_CODE";
- ultraGridJgxOrd.DisplayLayout.Bands[0].Columns["NextGx"].EditorComponent
- = uceA;
- }
- }
- /// <summary>
- /// 查询
- /// </summary>
- private void DoQuery()
- {
- ArrayList param = new ArrayList();
- string strfinish = "";//完成情况
- if (comQueryPandProcOrd1.checkBoxRollMonth.Checked)
- {
- param.Add(comQueryPandProcOrd1.ultraDateTimeRollMonth.DateTime.ToString("yyyy-MM"));
- }
- else
- {
- param.Add("");
- }
- if (comQueryPandProcOrd1.checkBoxForReqORDER_NO.Checked)
- {
- param.Add(comQueryPandProcOrd1.ctrlForQueryORDER_NO.Text.Trim());
- }
- else
- {
- param.Add("");
- }
- if (comQueryPandProcOrd1.checkBoxFinish.Checked)
- {
- strfinish = comQueryPandProcOrd1.ultraComboFinishEditor.Value.ToString();
- }
- bool haveJg = comQueryPandProcOrd1.checkBoxIsConfirm.Checked;
- List<PlnOrdJgxSPineEntity> listSource = EntityHelper.GetData<PlnOrdJgxSPineEntity>
- ("com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx.queryPlnJgxOrd",
- new object[] { param, strfinish, haveJg }, this.ob);
- plnOrderJgxEntityBindingSource.DataSource = listSource;
- }
- /// <summary>
- /// 修改产线
- /// </summary>
- private void DoModifyPine()
- {
- try
- {
- int defailNum = 0;
- string messageErr = "";
- ArrayList list = new ArrayList();
- ultraGridJgxOrd.UpdateData();
- IQueryable<UltraGridRow> checkRows = ultraGridJgxOrd.Rows.AsQueryable().Where(" CHC = 'True' ");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未勾选合同!");
- return;
- }
- PlanComm.WaitFromOpen(this.Cursor);
- foreach (UltraGridRow uRow in checkRows)
- {
- DataTable dtStatus = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx.queryProcOrdStatus",
- new object[] { uRow.Cells["ProOrderNo"].Value.ToString(), uRow.Cells["GxPlanNo"].Value.ToString() }, this.ob);
- if (dtStatus == null || dtStatus.Rows.Count <= 0)
- {
- defailNum++;
- continue;
- }
- if (!dtStatus.Rows[0]["EXE_STATUS"].ToString().Equals("0"))
- {
- messageErr = "合同:" + uRow.Cells["ProOrderNo"].Value.ToString() + "已排产,不能修改!";
- defailNum++;
- continue;
- }
- DataTable dtPline = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx.queryPineBaseId",
- new object[] { uRow.Cells["PlineCode"].Value.ToString() }, this.ob);
- if (dtPline == null || dtPline.Rows.Count <= 0)
- {
- messageErr = "未找到产线:" + uRow.Cells["PlineCode"].Text + "信息。";
- defailNum++;
- continue;
- }
- if (!dtStatus.Rows[0]["GROUP_JGX"].ToString().Equals(dtPline.Rows[0]["GROUP_PLAN"].ToString()))
- {
- messageErr = "产线:" + uRow.Cells["PlineCode"].Text + "不属于"
- + dtStatus.Rows[0]["GROUP_PLAN"].ToString() + "组。";
- defailNum++;
- continue;
- }
- PlnOrderJgxSEntity jgxSEntity = new PlnOrderJgxSEntity();
- jgxSEntity.ProOrderNo = uRow.Cells["ProOrderNo"].Value.ToString();
- jgxSEntity.GxPlanNo = uRow.Cells["GxPlanNo"].Value.ToString();
- jgxSEntity.PlineCode = uRow.Cells["PlineCode"].Value.ToString();
- list.Add(jgxSEntity);
- }
- 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.processOrder.CorePlnProcOrdJgx";
- ccp.MethodName = "updateJgxOrdPline";
- ccp.ServerParams = new object[] { list };
- ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp.ReturnCode != -1)
- {
- if (defailNum == 0)
- {
- MessageUtil.ShowTips("保存成功,共" + list.Count + "条。");
- }
- else
- {
- MessageUtil.ShowTips(list.Count + "条保存成功," + defailNum + "条保存失败。\n" + messageErr);
- }
- }
- else
- {
- MessageUtil.ShowTips("保存失败,共" + list.Count + "条。");
- }
- }
- catch (Exception ex)
- {
- PlanComm.WaitFromColse(this.Cursor);
- if (!(ex is MESException))
- {
- MessageUtil.ShowError(ex.Message);
- }
- }
- DoQuery();
- }
- /// <summary>
- /// 修改产线分组
- /// </summary>
- private void DoModifyGroupPline()
- {
- ultraGridJgxOrd.UpdateData();
- ArrayList list = new ArrayList();
- IQueryable<UltraGridRow> checkRows = ultraGridJgxOrd.Rows.AsQueryable().Where(" CHC = 'True' ");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未勾选任何行!");
- return;
- }
- PlanComm.WaitFromOpen(this.Cursor);
- foreach (UltraGridRow uRow in checkRows)
- {
- PlnOrderJgxSEntity jgxSEntity = new PlnOrderJgxSEntity();
- jgxSEntity.ProOrderNo = uRow.Cells["ProOrderNo"].Value.ToString();
- jgxSEntity.GxPlanNo = uRow.Cells["GxPlanNo"].Value.ToString();
- jgxSEntity.PlineCode = uRow.Cells["PlineCode"].Value.ToString();
- list.Add(jgxSEntity);
- }
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx";
- ccp.MethodName = "updatePlinGroup";
- ccp.ServerParams = new object[] { list };
- ccp = this.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();
- }
- }
- /// <summary>
- /// 小时能力维护
- /// </summary>
- private void DoInOutWl()
- {
- UltraGridRow ugr = ultraGridJgxOrd.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- FrmBaseMaterialIPl ipl = new FrmBaseMaterialIPl(ugr.Cells["InwlId"].Value.ToString(),
- ugr.Cells["OutwlId"].Value.ToString(), this.ob);
- ipl.ShowDialog();
- }
- /// <summary>
- /// 查询接箍合同
- /// </summary>
- private void DoQueryJg(string orderNo, string orderSeq, string deliveryNo)
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx.queryJgOrdInf",
- new object[] { orderNo, orderSeq, deliveryNo }, this.ob);
- GridHelper.CopyDataToDatatable(dt, dataTableJg, true);
- }
- private void ultraGridJgxOrd_AfterSelectChange(object sender, Infragistics.Win.UltraWinGrid.AfterSelectChangeEventArgs e)
- {
- foreach (UltraGridRow uRow in ultraGridJgxOrd.Selected.Rows)
- {
- if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow))
- {
- uRow.Cells["CHC"].Value = true;
- }
- }
- }
- private void ultraGridJgxOrd_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = ultraGridJgxOrd.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.CorePlnProcOrdJgx.queryJgxProcMaterialPine",
- new object[] { ugr.Cells["ProOrderNo"].Value.ToString() }, this.ob);
- if (dt != null)
- {
- ValueList vlistSteel = PlanComm.GeneralValuelist(ref dt, "PLINE_CODE", "PLINE_NAME");
- ugr.Cells["PlineCode"].ValueList = vlistSteel;
- }
- DoQueryJg(ugr.Cells["OrderNo"].Value.ToString(), ugr.Cells["OrderSeq"].Value.ToString(),
- ugr.Cells["DeliveryNo"].Value.ToString());
- }
- private void ultraExpandableGroupBox1_ExpandedStateChanged(object sender, EventArgs e)
- {
- _groupBox2ExpandedChanged = true;
- if (ultraExpandableGroupBox1.Expanded == false)
- {
- splitContainer1.SplitterDistance = this.Height;
- }
- else
- {
- splitContainer1.SplitterDistance = _splitterDistance;
- }
- _groupBox2ExpandedChanged = false;
- }
- private void splitContainer1_SplitterMoved(object sender, SplitterEventArgs e)
- {
- if (_groupBox2ExpandedChanged == false)
- {
- _splitterDistance = splitContainer1.SplitterDistance;
- if (splitContainer1.SplitterDistance >= 1)
- {
- ultraExpandableGroupBox1.Expanded = true;
- }
- }
- if (splitContainer1.Panel2Collapsed)
- {
- ultraExpandableGroupBox1.Visible = false;
- }
- }
- }
- }
|