| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Tool;
- using CoreFS.CA06;
- using Infragistics.Win.UltraWinGrid;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Data;
- using System.Linq;
- using System.Windows.Forms;
- namespace Core.StlMes.Client.Qcm
- {
- public partial class PopupProductGrade : FrmBase
- {
- FrmProductGrade _frmGrade;
- private string _msc = "";
- private string _mscPline = "";
- private List<string> _listChecked = new List<string>();
- //private OpeBase _ob;
- public PopupProductGrade(string msc, string mscPline, OpeBase ob)
- {
- InitializeComponent();
- ExceptionHelper.RegistException();
- this.ob = ob;
- _msc = msc;
- _mscPline = mscPline;
- _frmGrade = new FrmProductGrade();
- _frmGrade.ob = ob;
- _frmGrade.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
- _frmGrade.TopLevel = false;
- _frmGrade.Show();
- _frmGrade.Dock = DockStyle.Fill;
- //_frmGrade.PopupLoad("", ob);
- this.panel1.Controls.Add(_frmGrade);
- }
- private void PopupProductGrade_Load(object sender, EventArgs e)
- {
- try
- {
- this.Cursor = Cursors.WaitCursor;
- GridHelper.SetExcludeColumnsActive(_frmGrade.UltraGrid2.DisplayLayout.Bands[0], "cb");
- Query();
- }
- finally
- {
- this.Cursor = Cursors.Default;
- }
- }
- private void RefreshMscGrade()
- {
- ArrayList list = new ArrayList();
- list.Add(_msc);
- list.Add(_mscPline);
- DataTable dt = null;
- try
- {
- dt = ServerHelper.GetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.queryMscGrade",
- new object[] { list }, this.ob);
- }
- catch
- {
- return;
- }
- //DateTime dtS = DateTime.Now;
- //foreach (DataRow dr in dt.Rows)
- //{
- // UltraGridRow[] rows = GridHelper.GetRowsWithKey(_frmGrade.UltraGrid2,
- // new string[] { "GRADECODE" }, new string[] { dr["GRADECODE"].ToString() });
- // if (rows.Length > 0)
- // {
- // rows[0].Cells["cb"].Value = true;
- // }
- //}
- //DateTime dtS2 = DateTime.Now;
- //double d = (dtS2 - dtS).TotalMilliseconds;
- DateTime dtS = DateTime.Now;
- IQueryable<UltraGridRow> queryableRows = _frmGrade.UltraGrid2.Rows.AsQueryable().Where(a => 1 < 0);
- foreach (DataRow dr in dt.Rows)
- {
- queryableRows = queryableRows.Concat(_frmGrade.UltraGrid2.Rows.AsQueryable().
- Where("GRADECODE = '" + dr["GRADECODE"].ToString() + "'"));
- }
- //queryableRows.ToList().ForEach(a=> a.Cells["cb"].Value = true);
- _listChecked.Clear();
- foreach (UltraGridRow row in queryableRows.ToList())
- {
- row.Cells["cb"].Value = true;
- _listChecked.Add(row.GetValue("GRADECODE"));
- }
- DateTime dtS2 = DateTime.Now;
- double d = (dtS2 - dtS).TotalMilliseconds;
- _frmGrade.UltraGrid2.UpdateData();
- }
- private void Query()
- {
- _frmGrade.ToolBar_Click(null, "doQuery");
- RefreshMscGrade();
- }
- private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
- {
- switch (e.Tool.Key)
- {
- case "查询":
- Query();
- break;
- case "保存":
- _frmGrade.ToolBar_Click(null, "doSave");
- RefreshMscGrade();
- break;
- case "作废":
- _frmGrade.ToolBar_Click(null, "doDelete");
- break;
- case "作废查询":
- _frmGrade.ToolBar_Click(null, "QueryKey");
- RefreshMscGrade();
- break;
- case "恢复":
- _frmGrade.ToolBar_Click(null, "doResume");
- break;
- }
- }
- private void btnSubmit_Click(object sender, EventArgs e)
- {
- _frmGrade.UltraGrid2.UpdateData();
- UltraGridRow[] rows = _frmGrade.UltraGrid2.Rows.AsQueryable().Where(
- a => a.GetValue("cb") == "True" || _listChecked.Contains(a.GetValue("GRADECODE"))).ToArray();
- ArrayList queryMscGradeList = new ArrayList();
- queryMscGradeList.Add(_msc);
- queryMscGradeList.Add(_mscPline);
- DataTable dt = null;
- dt = ServerHelper.GetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.queryMscGrade",
- new object[] { queryMscGradeList }, this.ob);
- ArrayList list = new ArrayList();
- foreach (UltraGridRow row in _frmGrade.UltraGrid2.Rows)
- {
- CellsCollection cells = row.Cells;
- bool chk = bool.Parse(row.Cells["cb"].Value.ToString());
- DataRow[] drs = dt.Select("GRADECODE = '" + cells["GRADECODE"].Value.ToString() + "'");
- if (drs.Length > 0 && !chk)
- {
- DataTable dtIsUsedGrade = ServerHelper.GetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.isUsedGrade",
- new object[] { _msc, _mscPline, cells["GRADECODE"].Value.ToString() }, ob);
- if (dtIsUsedGrade.Rows.Count > 0)
- {
- MessageUtil.ShowWarning("钢种[" + cells["GRADENAME"].Value.ToString() + "]已被该制程下的内控标准使用,不能取消!");
- cells["cb"].Value = true;
- row.Update();
- return;
- }
- }
- ArrayList listSub = new ArrayList();
- listSub.Add(chk ? "" : "DELETE");
- listSub.Add(_msc);
- listSub.Add(_mscPline);
- listSub.Add(" ");
- listSub.Add(cells["GRADECODE"].Value.ToString());
- listSub.Add(cells["GRADENAME"].Value.ToString());
- listSub.Add(cells["ASSORTMENT_CODE"].Value.ToString());
- listSub.Add(cells["ASSORTMENT_NAME"].Value.ToString());
- listSub.Add(" ");
- listSub.Add(" ");
- listSub.Add(CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName());
- listSub.Add("");
- list.Add(listSub);
- }
- try
- {
- ServerHelper.SetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.insertMscGrade",
- new object[] { list }, this.ob);
- }
- catch
- {
- return;
- }
- MessageUtil.ShowTips("操作成功!");
- this.DialogResult = DialogResult.OK;
- }
- private void btnCancel_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- }
- }
|