WinMatItemsSelect.cs 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  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 WinMatItemsSelect : FrmBase
  16. {
  17. private OpeBase _ob;
  18. public OpeBase Ob
  19. {
  20. get { return _ob; }
  21. set { _ob = value; }
  22. }
  23. private DataTable m_dtSelectItems;
  24. public DataTable DtSelectItems
  25. {
  26. get { return m_dtSelectItems; }
  27. set { m_dtSelectItems = value; }
  28. }
  29. //传输检验编号 和查询路径
  30. public WinMatItemsSelect()
  31. {
  32. InitializeComponent();
  33. }
  34. protected override void OnLoad(EventArgs e)
  35. {
  36. base.OnLoad(e);
  37. ultraGrid1.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框
  38. }
  39. private void WinMatItemsSelect_Load(object sender, EventArgs e)
  40. {
  41. InitColumns();
  42. QueryMatBase();
  43. SelectDataRow();
  44. }
  45. private void QueryMatBase()
  46. {
  47. try
  48. {
  49. //查询原材料基础表检验项目
  50. DataTable dt = PublicServer.GetData("com.steering.lims.data.base.FrmBaseSelectItems.QueryMatItems",
  51. new Object[] { }, _ob);
  52. if (dt == null || dt.Rows.Count == 0)
  53. {
  54. dataTable1.Rows.Clear();
  55. return;
  56. }
  57. GridHelper.CopyDataToDatatable(dt, dataTable1, true);
  58. //PublicMat.RefreshAndAutoSizeColumns(ultraGrid1, new string[] { "PHY_NAME_MAX", "DEPT_ID" }, false);
  59. GridHelper.RefreshAndAutoSize(ultraGrid1);
  60. }
  61. catch (Exception ex)
  62. {
  63. MessageUtil.ShowWarning(ex.Message);
  64. return;
  65. }
  66. }
  67. //把已选择的检验项目赋值打钩
  68. private void SelectDataRow()
  69. {
  70. if (m_dtSelectItems != null && m_dtSelectItems.Rows.Count > 0)
  71. {
  72. foreach (DataRow dr in dataTable1.Rows)//已经选择大项默认勾选
  73. {
  74. if (m_dtSelectItems.Select("MAT_CODE = '" + dr["MAT_CODE"].ToString().Trim() + "'").Length > 0)
  75. {
  76. dr["CHK"] = true;
  77. }
  78. }
  79. }
  80. }
  81. private void InitColumns()
  82. {
  83. string[] arrColumnsBaseDetail = new string[] { "CHK", "DEPT_ID", "DEPT_ID_DESC", "MAT_CODE", "MAT_NAME", "MAT_TYPE", "MAT_UNIT", "VALUE_TYPE" };
  84. string[] arrCaptionBaseDetail = new string[] { "选择", "试验室", "试验室", "检验项代码", "检验项", "项目类型", "单位", "值类型" };
  85. PublicMat.InitColumns(arrColumnsBaseDetail, arrCaptionBaseDetail, dataTable1);
  86. PublicMat.setColumnShowOrHidden(ultraGrid1, new string[] { "DEPT_ID", "MAT_CODE", "MAT_TYPE", "VALUE_TYPE" }, false);
  87. PublicMat.setOtherColumnReadOnly(ultraGrid1, new string[] { "CHK" });
  88. }
  89. private void btnOk_Click(object sender, EventArgs e)
  90. {
  91. this.DialogResult = DialogResult.OK;
  92. ultraGrid1.UpdateData();
  93. m_dtSelectItems = PublicMat.GetSelectDt(dataTable1, "CHK = 'True'");
  94. }
  95. }
  96. }