PscMscPopup.cs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using Core.Mes.Client.Comm.Control;
  10. using Core.Mes.Client.Comm.Tool;
  11. using Core.StlMes.Client.Qcm;
  12. using Core.StlMes.Client.Qcm.Control;
  13. using Core.StlMes.Client.Qcm.model;
  14. using CoreFS.CA06;
  15. using Infragistics.Win.UltraWinGrid;
  16. namespace Core.StlMes.Client.SaleOrder.Dialog
  17. {
  18. public partial class PscMscPopup : FrmBase
  19. {
  20. private ComMscCtrl _comMscCtrl;
  21. private ComPscCtrl _comPscCtrl;
  22. private string _choiceMsc = "";
  23. private string _choiceMscDesc = "";
  24. public string ChoiceMscDesc
  25. {
  26. get { return _choiceMscDesc; }
  27. set { _choiceMscDesc = value; }
  28. }
  29. /// <summary>
  30. /// 选择的冶金规范
  31. /// </summary>
  32. public string ChoiceMsc
  33. {
  34. get { return _choiceMsc; }
  35. set { _choiceMsc = value; }
  36. }
  37. public PscMscPopup(string msc, OpeBase ob)
  38. {
  39. InitializeComponent();
  40. _choiceMsc = msc;
  41. _comPscCtrl = new ComPscCtrl(splitContainer1.Panel1, ob);
  42. _comMscCtrl = new ComMscCtrl(splitContainer1.Panel2, ob);
  43. _comPscCtrl.UltraGrid1.AfterRowActivate += _comPscCtrl_AfterRowActivate;
  44. GridHelper.HidenExcludeColumns(_comPscCtrl.UltraGrid1.DisplayLayout.Bands[0], "Psc", "PscDesc");
  45. GridHelper.HidenExcludeColumns(_comMscCtrl.UltraGrid1.DisplayLayout.Bands[0],
  46. "Msc", "MscDesc", "UseDesc", "MscStyle", "CHK");
  47. GridHelper.SetExcludeColumnsActive(_comPscCtrl.UltraGrid1.DisplayLayout.Bands[0], "");
  48. GridHelper.SetExcludeColumnsActive(_comMscCtrl.UltraGrid1.DisplayLayout.Bands[0], "CHK");
  49. //GridHelper.SetAllColumnsActive(_comPscCtrl.UltraGrid1.DisplayLayout.Bands[0]);
  50. //GridHelper.SetAllColumnsActive(_comMscCtrl.UltraGrid1.DisplayLayout.Bands[0]);
  51. Query();
  52. IQueryable<UltraGridRow> rows = _comPscCtrl.UltraGrid1.Rows.AsQueryable().Where(
  53. a => a.GetValue("Psc") != "" && _choiceMsc != ""
  54. && a.GetValue("Psc").Substring(3, 7) == _choiceMsc.Substring(3, 7));
  55. if (rows.Count() > 0)
  56. {
  57. rows.First().Activate();
  58. }
  59. }
  60. void _comPscCtrl_AfterRowActivate(object sender, EventArgs e)
  61. {
  62. PscEntity comPsc = (PscEntity)_comPscCtrl.UltraGrid1.ActiveRow.ListObject;
  63. _comMscCtrl.QueryByPsc(comPsc.Psc.ToString2());
  64. IQueryable<UltraGridRow> rows = _comMscCtrl.UltraGrid1.Rows.AsQueryable().Where(
  65. a => a.GetValue("Msc") == _choiceMsc);
  66. if (rows.Count() > 0)
  67. {
  68. rows.First().Cells["CHK"].Value = true;
  69. _choiceMsc = "";
  70. _comMscCtrl.UltraGrid1.UpdateData();
  71. }
  72. }
  73. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  74. {
  75. switch (e.Tool.Key)
  76. {
  77. case "查询":
  78. Query();
  79. break;
  80. case "确认选择":
  81. Choice();
  82. break;
  83. }
  84. }
  85. private void Query()
  86. {
  87. try
  88. {
  89. this.Cursor = Cursors.WaitCursor;
  90. _comPscCtrl.QueryPscDesc(new PscEntity()
  91. {
  92. Producname = labelTextBox1.Checked ? labelTextBox1.Text.Trim() : "",
  93. Steelname = labelTextBox2.Checked ? labelTextBox2.Text.Trim() : "",
  94. StdName = labelTextBox3.Checked ? labelTextBox3.Text.Trim() : ""
  95. });
  96. }
  97. finally
  98. {
  99. this.Cursor = Cursors.Default;
  100. }
  101. }
  102. private void Choice()
  103. {
  104. _comMscCtrl.UltraGrid1.UpdateData();
  105. IQueryable<UltraGridRow> rows = _comMscCtrl.UltraGrid1.Rows.AsQueryable().Where("CHK = 'True'");
  106. if (rows.Count() == 0)
  107. {
  108. MessageUtil.ShowWarning("请选择一行记录!");
  109. return;
  110. }
  111. _choiceMsc = rows.First().GetValue("Msc");
  112. _choiceMscDesc = rows.First().GetValue("MscDesc");
  113. this.DialogResult = System.Windows.Forms.DialogResult.OK;
  114. this.Close();
  115. }
  116. }
  117. }