| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191 |
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Tool;
- using CoreFS.CA06;
- using Infragistics.Win.UltraWinEditors;
- using System;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- namespace Core.StlMes.Client.Qcm
- {
- public partial class FrmWaterRatioPopup : FrmBase
- {
- private FrmWaterRatio ratio = new FrmWaterRatio();
- private string _ordLnPk = "";
- private string _stdName = "";
- public FrmWaterRatioPopup(string stdCode, string stdName, string steelCode, string stdStyleCode,
- string ordLnPk, string stdCodeNk, OpeBase ob)
- {
- InitializeComponent();
- ExceptionHelper.RegistException();
- _ordLnPk = ordLnPk;
- _stdName = stdName;
- this.ob = ob;
- if (_ordLnPk.Length < 32 && !_ordLnPk.StartsWith("BL"))
- {
- ultraToolbarsManager1.Tools["设定"].SharedProps.Visible = false;
- }
- ratio.Load += ratio_Load;
- ratio.UltraGrid1.AfterRowActivate += ratio_AfterRowActivate;
- ratio.StdCode = stdCode;
- ratio.SteelCode = steelCode;
- ratio.StdStyleCode = stdStyleCode;
- ratio.StdCodeNk = stdCodeNk;
- ratio.PopupLoad("", ob);
- SetDefaultCondition();
- FrmWaterRatioPopup_Fill_Panel.Controls.Add(ratio.SplitContainer1);
- ratio.UltraGrid1.InitializeRow += new Infragistics.Win.UltraWinGrid.InitializeRowEventHandler(UltraGrid1_InitializeRow);
- ratio.UltraGrid1.AfterRowInsert += new Infragistics.Win.UltraWinGrid.RowEventHandler(UltraGrid1_AfterRowInsert);
- }
- void ratio_AfterRowActivate(object sender, EventArgs e)
- {
- ratio_Load(null, null);
- }
- public void ratio_Load(object sender, EventArgs e)
- {
- DataRow setRatio = GetSetRatio(_ordLnPk);
- if (setRatio != null)
- {
- string ratioId = setRatio["RATIO_ID"].ToString();
- var row = ratio.UltraGrid1.Rows.Where(a => a.GetValue("RATIO_ID") == ratioId).FirstOrDefault();
- if (row != null)
- {
- row.Cells["CHK"].Value = true;
- row.Update();
- }
- }
- DataTable dt = GetMatchRatioId(_ordLnPk);
- if (dt.Rows.Count > 0)
- {
- var rows = ratio.UltraGrid1.Rows.Where(a => dt.Select("RATIO_ID = '" + a.GetValue("RATIO_ID") + "'").Length > 0);
- ratio.UltraGrid1.BeginUpdate();
- foreach (var row in rows)
- {
- row.Appearance.BackColor = Color.FromArgb(124, 205, 124);
- }
- ratio.UltraGrid1.EndUpdate();
- }
- }
- /// <summary>
- /// 获取设定水压系数
- /// </summary>
- /// <param name="ordLnPk"></param>
- /// <returns></returns>
- private DataRow GetSetRatio(string ordLnPk)
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreWaterRatio.getSetRatio",
- new object[] { ordLnPk }, ob);
- if (dt.Rows.Count > 0)
- {
- return dt.Rows[0];
- }
- else
- {
- return null;
- }
- }
- private DataTable GetMatchRatioId(string ordLnPk)
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreWaterRatio.getMatchRatioId",
- new object[] { ordLnPk }, ob);
- return dt;
- }
- void UltraGrid1_AfterRowInsert(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e)
- {
- //DataTable dt = (DataTable)((UltraComboEditor)e.Row.Cells["STD_NAME"].EditorComponent).DataSource;
- //DataRow[] drs = dt.Select("STD_CODE = '" + ratio.StdCode + "'");
- //if (drs.Length > 0)
- //{
- // e.Row.SetValue("STD_NAME", drs[0]["STD_CODE"].ToString());
- // e.Row.SetValue("STD_CODE", drs[0]["STD_CODE"].ToString());
- //}
- e.Row.Cells["STD_NAME"].Value = _stdName;
- e.Row.Cells["STD_CODE"].Value = ratio.StdCode;
- DataTable dt2 = (DataTable)((UltraComboEditor)ratio.UltraGrid1.DisplayLayout.Bands[0].Columns["STD_STYLE"].EditorComponent).DataSource;
- DataRow[] dr2s = dt2.Select("STD_STYLE_DESC = '" + ratio.StdStyleCode + "'");
- if (dr2s.Length > 0)
- {
- e.Row.SetValue("STD_STYLE_DESC", dr2s[0]["STD_STYLE_DESC"].ToString());
- e.Row.SetValue("STD_STYLE", dr2s[0]["STD_STYLE"].ToString());
- }
- ratio.GetSteelNew(e.Row.Cells["RATIO_ID"].Value.ToString(), e.Row.Cells["STD_CODE"].Value.ToString());
- }
- void UltraGrid1_InitializeRow(object sender, Infragistics.Win.UltraWinGrid.InitializeRowEventArgs e)
- {
- //DataTable dt = (DataTable)((UltraComboEditor)e.Row.Cells["STD_NAME"].EditorComponent).DataSource;
- //if (ratio.StdCode != "")
- //{
- // dt.DefaultView.RowFilter = "STD_CODE = '" + ratio.StdCode + "'";
- //}
- //e.Row.Cells["STD_NAME"].Value = _stdName;
- //e.Row.Cells["STD_CODE"].Value = ratio.StdCode;
- }
- private void SetDefaultCondition()
- {
- DataTable dt2 = (DataTable)((UltraComboEditor)ratio.UltraGrid1.DisplayLayout.Bands[0].Columns["STD_STYLE"].EditorComponent).DataSource;
- if (ratio.StdStyleCode != "")
- {
- dt2.DefaultView.RowFilter = "STD_STYLE_DESC = '" + ratio.StdStyleCode + "'";
- }
- }
- private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
- {
- switch (e.Tool.Key)
- {
- case "查询":
- ratio.ToolBar_Click(null, "Query");
- break;
- case "保存":
- ratio.ToolBar_Click(null, "Save");
- break;
- case "作废":
- ratio.ToolBar_Click(null, "Delete");
- break;
- case "恢复":
- ratio.ToolBar_Click(null, "Resume");
- break;
- case "刷新":
- ratio.ToolBar_Click(null, "Refresh");
- break;
- case "水压引用":
- ratio.ToolBar_Click(null, "WaterStd");
- break;
- case "设定":
- SetRatio();
- break;
- case "关闭":
- this.Close();
- break;
- }
- }
- private void SetRatio()
- {
- var row = ratio.UltraGrid1.Rows.Where(a => a.GetValue("CHK") == "True").FirstOrDefault();
- if (row == null)
- {
- MessageUtil.ShowWarning("请选择一条记录!");
- return;
- }
- string ordLnPk = _ordLnPk;
- string ratioId = row.GetValue("RATIO_ID");
- ServerHelper.SetData("com.steering.pss.qcm.CoreWaterRatio.setRatio",
- new object[] { ordLnPk, ratioId }, ob);
- MessageUtil.ShowTips("设定成功!");
- }
- }
- }
|