PopupProductName.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. using Core.Mes.Client.Comm.Control;
  2. using CoreFS.CA06;
  3. using Infragistics.Win.UltraWinGrid;
  4. using System;
  5. using System.Data;
  6. using System.Linq;
  7. using System.Windows.Forms;
  8. namespace Core.StlMes.Client.Qcm
  9. {
  10. public partial class PopupProductName : FrmBase
  11. {
  12. private FrmProductName _frmProductName;
  13. private DataTable _dt;
  14. private bool _isQuerying = false;
  15. private string _productNames = "";
  16. private string _productCodes = "";
  17. public string ProductCodes
  18. {
  19. get { return _productCodes; }
  20. set { _productCodes = value; }
  21. }
  22. public string ProductNames
  23. {
  24. get { return _productNames; }
  25. set { _productNames = value; }
  26. }
  27. private void PopupProductName_Load(object sender, EventArgs e)
  28. {
  29. }
  30. public PopupProductName(string productCodes, OpeBase ob)
  31. {
  32. InitializeComponent();
  33. this.ob = ob;
  34. _productCodes = productCodes;
  35. _frmProductName = new FrmProductName();
  36. _frmProductName.UltraGrid2.InitializeRow += UltraGrid2_InitializeRow;
  37. _frmProductName.UltraGrid2.CellChange += UltraGrid2_CellChange;
  38. _frmProductName.PopupLoad(ob);
  39. panel2.Controls.Add(_frmProductName.UltraGrid2);
  40. _frmProductName.UltraGrid2.DisplayLayout.Bands[0].Columns["CHK"].Hidden = false;
  41. foreach (UltraGridColumn column in _frmProductName.UltraGrid2.DisplayLayout.Bands[0].Columns)
  42. {
  43. column.SortIndicator = SortIndicator.Disabled;
  44. }
  45. _isQuerying = true;
  46. _frmProductName.ToolBar_Click(null, "doQuery");
  47. _dt = ((DataSet)_frmProductName.UltraGrid2.DataSource).Tables[_frmProductName.UltraGrid2.DataMember];
  48. foreach (DataRow dr in _dt.Rows)
  49. {
  50. string productCode = dr["PRODUCCODE"].ToString();
  51. if (_productCodes.Contains(productCode))
  52. {
  53. dr["CHK"] = true;
  54. }
  55. }
  56. SortRows();
  57. _isQuerying = false;
  58. InitDefaultProduct();
  59. }
  60. private void SortRows()
  61. {
  62. DataTable dtSort = _dt.Copy();
  63. dtSort.DefaultView.Sort = "CHK DESC, PRODUCNAME ASC";
  64. _frmProductName.UltraGrid2.BeginUpdate();
  65. GridHelper.CopyDataToDatatable(dtSort.DefaultView.ToTable(), _dt, true);
  66. _frmProductName.UltraGrid2.EndUpdate();
  67. }
  68. void UltraGrid2_InitializeRow(object sender, InitializeRowEventArgs e)
  69. {
  70. }
  71. void UltraGrid2_CellChange(object sender, CellEventArgs e)
  72. {
  73. _frmProductName.UltraGrid2.UpdateData();
  74. }
  75. private void InitDefaultProduct()
  76. {
  77. _frmProductName.UltraGrid2.UpdateData();
  78. }
  79. private void btnOk_Click(object sender, EventArgs e)
  80. {
  81. _productCodes = "";
  82. _frmProductName.UltraGrid2.UpdateData();
  83. UltraGridRow[] rows = _frmProductName.UltraGrid2.Rows.AsQueryable().Where("CHK = 'True'").ToArray();
  84. foreach (UltraGridRow row in rows)
  85. {
  86. if (_productCodes == "")
  87. {
  88. _productCodes += row.GetValue("PRODUCCODE");
  89. _productNames += row.GetValue("PRODUCNAME");
  90. }
  91. else
  92. {
  93. _productNames += ";" + row.GetValue("PRODUCNAME");
  94. _productCodes += ";" + row.GetValue("PRODUCCODE");
  95. }
  96. }
  97. //ServerHelper.SetData("com.steering.pss.qcm.CoreChemStandard.insertComMscStdCicRProduct",
  98. // new object[] { list, _cic, CoreUserInfo.UserInfo.GetUserName()}, ob);
  99. //MessageUtil.ShowTips("保存成功!");
  100. this.DialogResult = DialogResult.OK;
  101. }
  102. private void btnCanCel_Click(object sender, EventArgs e)
  103. {
  104. this.DialogResult = DialogResult.Cancel;
  105. }
  106. }
  107. }