| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791 |
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Format;
- 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.UltraWinGrid;
- using Infragistics.Win.UltraWinMaskedEdit;
- 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 FrmSteelMerge : FrmBase
- {
- public bool Flag = false;
- private ArrayList list = null;
- private string furnnacNo1 = "";//炉次号1
- private string furnnacNo2 = "";//炉次号2
- private string furnnacSeq1 = "";//炉次顺序号1
- private string furnnacSeq2 = "";//炉次顺序号2
- private string gradename1 = "";//
- private string gradename2 = "";//
- private int quantity1 = 0;
- private int quantity2 = 0;
- private double weight1 = 0;
- private double weight2 = 0;
- private string[] arrString = null;
- private OpeBase ob;
- private int countHb = 0;
- public FrmSteelMerge(ArrayList _list,OpeBase _ob,int _countHb)
- {
- list = _list;
- ob = _ob;
- countHb = _countHb;
- InitializeComponent();
- }
- private void FrmSteelMerge_Load(object sender, EventArgs e)
- {
- if (list != null)
- {
- arrString = (string[])list.ToArray(typeof(string));
- if (list.Count > 4)//选择一条数据
- {
- furnnacNo1 = arrString[0].ToString();
- furnnacSeq1 = arrString[4].ToString();
- furnnacNo2 = arrString[5].ToString();
- furnnacSeq2 = arrString[9].ToString();
- gradename1 = arrString[1].ToString();
- gradename2 = arrString[6].ToString();
- }
- else
- {
- furnnacNo1 = arrString[0].ToString();
- //furnnacNo2 = arrString[4].ToString();
- gradename1 = arrString[1].ToString();
- //gradename2 = arrString[5].ToString();
- }
- }
-
- EntityHelper.ShowGridCaption<PlnSteelforOrdEntity>(ultraGrid2.DisplayLayout.Bands[0]);
- EntityHelper.ShowGridCaption<PlnSteelforOrdEntity>(ultraGrid1.DisplayLayout.Bands[0]);
- BaseHelper.setOtherColumnReadOnly(ultraGrid3, new string[] { });
- BaseHelper.setOtherColumnReadOnly(ultraGrid2, new string[] { "CHC", "EditWt" });
- BaseHelper.setOtherColumnReadOnly(ultraGrid1, new string[] { "CHC", "EditWt" });
- BaseHelper.InitCellPosition(ultraGrid2, new string[] { "Sequenceno", "Sequenceincast", "Diameter", "LenGpSingle", "CutNumGp", "LengthM", "WeightGpOne", "WeightM", "TotWeightM", "TotMumM", "EditWt", "EditNum", "CutNum" });
- BaseHelper.InitCellPosition(ultraGrid1, new string[] { "Sequenceno", "Sequenceincast", "Diameter", "LenGpSingle", "CutNumGp", "LengthM", "WeightGpOne", "WeightM", "TotWeightM", "TotMumM", "EditWt", "EditNum", "CutNum" });
- BaseHelper.GridColumnSum(ultraGrid2, new string[] { "TotWeightM" });
- BaseHelper.GridColumnCount(ultraGrid2, new string[] { "TotMumM" });
- BaseHelper.GridColumnSum(ultraGrid1, new string[] { "TotWeightM" });
- BaseHelper.GridColumnCount(ultraGrid1, new string[] { "TotMumM" });
- BaseHelper.setUltraGridColumnMaxInput(ultraGrid1, new string[] { "TotWeightM", "WeightGpOne", "EditWt" });
- BaseHelper.setUltraGridColumnMaxInput(ultraGrid2, new string[] { "TotWeightM", "WeightGpOne", "EditWt" });
- BaseHelper.setColumnBackColor(ultraGrid2, new string[] { "EditWt" });
- BaseHelper.setColumnBackColor(ultraGrid1, new string[] { "EditWt" });
- //doGraderCIC();
- this.splitContainer1.SplitterDistance = 0;
- doRefresh();
-
-
- }
- private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
- {
- switch (e.Tool.Key)
- {
- case "Refresh": // 查询
- doRefresh();
- break;
- case "Modify": //修改
- doModify();
- break;
- case "QueryCicAll": //索引码合并
- doQueryCicAll();
- break;
- case "Close": // 关闭
- this.Close();
- break;
- }
- }
- /// <summary>
- /// 查询
- /// </summary>
- private void doRefresh()
- {
- List<PlnSteelforOrdEntity> listSource1 = EntityHelper.GetData<PlnSteelforOrdEntity>
- ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getFurnSteelOrder", new object[] { furnnacNo1 }, ob);
- plnSteelforOrdEntityBindingSource.DataSource = listSource1;
- GridHelper.RefreshAndAutoSize(ultraGrid2);
- quantity1 = 0;
- weight1 = 0;
- double conAmount1 = 0; //合同量
- double matAmount1 = 0; //余材量
- foreach (UltraGridRow row in ultraGrid2.Rows)
- {
- quantity1 += int.Parse(row.Cells["TotMumM"].Value.ToString());
- weight1 += double.Parse(row.Cells["TotWeightM"].Value.ToString());
- if (row.Cells["Surplusflag"].Text.ToString().Equals("订单材"))
- {
- conAmount1 += double.Parse(row.Cells["TotWeightM"].Text.ToString());
- }
- else{
- if (row.Cells["SurplusType"].Text.ToString().Equals("生产超量"))
- {
- matAmount1 += double.Parse(row.Cells["TotWeightM"].Text.ToString());
- }
- }
- }
-
- List<PlnSteelforOrdEntity> listSource2 = EntityHelper.GetData<PlnSteelforOrdEntity>
- ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getFurnSteelOrder", new object[] { furnnacNo2 }, ob);
- plnSteelforOrdEntityBindingSource2.DataSource = listSource2;
- GridHelper.RefreshAndAutoSize(ultraGrid1);
- quantity2 = 0;
- weight2 = 0;
- double conAmount2 = 0; //合同量
- double matAmount2 = 0; //余材量
- foreach (UltraGridRow rows in ultraGrid1.Rows)
- {
- quantity2 += int.Parse(rows.Cells["TotMumM"].Value.ToString());
- weight2 += double.Parse(rows.Cells["TotWeightM"].Value.ToString());
- if (rows.Cells["Surplusflag"].Text.ToString().Equals("订单材"))
- {
- conAmount2 += double.Parse(rows.Cells["TotWeightM"].Text.ToString());
- }
- else
- {
- if (rows.Cells["SurplusType"].Text.ToString().Equals("生产超量"))
- {
- matAmount2 += double.Parse(rows.Cells["TotWeightM"].Text.ToString());
- }
- }
- }
- ultraLabel1.Text = " 炉次:" + furnnacNo1 + " 钢种:" + gradename1 + " 炉次计划支:" + quantity1 + " 炉次计划量:" + weight1 + " 冶炼量:" + conAmount1 + " 余材量:" + matAmount1;
- ultraLabel2.Text = " 炉次:" + furnnacNo2 + " 钢种:" + gradename2 + " 炉次计划支:" + quantity2 + " 炉次计划量:" + weight2 + " 冶炼量:" + conAmount2 + " 余材量:" + matAmount2;
- }
- private void doGraderCIC()
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge.getDoGraderCIC",
- new object[] { furnnacNo1, furnnacNo2 }, this.ob);
- DataTable dat = GetCrossTable(dt, furnnacNo2);
- ultraGrid3.DataSource = dat;
- ultraGrid3.DataBind();
- GridHelper.RefreshAndAutoSize(ultraGrid3);
- if (dat.Rows.Count > 0)
- {
- this.ultraGrid3.DisplayLayout.Bands[0].Columns["钢种索引码"].MergedCellStyle = MergedCellStyle.Always;
-
- }
- foreach (UltraGridRow row in ultraGrid3.Rows)
- {
- if(row.Cells["上下限"].Text.ToString().Equals("目标值"))
- {
- row.Activation = Activation.AllowEdit;
- //row.MaskDisplayMode = MaskMode.IncludeLiterals;
- //row.MaskInput = "{LOC}-n,nnn,nnn.nnn";
- row.Cells["钢种索引码"].Activation = Activation.ActivateOnly;
- row.Cells["上下限"].Activation = Activation.ActivateOnly;
- //foreach (UltraGridColumn ugc in ultraGrid3.DisplayLayout.Bands[0].Columns)
- //{
- // if ()
- // ugc.MaskDisplayMode = MaskMode.IncludeLiterals;
- // ugc.MaskInput = "{LOC}n,nnn,nnn.nnn";
- //}
- }
- else
- {
- row.Activation = Activation.ActivateOnly;
- }
- }
- }
- /// 将DataTable的第二列的值转化为列(即将原来的行表,转化成交叉表,没有对应值则默认"0")
- /// <param name="dt"></param>
- /// <returns></returns>
- public static DataTable GetCrossTable(DataTable dt,string falg1)
- {
- if (dt == null || dt.Columns.Count != 6 || dt.Rows.Count == 0)
- {
- return dt;
- }
- else
- {
- DataTable result = new DataTable();
- result.Columns.Add("钢种索引码");
- result.Columns.Add("上下限");
- DataTable dtColumns = dt.DefaultView.ToTable("dtColumns", true, dt.Columns[1].ColumnName);
- for (int i = 0; i < dtColumns.Rows.Count; i++)
- {
- string colName;
- if (dtColumns.Rows[1][0] is DateTime)
- {
- colName = Convert.ToDateTime(dtColumns.Rows[i][0]).ToString();
- }
- else
- {
- colName = dtColumns.Rows[i][0].ToString();
- }
- result.Columns.Add(colName);
- result.Columns[i + 1].DefaultValue = "";
- }
- DataTable distinct_object = dt.DefaultView.ToTable(true, "CIC");
- if (distinct_object.Rows.Count <= 0)
- {
- return result;
- }
- for (int i = 0; i < distinct_object.Rows.Count; i++)
- {
- string cic = distinct_object.Rows[i]["CIC"].ToString();
- DataRow[] drs = dt.Select("CIC='" + cic + "'");
- DataRow drNew = result.NewRow();
- drNew[0] = drs[0][0];
- drNew[1] = "下限";
- string rowName = drNew[0].ToString();
- foreach (DataRow dr in drs)
- {
- string colName = dr[1].ToString();
- string dValue1 = dr[2].ToString();
- if (dr[0].ToString().Equals(rowName, StringComparison.CurrentCultureIgnoreCase))
- {
- drNew[colName] = dValue1.ToString();
- }
- else
- {
- result.Rows.Add(drNew);
- drNew = result.NewRow();
- drNew[0] = dr[0];
- rowName = drNew[0].ToString();
- drNew[colName] = dValue1.ToString();
- }
- }
- result.Rows.Add(drNew);
- drNew = result.NewRow();
- drNew[0] = drs[0][0];
- drNew[1] = "上限";
- foreach (DataRow dr in drs)
- {
- string colName = dr[1].ToString();
- string dValue2 = dr[3].ToString();
- if (dr[0].ToString().Equals(rowName, StringComparison.CurrentCultureIgnoreCase))
- {
- drNew[colName] = dValue2.ToString();
- }
- else
- {
- result.Rows.Add(drNew);
- drNew = result.NewRow();
- drNew[1] = dr[0];
- rowName = drNew[1].ToString();
- drNew[colName] = dValue2.ToString();
- }
- }
- result.Rows.Add(drNew);
- //if (falg1.Equals(""))
- //{
- // drNew = result.NewRow();
- // drNew[0] = drs[0][0];
- // drNew[1] = "目标值";
- // foreach (DataRow dr in drs)
- // {
- // string colName = dr[1].ToString();
- // string dValue2 = dr[4].ToString();
- // if (dr[0].ToString().Equals(rowName, StringComparison.CurrentCultureIgnoreCase))
- // {
- // drNew[colName] = dValue2.ToString();
- // }
- // else
- // {
- // result.Rows.Add(drNew);
- // drNew = result.NewRow();
- // drNew[1] = dr[0];
- // rowName = drNew[1].ToString();
- // drNew[colName] = dValue2.ToString();
- // }
- // }
- // result.Rows.Add(drNew);
- //}
- //else
- //{
- if (cic.Equals("交集"))
- {
- drNew = result.NewRow();
- drNew[0] = drs[0][0];
- drNew[1] = "目标值";
- foreach (DataRow dr in drs)
- {
- string colName = dr[1].ToString();
- string dValue2 = dr[4].ToString();
- if (dr[0].ToString().Equals(rowName, StringComparison.CurrentCultureIgnoreCase))
- {
- drNew[colName] = dValue2.ToString();
- }
- else
- {
- result.Rows.Add(drNew);
- drNew = result.NewRow();
- drNew[1] = dr[0];
- rowName = drNew[1].ToString();
- drNew[colName] = dValue2.ToString();
- }
- }
- result.Rows.Add(drNew);
- }
- //}
- }
- return result;
- }
- }
- /// <summary>
- /// 修改
- /// </summary>
- private void doModify()
- {
- ultraGrid3.UpdateData();
- ArrayList list = new ArrayList();
- string cic = "";
- string cic1 = "";
- foreach (UltraGridRow row in ultraGrid3.Rows)
- {
- if (row.Cells["上下限"].Text.ToString().Equals("目标值"))
- {
- foreach (UltraGridColumn gvr in ultraGrid3.DisplayLayout.Bands[0].Columns)
- {
- if (!gvr.Key.Equals("钢种索引码") && !gvr.Key.Equals("上下限"))
- {
- ArrayList listColumn = new ArrayList();
- listColumn.Add(gvr.Key);
- listColumn.Add(row.Cells[gvr.Key].Text.ToString());
- list.Add(listColumn);
- }
- }
- cic = furnnacNo1 + furnnacNo2;
- cic1 = furnnacNo2 + furnnacNo1;
- }
- }
- PlanComm.WaitFromOpen(this.Cursor);
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge";
- ccp.MethodName = "doUpdateCic";
- ccp.ServerParams = new object[] { list, cic, cic1,this.UserInfo.GetUserName() };
- ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp.ReturnCode == -1) return;
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("修改成功!"))
- {
- doRefresh();
- }
- }
- /// <summary>
- /// 向下合并
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void buttDown_Click(object sender, EventArgs e)
- {
- UltraGridRow urg = ultraGrid2.ActiveRow;
- if (urg == null) return;
- if (furnnacNo2.Equals("")) return;
- ArrayList list = new ArrayList();
- ArrayList entityList = new ArrayList();
- IQueryable<UltraGridRow> chcRows = ultraGrid2.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True");
- if (chcRows == null || chcRows.Count() == 0)
- {
- MessageUtil.ShowWarning("请选择要向下合并的炉次订单信息!");
- return;
- }
- else
- {
- foreach (UltraGridRow ugr in chcRows)
- {
- entityList.Add((PlnSteelforOrdEntity)ugr.ListObject);
- }
- }
- string cic = "";
- foreach (UltraGridRow ugr in ultraGrid1.Rows)
- {
- if (cic.Equals(""))
- {
- cic = ugr.Cells["Cic"].Value.ToString();
- }
- if (!cic.Equals(ugr.Cells["Cic"].Value.ToString()))
- {
- cic += "," + ugr.Cells["Cic"].Value.ToString();
- }
- }
- string[] strArray = cic.Split(',').Distinct().ToArray();
- cic = string.Join(",", strArray);
- ArrayList jsonList = new ArrayList();
- //int count = 0;
- //foreach (PlnSteelforOrdEntity entity in entityList)
- //{
- // if (entity.Surplusflag.Equals("余材") && entity.SurplusType.Equals("首炉加量"))
- // { count = 1; }
- //}
- //if()
- foreach (PlnSteelforOrdEntity entity in entityList)
- {
- if (!entity.Status.Equals("编制中"))
- {
- MessageUtil.ShowWarning("只有编制中状态的炉次订单才能合并!");
- return;
- }
- if (!entity.Surplusflag.Equals("余材") && entity.SurplusType.Equals("生产超量"))
- {
- MessageUtil.ShowWarning("该炉(" + entity.Furnaceno + ")是余材并且是生产超量的炉次,不能合并!");
- return;
- }
- //if (countHb != 2)
- //{
- if (entity.Surplusflag.Equals("余材") && entity.SurplusType.Equals("首炉加量"))
- {
- MessageUtil.ShowWarning("该炉(" + entity.Furnaceno + ")存在首炉加量不能向下合并!");
- return;
- }
- //}
- if (entity.EditWt.ToString().Equals("") || entity.EditWt.ToString().Equals("0"))
- {
- MessageUtil.ShowWarning("可编辑重量不能为零或为空!");
- return;
- }
- if (!cic.Contains(entity.Cic.ToString()))
- {
- cic += "," + entity.Cic.ToString();
- }
- string wt = (double.Parse(entity.EditNum.ToString()) * double.Parse(entity.WeightM.ToString())).ToString("f3");
- entity.EditWt = Convert.ToDecimal(wt);
- if (!entity.MergeNo.Equals(""))
- {
- MessageUtil.ShowWarning("选中炉已同定尺同去向合并过,不能炉次合并,请转分切!");
- return;
- }
- jsonList.Add(JSONFormat.Format(entity));
- }
- strArray = cic.Split(',').Distinct().ToArray();
- Array.Sort(strArray);
- cic = string.Join(",", strArray);
- if (cic.Contains(","))
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge.getQueryCicAll", new object[] { cic }, ob);
- if (dt.Rows.Count <= 0)
- {
- MessageUtil.ShowTips("不存在索引码" + cic + "交集!");
- return;
- }
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否向下合并炉次订单?") == DialogResult.No)
- {
- return;
- }
- PlanComm.WaitFromOpen(this.Cursor);
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge";
- ccp.MethodName = "doUpdateFurnOrd";
- ccp.ServerParams = new object[] { jsonList, furnnacNo1, furnnacNo2, weight2.ToString(), arrString[2].ToString(), arrString[3].ToString(), this.UserInfo.GetUserName(), "0", furnnacSeq1, furnnacSeq2, cic, countHb.ToString() };
- ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp.ReturnCode == -1) return;
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("向下合并成功!"))
- {
- doRefresh();
- Flag = true;
- }
- }
- /// <summary>
- /// 向上合并
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void buttUp_Click(object sender, EventArgs e)
- {
- UltraGridRow urg = ultraGrid1.ActiveRow;
- if (urg == null) return;
- ArrayList list = new ArrayList();
- ArrayList entityList = new ArrayList();
- IQueryable<UltraGridRow> chcRows = ultraGrid1.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True");
- if (chcRows == null || chcRows.Count() == 0)
- {
- MessageUtil.ShowWarning("请选择要向上合并的炉次订单信息!");
- return;
- }
- else
- {
- foreach (UltraGridRow ugr in chcRows)
- {
- entityList.Add((PlnSteelforOrdEntity)ugr.ListObject);
- }
- }
- string cic = "";
- foreach (UltraGridRow ugr in ultraGrid2.Rows)
- {
- if (cic.Equals(""))
- {
- cic = ugr.Cells["Cic"].Value.ToString();
- }
- if (!cic.Equals(ugr.Cells["Cic"].Value.ToString()))
- {
- cic += "," + ugr.Cells["Cic"].Value.ToString();
- }
- }
- string[] strArray = cic.Split(',').Distinct().ToArray();
- cic = string.Join(",", strArray);
- ArrayList jsonList = new ArrayList();
- foreach (PlnSteelforOrdEntity entity in entityList)
- {
- if (!entity.Status.Equals("编制中"))
- {
- MessageUtil.ShowWarning("只有编制中状态的炉次订单才能合并!");
- return;
- }
- //if (!entity.Surplusflag.Equals("订单材"))
- //{
- // MessageUtil.ShowWarning("只有订单材的炉次订单才能合并!");
- // return;
- //}
- if (entity.EditWt.ToString().Equals("") || entity.EditWt.ToString().Equals("0"))
- {
- MessageUtil.ShowWarning("可编辑重量不能为零或为空!");
- return;
- }
- if (entity.Surplusflag.Equals("余材") && entity.SurplusType.Equals("生产超量"))
- {
- MessageUtil.ShowWarning("该炉(" + entity.Furnaceno + ")是余材并且是生产超量的炉次,不能合并!");
- return;
- }
- //if (countHb != 2)
- //{
- if (entity.Surplusflag.Equals("余材") && entity.SurplusType.Equals("尾炉加量"))
- {
- MessageUtil.ShowWarning("该炉(" + entity.Furnaceno + ")存在尾炉加量不能向上合并!");
- return;
- }
- //}
- if (!cic.Contains(entity.Cic.ToString()))
- {
- cic +="," + entity.Cic.ToString();
- }
- string wt = (double.Parse(entity.EditNum.ToString()) * double.Parse(entity.WeightM.ToString())).ToString("f3");
- entity.EditWt = Convert.ToDecimal(wt);
- if (!entity.MergeNo.Equals(""))
- {
- MessageUtil.ShowWarning("选中炉已同定尺同去向合并过,不能炉次合并,请转分切!");
- return;
- }
- jsonList.Add(JSONFormat.Format(entity));
- }
- strArray = cic.Split(',').Distinct().ToArray();
- Array.Sort(strArray);
- cic = string.Join(",", strArray);
- if (cic.Contains(","))
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge.getQueryCicAll", new object[] { cic }, ob);
- if (dt.Rows.Count <= 0)
- {
- MessageUtil.ShowTips("不存在索引码" + cic + "交集!");
- return;
- }
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否向上合并炉次订单?") == DialogResult.No)
- {
- return;
- }
- PlanComm.WaitFromOpen(this.Cursor);
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge";
- ccp.MethodName = "doUpdateFurnOrd";
- ccp.ServerParams = new object[] { jsonList, furnnacNo2, furnnacNo1, weight1.ToString(), arrString[7].ToString(), arrString[8].ToString(), this.UserInfo.GetUserName(), "1", furnnacSeq2, furnnacSeq1, cic ,countHb.ToString()};
- ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- PlanComm.WaitFromColse(this.Cursor);
- if (ccp.ReturnCode == -1) return;
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("向上合并成功!"))
- {
- doRefresh();
- Flag = true;
- }
- }
- /// <summary>
- /// 向下合并ultraGrid2事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid2_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- UltraGridRow urg = ultraGrid2.ActiveRow;
- ultraGrid2.UpdateData();
- if (e.Cell.Column.Key.Equals("EditWt"))
- {
- if (e.Cell.Row.Cells["EditWt"].Value == null)
- {
- e.Cell.Row.Cells["EditWt"].Value = "0";
- e.Cell.Row.Cells["EditNum"].Value = "0";
- }
- else
- {
- string actLen = e.Cell.Row.Cells["EditWt"].Value.ToString();
- if (!StringUtil.IsFloat(actLen) || actLen == "0")
- {
- e.Cell.Row.Cells["EditWt"].Value = "0";
- e.Cell.Row.Cells["EditNum"].Value = "0";
- }
- else
- {
- //比较输入的重量不能大于原重量
- if (double.Parse(actLen) > double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()))
- {
- e.Cell.Row.Cells["EditWt"].Value = e.Cell.Row.Cells["TotWeightM"].Value.ToString();
- e.Cell.Row.Cells["EditNum"].Value = e.Cell.Row.Cells["TotMumM"].Value.ToString();
- }
- else
- {
- e.Cell.Row.Cells["EditNum"].Value = ((int)Math.Ceiling(double.Parse(actLen) / double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()))).ToString();
- //e.Cell.Row.Cells["EditWt"].Value = (double.Parse(e.Cell.Row.Cells["EditNum"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["WeightGpOne"].Value.ToString())).ToString("f3");
- }
-
- }
- }
- }
- }
- /// <summary>
- /// 向上合并ultraGrid1事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_CellChange(object sender, CellEventArgs e)
- {
- UltraGridRow urg = ultraGrid1.ActiveRow;
- ultraGrid1.UpdateData();
- if (e.Cell.Column.Key.Equals("EditWt"))
- {
- if (e.Cell.Row.Cells["EditWt"].Value == null)
- {
- e.Cell.Row.Cells["EditWt"].Value = "0";
- e.Cell.Row.Cells["EditNum"].Value = "0";
- }
- else
- {
- string actLen = e.Cell.Row.Cells["EditWt"].Value.ToString();
- if (!StringUtil.IsFloat(actLen) || actLen == "0")
- {
- e.Cell.Row.Cells["EditWt"].Value = "0";
- e.Cell.Row.Cells["EditNum"].Value = "0";
- }
- else
- {//比较输入的重量不能大于原重量
- if (double.Parse(actLen) > double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()))
- {
- e.Cell.Row.Cells["EditWt"].Value = e.Cell.Row.Cells["TotWeightM"].Value.ToString();
- e.Cell.Row.Cells["EditNum"].Value = e.Cell.Row.Cells["TotMumM"].Value.ToString();
- }
- else
- {
- e.Cell.Row.Cells["EditNum"].Value = ((int)Math.Ceiling(double.Parse(actLen)/double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()))).ToString();
- //e.Cell.Row.Cells["EditWt"].Value = (double.Parse(e.Cell.Row.Cells["EditNum"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["WeightGpOne"].Value.ToString())).ToString("f3");
- }
- }
- }
- }
- }
- private void ultraGrid2_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- BaseHelper.ControlCellEdit(e.Row);
- }
- private void ultraGrid1_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- BaseHelper.ControlCellEdit(e.Row);
- }
- /// <summary>
- /// 索引码合并
- /// </summary>
- private void doQueryCicAll()
- {
- List<string> list1 = new List<string>();
- string gradeCode = "";
- string cic = "";
- List<string> list = new List<string>();
- ArrayList arrlist = new ArrayList();
- foreach (UltraGridRow ugr2 in ultraGrid2.Rows)
- {
- gradeCode = ugr2.Cells["GradeName"].Text.ToString();
- list.Add(ugr2.Cells["Cic"].Text.ToString());
- }
- foreach (UltraGridRow ugr1 in ultraGrid1.Rows)
- {
- list.Add(ugr1.Cells["Cic"].Text.ToString());
- }
- list = list.Distinct().ToList();
- //for (int i = 0; i < list.Count; i++)
- //{
- foreach (UltraGridRow ugr in ultraGrid2.Rows)
- {
- if (!cic.Contains(ugr.Cells["Cic"].Text.ToString()))
- {
- //if (ugr.Cells["Cic"].Text.ToString().Equals(list[i]))
- //{
- if (!ugr.Cells["ProPlanId"].Text.Equals(""))
- {
- cic += ugr.Cells["Cic"].Text.ToString()+",";
- ArrayList listar = new ArrayList();
- list1.Add(ugr.Cells["ProPlanId"].Text.ToString());
- listar.Add(ugr.Cells["Cic"].Text.ToString());
- listar.Add(ugr.Cells["ProPlanId"].Text.ToString());
- listar.Add("1");
- listar.Add("工艺评审");
- arrlist.Add(listar);
- //break;
- }
- }
- }
- //}
- //}
- foreach (UltraGridRow ugr in ultraGrid1.Rows)
- {
- if (!cic.Contains(ugr.Cells["Cic"].Text.ToString()))
- {
- if (!ugr.Cells["ProPlanId"].Text.Equals(""))
- {
- cic += ugr.Cells["Cic"].Text.ToString() + ",";
- ArrayList listar = new ArrayList();
- list1.Add(ugr.Cells["ProPlanId"].Text.ToString());
- listar.Add(ugr.Cells["Cic"].Text.ToString());
- listar.Add(ugr.Cells["ProPlanId"].Text.ToString());
- listar.Add("1");
- listar.Add("工艺评审");
- arrlist.Add(listar);
- }
- }
- }
- ArrayList listar1 = new ArrayList();
- listar1.Add("");
- listar1.Add("null");
- listar1.Add("0");
- listar1.Add("基础数据");
- arrlist.Add(listar1);
- this.Cursor = Cursors.WaitCursor;
- AnalysisNkChemPopupLg popup = new AnalysisNkChemPopupLg(list.ToArray(), gradeCode, this.ob, list1.ToArray(), arrlist);
- popup.TopMost = true;
- popup.Load += ((a, b) =>
- {
- this.Cursor = Cursors.Default;
- });
- popup.Show();
- }
-
- }
- }
|