WinMatAttrSelect.cs 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. using Core.Mes.Client.Comm.Control;
  2. using Core.Mes.Client.Comm.Tool;
  3. using CoreFS.CA06;
  4. using System;
  5. using System.Collections;
  6. using System.Collections.Generic;
  7. using System.ComponentModel;
  8. using System.Data;
  9. using System.Drawing;
  10. using System.Linq;
  11. using System.Text;
  12. using System.Windows.Forms;
  13. namespace Core.StlMes.Client.Lims.Data.Mat
  14. {
  15. public partial class WinMatAttrSelect : FrmBase
  16. {
  17. private OpeBase _ob;
  18. public OpeBase Ob
  19. {
  20. get { return _ob; }
  21. set { _ob = value; }
  22. }
  23. private string strItem_Code;
  24. public string StrItem_Code
  25. {
  26. get { return strItem_Code; }
  27. set { strItem_Code = value; }
  28. }
  29. private string strStdId;
  30. public string StrStdId
  31. {
  32. get { return strStdId; }
  33. set { strStdId = value; }
  34. }
  35. private string strStdCode;
  36. public string StrStdCode
  37. {
  38. get { return strStdCode; }
  39. set { strStdCode = value; }
  40. }
  41. //传输检验编号 和查询路径
  42. public WinMatAttrSelect()
  43. {
  44. InitializeComponent();
  45. }
  46. public WinMatAttrSelect(OpeBase ob)
  47. {
  48. this._ob = ob;
  49. InitializeComponent();
  50. }
  51. protected override void OnLoad(EventArgs e)
  52. {
  53. base.OnLoad(e);
  54. //ultraGrid1.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框
  55. }
  56. private void WinMatItemsSelect_Load(object sender, EventArgs e)
  57. {
  58. InitColumns();
  59. QueryItemAttr();
  60. }
  61. private void QueryItemAttr()
  62. {
  63. try
  64. {
  65. ArrayList al = new ArrayList();
  66. al.Add(strItem_Code);
  67. //查询原材料基础表检验项目
  68. DataTable dt = PublicServer.GetData("com.steering.lims.data.base.FrmBaseMatStdDetail.QueryItemAttr", new Object[] { al }, _ob);
  69. if (dt == null || dt.Rows.Count == 0)
  70. {
  71. dataTable1.Rows.Clear();
  72. return;
  73. }
  74. GridHelper.CopyDataToDatatable(dt, dataTable1, true);
  75. //PublicMat.RefreshAndAutoSizeColumns(ultraGrid1, new string[] { "PHY_NAME_MAX", "DEPT_ID" }, false);
  76. GridHelper.RefreshAndAutoSize(ultraGrid1);
  77. }
  78. catch (Exception ex)
  79. {
  80. MessageUtil.ShowWarning(ex.Message);
  81. return;
  82. }
  83. }
  84. private void InitColumns()
  85. {
  86. string[] arrColumnsBaseDetail = new string[] { "CHK", "ITEM_ATTR_ID", "ITEM_ATTR" };
  87. string[] arrCaptionBaseDetail = new string[] { "选择", "属性", "属性" };
  88. PublicMat.InitColumns(arrColumnsBaseDetail, arrCaptionBaseDetail, dataTable1);
  89. PublicMat.setColumnShowOrHidden(ultraGrid1, new string[] { "ITEM_ATTR_ID" }, false);
  90. PublicMat.setOtherColumnReadOnly(ultraGrid1, new string[] { "CHK" });
  91. }
  92. private void btnOk_Click(object sender, EventArgs e)
  93. {
  94. this.DialogResult = DialogResult.OK;
  95. ultraGrid1.UpdateData();
  96. strStdId = txtSTD_ID.Text;
  97. strStdCode = txtSTD_CODE.Text;
  98. }
  99. private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  100. {
  101. string strGROUP_LEVEL_CODE = "";
  102. string strGROUP_LEVEL = "";
  103. ultraGrid1.UpdateData();
  104. if (e.Cell.Column.Key == "CHK")
  105. {
  106. foreach (DataRow dr in dataTable1.Rows)
  107. {
  108. if (dr["CHK"].ToString() == "True")
  109. {
  110. strGROUP_LEVEL_CODE += "," + dr["ITEM_ATTR_ID"].ToString();
  111. strGROUP_LEVEL += "," + dr["ITEM_ATTR"].ToString();
  112. }
  113. }
  114. strGROUP_LEVEL_CODE = strGROUP_LEVEL_CODE == "" ? "" : strGROUP_LEVEL_CODE.Remove(0, 1);
  115. strGROUP_LEVEL = strGROUP_LEVEL == "" ? "" : strGROUP_LEVEL.Remove(0, 1);
  116. txtSTD_ID.Text = strGROUP_LEVEL_CODE;
  117. txtSTD_CODE.Text = strGROUP_LEVEL;
  118. }
  119. }
  120. }
  121. }