| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Windows.Forms;
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Format;
- using Core.Mes.Client.Comm.Tool;
- using Core.StlMes.Client.PlnSaleOrd.BaseMethod;
- using Core.StlMes.Client.PlnSaleOrd.炼钢计划.entity;
- using CoreFS.CA06;
- using Infragistics.Win.UltraWinToolbars;
- namespace Core.StlMes.Client.PlnSaleOrd.炼钢计划
- {
- public partial class FrmSteelSupplement : FrmBase
- {
- private double[] SmeltingQty;
- public FrmSteelSupplement()
- {
- InitializeComponent();
- }
- public List<PlnSteelforOrdNewEntity> ListSource
- {
- get { return plnSteelforOrdNewEntityBindingSource.DataSource as List<PlnSteelforOrdNewEntity>; }
- set { plnSteelforOrdNewEntityBindingSource.DataSource = value; }
- }
- private void utmMain_ToolClick(object sender, ToolClickEventArgs e)
- {
- switch (e.Tool.Key)
- {
- case "Forming": // ButtonTool
- Forming();
- break;
- case "Add": // ButtonTool
- // Place code here
- Add();
- break;
- case "Delete": // ButtonTool
- // Place code here
- Delete();
- break;
- case "Close": // ButtonTool
- // Place code here
- DialogResult = DialogResult.No;
- break;
- }
- }
- private void Delete()
- {
- if (ListSource.Count <= 1)
- {
- MessageUtil.ShowWarning("没有余材可删除!");
- return;
- }
- ListSource.RemoveAt(1);
- ugOrder.DataBind();
- ugOrder.Refresh();
- }
- private void Forming()
- {
- if ((ListSource == null) || (ListSource.Count <= 0)) return;
- // Place code here
- if (SmeltingQty == null)
- SmeltingQty =
- SteelHelper.GetData(
- "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.GetSmeltingQty",
- new object[] {ListSource[0].EfPlineCode}, ob) as double[];
- var toltalWeight = ListSource.Sum(p => (double) (p.TotWeightM ?? 0));
- if ((SmeltingQty != null) && (SmeltingQty.Length > 2) &&
- ((toltalWeight < SmeltingQty[1]) || (toltalWeight > SmeltingQty[2])))
- {
- MessageUtil.ShowWarning(string.Format("不在电炉产线的出钢量范围[{0},{1}]内,无法组炉 !", SmeltingQty[1], SmeltingQty[2]));
- return;
- }
- var param =
- SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SteelSupplement",
- new object[] {ListSource.Select(JSONFormat.Format).ToList(), UserInfo.GetUserName()}, ob);
- if (param != null)
- DialogResult = DialogResult.OK;
- }
- private void Add()
- {
- if (ListSource.Count > 1)
- {
- MessageUtil.ShowWarning("已经存在余材!");
- return;
- }
- var plnSteelforOrdNewEntity = ListSource.FirstOrDefault();
- if (plnSteelforOrdNewEntity != null)
- {
- var newPlnSteelforOrdNewEntity =
- plnSteelforOrdNewEntity.Clone() as PlnSteelforOrdNewEntity;
- if (newPlnSteelforOrdNewEntity == null) return;
- if (SmeltingQty == null)
- SmeltingQty =
- SteelHelper.GetData(
- "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.GetSmeltingQty",
- new object[] {newPlnSteelforOrdNewEntity.EfPlineCode}, ob) as double[];
- if ((SmeltingQty != null) && (SmeltingQty.Length > 0))
- {
- var weight = SmeltingQty[0] -
- (double) (plnSteelforOrdNewEntity.TotWeightM ?? 0);
- newPlnSteelforOrdNewEntity.TotMumM = (long)Math.Ceiling(weight /
- (double)
- (newPlnSteelforOrdNewEntity
- .WeightM ?? 0));
- newPlnSteelforOrdNewEntity.TotWeightM = newPlnSteelforOrdNewEntity.TotMumM*
- newPlnSteelforOrdNewEntity.WeightM;
- }
- newPlnSteelforOrdNewEntity.SurplusType = "1";
- newPlnSteelforOrdNewEntity.Surplusflag = "1";
- ListSource.Add(newPlnSteelforOrdNewEntity);
- ugOrder.DataBind();
- ugOrder.Refresh();
- }
- }
- private void FrmSteelSupplement_Load(object sender, EventArgs e)
- {
- EntityHelper.ShowGridCaption<PlnSteelforOrdNewEntity>(ugOrder.DisplayLayout.Bands[0]);
- BaseHelper.setOtherColumnReadOnly(ugOrder, new[] {"TotMumM", "TotWeightM"});
- //绑定Valuelist 根据实体类值显示
- var list = SteelManagementHelper.GetValuelistLogic();
- SteelManagementHelper.SetGridValuelist(ref ugOrder, "IfSurplusAlloted", ref list);
- list = SteelManagementHelper.GetStatus();
- SteelManagementHelper.SetGridValuelist(ref ugOrder, "Status", ref list);
- list = SteelManagementHelper.GetValuelistLogic();
- SteelManagementHelper.SetGridValuelist(ref ugOrder, "Surplusflag", ref list);
- list = SteelManagementHelper.GetSurplusType();
- SteelManagementHelper.SetGridValuelist(ref ugOrder, "SurplusType", ref list);
- list = SteelManagementHelper.GetCastingtype();
- SteelManagementHelper.SetGridValuelist(ref ugOrder, "Castingtype", ref list);
- list = SteelManagementHelper.GetSurplusflag();
- SteelManagementHelper.SetGridValuelist(ref ugOrder, "GetSurplusflag", ref list);
- GridHelper.RefreshAndAutoSize(ugOrder);
- }
- }
- }
|