| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471 |
- using Core.Mes.Client.Comm;
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Tool;
- using Core.StlMes.Client.PlnSaleOrd.BaseMethod;
- using Core.StlMes.Client.PlnSaleOrd.工序排产.entity;
- using CoreFS.CA06;
- using Infragistics.Win;
- using Infragistics.Win.UltraWinEditors;
- using Infragistics.Win.UltraWinGrid;
- using System;
- using System.Collections;
- 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.工序排产
- {
- public partial class FrmProdSchAmount : FrmBase
- {
- private string[] plineCode = null;//获取产线代码
- public FrmProdSchAmount()
- {
- InitializeComponent();
- }
- private void FrmProdSchAmount_Load(object sender, EventArgs e)
- {
- BaseHelper.setOtherColumnReadOnly(ultraGridZgS, new string[] { "CHC", "AmountNum", "BilletWeight" });
- BaseHelper.setOtherColumnReadOnly(entityGrid1, new string[] { "CHC" });
- BaseHelper.setOtherColumnReadOnly(entityGrid2, new string[] { "CHC" });
- BaseHelper.setColumnBackColor(ultraGridZgS, new string[] { "AmountNum", "BilletWeight" });
- BaseHelper.InitCellPosition(ultraGridZgS, new string[] { "GxPlanNo", "OrderSeq", "DeliveryNo", "Outdiameter", "Wallthick",
- "LenRollMax", "LenRollMin", "Aimoutdiameter", "Aimwallthick", "Aimlength", "DiameterGp", "LenGpSingle", "RollLength",
- "LenCuthead", "LenCutend", "OutnumCut", "DiameterMandrel", "InWeightS", "InNumS", "WeigthS", "NumS", "AddWtIn",
- "AddNumIn", "MatchWtIn", "MatchNumIn", "GxProSeq", "PlanUsetime", "BatchedWt", "BatchedNum", "Finishweight",
- "Finishnum", "ProcessingCost", "TotalCost" ,"FinishWgt","OutdiameterZg","WallthickZg","DifTime","GpreqNum","GpreqWeight","TubeEndRatio","WeigthSMin","PlansNum","TimeDiffer","AfProNum","AmountDifference","AmountNum","AmountWet","BilletWeight" });
- BaseHelper.setUltraGridColumnMaxInput(ultraGridZgS, new string[] { "WeigthS", "WeigthSMin", "GpreqWeight", "InWeightS", "AddWtIn", "MatchWtIn", "BatchedWt", "AmountDifference", "AmountWet", "BilletWeight" });
- plineCode = PlanHelper.InitDropPlinePower("D", comPline, this.ValidDataPurviewIds, this.ob);
- PlanHelper.InitEditGroup("1218", ultraGridZgS, this, "OutsBilletFl");
- PlanHelper.InitEditGroup("1219", ultraGridZgS, this, "OutsStlPipeFl");
- InitColorStyle();
- }
- private void InitColorStyle()
- {
- ultraGridZgS.DisplayLayout.Bands[0].Columns["PlanTimeB"].Format = "yyyy-MM-dd HH:mm:ss";
- ultraGridZgS.DisplayLayout.Bands[0].Columns["PlanTimeB"].MaskInput = "yyyy-mm-dd hh:mm:ss";
- ultraGridZgS.DisplayLayout.Bands[0].Columns["PlanTimeB"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DateTime;
- //ultraGridZgS.DisplayLayout.Bands[0].Columns["AfInfo"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton;
- //ultraGridZgS.DisplayLayout.Bands[0].Columns["AfInfo"].CellAppearance.BackColor = Color.GreenYellow;
- ultraGridZgS.DisplayLayout.Bands[0].Columns["DiameterMandrel"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton;
- //ultraGridZgS.DisplayLayout.Bands[0].Columns["AfProLin"].CellAppearance.BackColor = Color.GreenYellow;
- //ultraGridZgS.DisplayLayout.Bands[0].Columns["TimeDiffer"].CellAppearance.BackColor = Color.GreenYellow;
- //ultraGridZgS.DisplayLayout.Bands[0].Columns["AfProNum"].CellAppearance.BackColor = Color.GreenYellow;
- //ultraGridZgS.DisplayLayout.Bands[0].Columns["AfProLin"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton;
- UltraNumericEditor[] uneArr = new UltraNumericEditor[3];
- for (int i = 0; i < uneArr.Length; i++)
- {
- uneArr[i] = new UltraNumericEditor();
- uneArr[i].NumericType = NumericType.Double;
- if (i == 1)
- {
- uneArr[i].MaskInput = "nnnnn";
- }
- else
- {
- uneArr[i].MaskInput = "nnnnn.nn";
- }
- uneArr[i].SpinButtonDisplayStyle = Infragistics.Win.ButtonDisplayStyle.Always;
- this.Controls.Add(uneArr[i]);
- uneArr[i].Visible = false;
- }
- uneArr[0].SpinIncrement = 0.01;
- uneArr[1].SpinIncrement = 50;
- uneArr[2].SpinIncrement = 10;
- ultraGridZgS.DisplayLayout.Bands[0].Columns["Outdiameter"].EditorComponent = uneArr[0];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["Wallthick"].EditorComponent = uneArr[0];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["OutdiameterZg"].EditorComponent = uneArr[0];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["WallthickZg"].EditorComponent = uneArr[0];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["Aimoutdiameter"].EditorComponent = uneArr[0];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["Aimwallthick"].EditorComponent = uneArr[0];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["LenGpSingle"].EditorComponent = uneArr[2];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["LenCuthead"].EditorComponent = uneArr[1];
- ultraGridZgS.DisplayLayout.Bands[0].Columns["LenCutend"].EditorComponent = uneArr[1];
- }
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query"://查询
- if (ultraTabControl1.SelectedTab.Key.Equals("0"))
- {
- Query();
- }
- else
- {
- QueryBl();
- }
- break;
- case "Delete"://删除
- DoDelete();
- break;
- case "Add"://补量
- DoAdd();
- break;
- case "Close": //关闭
- this.Close();
- break;
- default:
- break;
- }
- }
- /// <summary>
- /// 查询
- /// </summary>
- private void Query()
- {
- //产线
- string comPlineCode = "";
- if (chcPline.Checked)
- {
- if (comPline.Text.Equals(""))
- {
- MessageUtil.ShowTips("请选择产线!");
- return;
- }
- else
- {
- comPlineCode = comPline.Value.ToString();
- }
- }
- WaitingForm2 wf3 = new WaitingForm2("正在刷新,请稍候....");
- try
- {
- this.Cursor = Cursors.WaitCursor;
- //执行状态
- string[] statusArr = contorlPlanStatusBL1.statusArr;
- //合同号
- string orderNo = "";
- if (chcOrderNo.Checked) { orderNo = txtOrderNo.Text.Trim(); }
- string proPlanId = "";
- if (chcProPlanId.Checked) { proPlanId = txtProPlanId.Text.Trim(); }
- List<PlnOrderZgSEntityAmoun> listSource = EntityHelper.GetData<PlnOrderZgSEntityAmoun>
- ("com.steering.pss.plnsaleord.order.FrmProdSchAmount.query", new object[] { plineCode, proPlanId, orderNo, statusArr, comPlineCode }, this.ob);
- plnOrderZgSEntityAmounBindingSource.DataSource = listSource;
- foreach (UltraGridRow ugr in ultraGridZgS.Rows)
- {
- //if (!ugr.Cells["Finishweight"].Text.ToString().Equals(""))
- //{
- // ugr.Cells["AmountDifference"].Value = double.Parse(ugr.Cells["Finishweight"].Value.ToString()) - double.Parse(ugr.Cells["WeigthS"].Value.ToString());
- //}
- if (!ugr.Cells["GpreqNum"].Text.Equals("") &&!ugr.Cells["GpreqNum"].Text.ToString().Equals("0"))
- {
- ugr.Cells["BilletWeight"].Activation = Activation.ActivateOnly;
- ugr.Cells["BilletWeight"].Appearance.BackColor = Color.Transparent;
- }
- }
- }
- finally
- {
- wf3.Close();
- this.Cursor = Cursors.Default;
- }
- }
- /// <summary>
- ///补量信息
- /// </summary>
- private void QueryBl()
- {
- //产线
- string comPlineCode = "";
- if (chcPline.Checked)
- {
- if (comPline.Text.Equals(""))
- {
- MessageUtil.ShowTips("请选择产线!");
- return;
- }
- else
- {
- comPlineCode = comPline.Value.ToString();
- }
- }
- WaitingForm2 wf3 = new WaitingForm2("正在刷新,请稍候....");
- try
- {
- this.Cursor = Cursors.WaitCursor;
- //执行状态
- string[] statusArr = contorlPlanStatusBL1.statusArr;
- //合同号
- string orderNo = "";
- if (chcOrderNo.Checked) { orderNo = txtOrderNo.Text.Trim(); }
- string proPlanId = "";
- if (chcProPlanId.Checked) { proPlanId = txtProPlanId.Text.Trim(); }
- List<PlnOrderZgSEntityAmoun> listSource = EntityHelper.GetData<PlnOrderZgSEntityAmoun>
- ("com.steering.pss.plnsaleord.order.FrmProdSchAmount.queryBl", new object[] { plineCode, proPlanId, orderNo, statusArr, comPlineCode }, this.ob);
- bindingSource2.DataSource = listSource;
- //foreach (UltraGridRow ugr in ultraGridZgS.Rows)
- //{
- // if (!ugr.Cells["Finishweight"].Text.ToString().Equals(""))
- // {
- // ugr.Cells["AmountDifference"].Value = double.Parse(ugr.Cells["Finishweight"].Value.ToString()) - double.Parse(ugr.Cells["WeigthS"].Value.ToString());
- // }
- //}
- }
- finally
- {
- wf3.Close();
- this.Cursor = Cursors.Default;
- }
- }
- /// <summary>
- /// 删除
- /// </summary>
- private void DoDelete()
- {
- entityGrid1.UpdateData();
- ArrayList list = new ArrayList();
- IQueryable<UltraGridRow> checkRows = this.entityGrid1.Rows.AsQueryable().Where(" CHC = 'True' ");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未选择补量订单!");
- return;
- }
- foreach (UltraGridRow uRow in checkRows)
- {
- ArrayList param = new ArrayList();
- param.Add(UserInfo.GetUserName());
- param.Add(uRow.Cells["GpreqNum"].Value.ToString());
- param.Add(uRow.Cells["GpreqWeight"].Value.ToString());
- param.Add(uRow.Cells["ProPlanId"].Value.ToString());
- param.Add(uRow.Cells["GxPlanNo"].Value.ToString());
- list.Add(param);
- }
- PlanComm.WaitFromOpen(this.Cursor);
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.FrmProdSchAmount";
- ccp.MethodName = "deleteAmount";
- ccp.ServerParams = new object[] { list };
- ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp.ReturnCode == -1) return;
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("删除成功!"))
- {
- UltraGridRow ugrAc = ultraGridZgS.ActiveRow;
- if (ugrAc == null)
- {
- return;
- }
- List<PlnOrderZgSEntityAmoun> listSource = EntityHelper.GetData<PlnOrderZgSEntityAmoun>
- ("com.steering.pss.plnsaleord.order.FrmProdSchAmount.queryPlnBl", new object[] { ugrAc.Cells["ProPlanId"].Text.Trim().ToString() }, this.ob);
- bindingSource1.DataSource = listSource;
- }
- }
- /// <summary>
- /// 补量
- /// </summary>
- private void DoAdd()
- {
- try
- {
- ultraGridZgS.UpdateData();
- ArrayList list = new ArrayList();
- IQueryable<UltraGridRow> checkRows = this.ultraGridZgS.Rows.AsQueryable().Where(" CHC = 'True' ");
- if (checkRows.Count() == 0)
- {
- MessageUtil.ShowTips("未选择轧管订单!");
- return;
- }
-
- foreach (UltraGridRow uRow in checkRows)
- {
- if (uRow.Cells["AmountNum"].Text.ToString().Equals(""))
- {
- MessageUtil.ShowTips("合同号为:" + uRow.Cells["OrderNo"].Value.ToString() + ",请输入补量支数!");
- return;
- }
- if (uRow.Cells["AmountWet"].Text.ToString().Equals(""))
- {
- MessageUtil.ShowTips("合同号为:" + uRow.Cells["OrderNo"].Value.ToString() + ",请输入补量重量!");
- return;
- }
- //重量与支数验证
- //if (double.Parse(uRow.Cells["AmountWet"].Value.ToString()) <= 0 || int.Parse(uRow.Cells["AmountNum"].Value.ToString()) <= 1)
- //{
- // MessageUtil.ShowTips("合同号为:" + uRow.Cells["OrderNo"].Value.ToString() + ",补量需坯重量为0吨,支数小于或者等于1支!");
- // return;
- //}
- ArrayList param = new ArrayList();
- param.Add(UserInfo.GetUserName());
- param.Add(uRow.Cells["AmountNum"].Value.ToString());
- param.Add(uRow.Cells["AmountWet"].Value.ToString());
- param.Add(uRow.Cells["ProPlanId"].Value.ToString());
- param.Add(uRow.Cells["GxPlanNo"].Value.ToString());
- param.Add(uRow.Cells["BilletWeight"].Value.ToString());
- list.Add(param);
- }
- PlanComm.WaitFromOpen(this.Cursor);
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.order.FrmProdSchAmount";
- ccp.MethodName = "addAmount";
- ccp.ServerParams = new object[] { list };
- ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp.ReturnCode == -1) return;
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("补量成功!"))
- {
- Query();
- }
- }
- catch (Exception ex)
- {
- PlanComm.WaitFromColse(this.Cursor);
- if (!(ex is MESException))
- {
- MessageUtil.ShowError(ex.Message);
- }
- }
- }
-
- /// <summary>
- /// ultraGridZgS 改变事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGridZgS_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugrAc = ultraGridZgS.ActiveRow;
- if (ugrAc == null)
- {
- return;
- }
- List<PlnOrderZgSEntityAmoun> listSource = EntityHelper.GetData<PlnOrderZgSEntityAmoun>
- ("com.steering.pss.plnsaleord.order.FrmProdSchAmount.queryPlnBl", new object[] { ugrAc.Cells["ProPlanId"].Text.Trim().ToString() }, this.ob);
- bindingSource1.DataSource = listSource;
- }
- private void FrmProdSchAmount_Shown(object sender, EventArgs e)
- {
- if (toolMenu.Toolbars[0].Tools.Exists("Query")) { toolMenu.Toolbars[0].Tools["Query"].InstanceProps.Visible = DefaultableBoolean.True; }
- if (toolMenu.Toolbars[0].Tools.Exists("Delete")) { toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.True; }
- if (toolMenu.Toolbars[0].Tools.Exists("Add")) { toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.True; }
- if (toolMenu.Toolbars[0].Tools.Exists("Close")) { toolMenu.Toolbars[0].Tools["Close"].InstanceProps.Visible = DefaultableBoolean.True; }
- }
- /// <summary>
- /// tab 改变事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
- {
- if (toolMenu == null) return;
- if (e.Tab.TabControl.SelectedTab.Key.Equals("0"))
- {
- if (toolMenu.Toolbars[0].Tools.Exists("Query")) { toolMenu.Toolbars[0].Tools["Query"].InstanceProps.Visible = DefaultableBoolean.True; }
- if (toolMenu.Toolbars[0].Tools.Exists("Delete")) { toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.True; }
- if (toolMenu.Toolbars[0].Tools.Exists("Add")) { toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.True; }
- if (toolMenu.Toolbars[0].Tools.Exists("Close")) { toolMenu.Toolbars[0].Tools["Close"].InstanceProps.Visible = DefaultableBoolean.True; }
- }
- else
- {
- if (toolMenu.Toolbars[0].Tools.Exists("Query")) { toolMenu.Toolbars[0].Tools["Query"].InstanceProps.Visible = DefaultableBoolean.True; }
- if (toolMenu.Toolbars[0].Tools.Exists("Delete")) { toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False; }
- if (toolMenu.Toolbars[0].Tools.Exists("Add")) { toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.False; }
- if (toolMenu.Toolbars[0].Tools.Exists("Close")) { toolMenu.Toolbars[0].Tools["Close"].InstanceProps.Visible = DefaultableBoolean.True; }
- }
- }
- private void ultraGridZgS_CellChange(object sender, CellEventArgs e)
- {
- UltraGridRow ugrAc = ultraGridZgS.ActiveRow;
- if (ugrAc == null)
- {
- return;
- }
- ultraGridZgS.UpdateData();
- if (e.Cell.Column.Key.Equals("AmountNum"))
- {
- if (e.Cell.Row.Cells["GpreqNum"].Text.Equals("") || e.Cell.Row.Cells["GpreqNum"].Text.Equals("0"))
- {
- if (e.Cell.Row.Cells["BilletWeight"].Text.Equals("") || e.Cell.Row.Cells["BilletWeight"].Text.Equals("0.000"))
- {
- MessageUtil.ShowTips("请输入单倍坯重!");
- return;
- }
- // MessageUtil.ShowTips("需坯支吨不能为空或为零!");
- //e.Cell.Row.Cells["AmountNum"].Value = "0";
- //e.Cell.Row.Cells["AmountWet"].Value = "0";
- //return;
- }
- if (e.Cell.Row.Cells["AmountNum"].Value == null)
- {
- e.Cell.Row.Cells["AmountNum"].Value = "0";
- e.Cell.Row.Cells["AmountWet"].Value = "0";
- }
- else
- {
- string actCount = e.Cell.Row.Cells["AmountNum"].Value.ToString();
- if (!StringUtil.IsInt(actCount) || actCount == "0")//actCount == "" || int.Parse(actCount)==0
- {
- e.Cell.Row.Cells["AmountNum"].Value = "0";
- e.Cell.Row.Cells["AmountWet"].Value = "0";
- }
- else
- {
- if (e.Cell.Row.Cells["GpreqNum"].Text.Equals("") || e.Cell.Row.Cells["GpreqNum"].Text.Equals("0"))
- {
- //if (e.Cell.Row.Cells["BilletWeight"].Text.Equals("") || e.Cell.Row.Cells["BilletWeight"].Text.Equals("0.000"))
- //{
- // e.Cell.Row.Cells["AmountWet"].Value = ((double.Parse(e.Cell.Row.Cells["GpreqWeight"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["GpreqNum"].Value.ToString())) * double.Parse(e.Cell.Row.Cells["AmountNum"].Value.ToString())).ToString("f3");
- //}
- //else
- //{
- e.Cell.Row.Cells["AmountWet"].Value = (double.Parse(e.Cell.Row.Cells["BilletWeight"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["AmountNum"].Value.ToString())).ToString("f3");
- //}
- }
- else
- {
- e.Cell.Row.Cells["AmountWet"].Value = ((double.Parse(e.Cell.Row.Cells["GpreqWeight"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["GpreqNum"].Value.ToString())) * double.Parse(e.Cell.Row.Cells["AmountNum"].Value.ToString())).ToString("f3");
- }
- }
- }
- }
- if (e.Cell.Column.Key.Equals("BilletWeight"))
- {
- if (e.Cell.Row.Cells["BilletWeight"].Value == null)
- {
- e.Cell.Row.Cells["AmountWet"].Value = "0";
- }
- else
- {
- string Bilwt = e.Cell.Row.Cells["BilletWeight"].Value.ToString();
- if (!StringUtil.IsDouble(Bilwt) || Bilwt == "0.00")//actCount == "" || int.Parse(actCount)==0
- {
- e.Cell.Row.Cells["AmountWet"].Value = "0";
- }
- else
- {
- if (!e.Cell.Row.Cells["AmountNum"].Text.Equals(""))
- {
- e.Cell.Row.Cells["AmountWet"].Value = (double.Parse(e.Cell.Row.Cells["BilletWeight"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["AmountNum"].Value.ToString())).ToString("f3");
- }
- }
- }
- }
- }
- private void chcPline_CheckedChanged(object sender, EventArgs e)
- {
- if (chcOrderNo.Checked) { txtOrderNo.Enabled = true; } else { txtOrderNo.Enabled = false; }
- if (chcPline.Checked) { comPline.Enabled = true; } else { comPline.Enabled = false; }
- if (chcProPlanId.Checked) { txtProPlanId.Enabled = true; } else { txtProPlanId.Enabled = false; }
- }
- }
- }
|