WinLabItemsSend.cs 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  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.PipeAndOutdec
  14. {
  15. public partial class WinLabItemsSend : FrmBase
  16. {
  17. private OpeBase _ob;
  18. public OpeBase Ob
  19. {
  20. get { return _ob; }
  21. set { _ob = value; }
  22. }
  23. private string strCheck;//路径
  24. public string StrCheck
  25. {
  26. get { return strCheck; }
  27. set { strCheck = value; }
  28. }
  29. private string strPath;//路径
  30. public string StrPath
  31. {
  32. get { return strPath; }
  33. set { strPath = value; }
  34. }
  35. //传输检验编号 和查询路径
  36. public WinLabItemsSend()
  37. {
  38. InitializeComponent();
  39. }
  40. protected override void OnLoad(EventArgs e)
  41. {
  42. base.OnLoad(e);
  43. ultraGrid1.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框
  44. }
  45. private void WinLabItemsSend_Load(object sender, EventArgs e)
  46. {
  47. InitColumns();
  48. QueryCheckConsignDetail();
  49. }
  50. private void QueryCheckConsignDetail()
  51. {
  52. try
  53. {
  54. dataTable1.Rows.Clear();
  55. DataTable dt = PublicServer.GetData("com.steering.lims.data." + strPath + ".QueryCheckConsignDetail",
  56. new Object[] { strCheck }, _ob);
  57. if (dt == null || dt.Rows.Count == 0)
  58. {
  59. return;
  60. }
  61. GridHelper.CopyDataToDatatable(dt, dataTable1, true);
  62. PublicPipeAndOutdec.RefreshAndAutoSizeColumns(ultraGrid1, new string[] { "PHY_NAME_MAX", "DEPT_ID" }, false);
  63. //GridHelper.RefreshAndAutoSize(ultraGrid1);
  64. }
  65. catch (Exception ex)
  66. {
  67. MessageUtil.ShowWarning(ex.Message);
  68. return;
  69. }
  70. }
  71. private void InitColumns()
  72. {
  73. string[] arrColumnsBaseDetail = new string[] { "CHK", "PHY_CODE_MAX", "PHY_NAME_MAX", "DEPT_ID" };
  74. string[] arrCaptionBaseDetail = new string[] { "选择", "检验项代码", "检验项名称", "去向" };
  75. PublicPipeAndOutdec.InitColumns(arrColumnsBaseDetail, arrCaptionBaseDetail, dataTable1);
  76. PublicPipeAndOutdec.setColumnShowOrHidden(ultraGrid1, new string[] { "PHY_CODE_MAX" }, false);
  77. PublicPipeAndOutdec.setOtherColumnReadOnly(ultraGrid1, new string[] { "CHK", "DEPT_ID" });
  78. ultraGrid1.DisplayLayout.Bands[0].Columns["DEPT_ID"].EditorComponent = publicUltraDept_ID.Ult;//样品类型
  79. ultraGrid1.DisplayLayout.Bands[0].Columns["DEPT_ID"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
  80. }
  81. private void btnOk_Click(object sender, EventArgs e)
  82. {
  83. UpdateCheckConsignDetail();
  84. }
  85. private void UpdateCheckConsignDetail()
  86. {
  87. try
  88. {
  89. if (strCheck == "")
  90. {
  91. return;
  92. }
  93. ultraGrid1.UpdateData();
  94. DataRow[] arrBase = dataTable1.Select("CHK = 'True'");
  95. if (arrBase == null || arrBase.Length == 0)
  96. {
  97. MessageUtil.ShowTips("请勾选需要调整权限的检验项目!");
  98. return;
  99. }
  100. ArrayList alBase = new ArrayList();//存放所有需要更新的基础信息
  101. ArrayList alBaseParams = new ArrayList();//存放单个基础参数信息
  102. foreach (DataRow row in arrBase)
  103. {
  104. alBaseParams = new ArrayList();
  105. alBaseParams.Add(row["DEPT_ID"].ToString());
  106. alBaseParams.Add(row["PHY_CODE_MAX"].ToString());
  107. alBaseParams.Add(strCheck);
  108. alBase.Add(alBaseParams);
  109. }
  110. PublicServer.SetData("com.steering.lims.data." + strPath + ".UpdateCheckConsignDetail",
  111. new Object[] { alBase }, _ob);
  112. this.DialogResult = DialogResult.OK;
  113. }
  114. catch (Exception e)
  115. {
  116. MessageUtil.ShowWarning(e.Message);
  117. }
  118. }
  119. }
  120. }