CtrlMscChem.cs 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. using CoreFS.CA06;
  2. using Infragistics.Win.UltraWinEditors;
  3. using Infragistics.Win.UltraWinGrid;
  4. using System;
  5. using System.Collections;
  6. using System.Data;
  7. using System.Windows.Forms;
  8. namespace Core.StlMes.Client.Qcm
  9. {
  10. public partial class CtrlMscChem : UserControl
  11. {
  12. public FrmChemStandard _frmChemStd;
  13. private bool isLoaded = false;
  14. private string _customInfo;
  15. public OpeBase Ob
  16. {
  17. get { return _frmChemStd.ob; }
  18. set { _frmChemStd.ob = value; }
  19. }
  20. public event BeforeRowInsertEventHandler BeforeRowInsert;
  21. public UltraGrid Grid
  22. {
  23. get { return _frmChemStd.UltraGrid1; }
  24. }
  25. public DataTable ChemDataTable1
  26. {
  27. get { return _frmChemStd.DataTable1; }
  28. }
  29. public DataTable ChemDataTable2
  30. {
  31. get { return _frmChemStd.DataTable2; }
  32. }
  33. public bool IsQueryValidData
  34. {
  35. get { return _frmChemStd.UltraCheckValid.Checked; }
  36. set { _frmChemStd.UltraCheckValid.Checked = value; }
  37. }
  38. public CtrlMscChem(System.Windows.Forms.Control container)
  39. {
  40. InitializeComponent();
  41. this.Dock = DockStyle.Fill;
  42. _frmChemStd = new FrmChemStandard();
  43. _frmChemStd.UltraGrid1.BeforeRowInsert += new BeforeRowInsertEventHandler(UltraGrid1_BeforeRowInsert);
  44. _frmChemStd.UltraGrid1.AfterRowInsert += new Infragistics.Win.UltraWinGrid.RowEventHandler(UltraGrid1_AfterRowInsert);
  45. this.Controls.Add(_frmChemStd.UltraGrid1);
  46. container.Controls.Add(this);
  47. this.BringToFront();
  48. }
  49. /// <summary>
  50. /// 显示以MSC为查询条件的交付标准
  51. /// </summary>
  52. /// <param name="msc"></param>
  53. /// <param name="ob"></param>
  54. public void ShowGrid(string msc, OpeBase ob)
  55. {
  56. if (isLoaded == false)
  57. {
  58. //_frmChemStd = new FrmChemStandard();
  59. //_frmChemStd.Msc = msc;
  60. _frmChemStd.Msc = msc;
  61. _frmChemStd.PopupLoad("1", ob);
  62. _customInfo = "1";
  63. isLoaded = true;
  64. }
  65. else
  66. {
  67. if (_frmChemStd.Msc != "" && _frmChemStd.Msc != msc)
  68. {
  69. _frmChemStd.Msc = msc;
  70. this.RefreshData();
  71. }
  72. }
  73. }
  74. /// <summary>
  75. /// 显示以标准为查询条件的内控标准
  76. /// </summary>
  77. public void ShowStdGrid(string stdCode, string produccodeNk, ArrayList steelCodes,
  78. string steelcodeNk, string processCode, OpeBase ob)
  79. {
  80. if (isLoaded == false)
  81. {
  82. //_frmChemStd = new FrmChemStandard();
  83. //_frmChemStd.Msc = msc;
  84. _frmChemStd.StdCode = stdCode;
  85. _frmChemStd.ProduccodeNk = produccodeNk;
  86. _frmChemStd.SteelCodes = steelCodes;
  87. _frmChemStd.SteelcodeNk = steelcodeNk;
  88. _frmChemStd.ProcessCodeNk = processCode;
  89. _frmChemStd.PopupLoad("2", ob);
  90. _customInfo = "2";
  91. isLoaded = true;
  92. }
  93. else
  94. {
  95. if (_frmChemStd.StdCode != "" && _frmChemStd.StdCode != stdCode)
  96. {
  97. _frmChemStd.StdCode = stdCode;
  98. _frmChemStd.ProduccodeNk = produccodeNk;
  99. _frmChemStd.SteelcodeNk = steelcodeNk;
  100. _frmChemStd.SteelCodes = steelCodes;
  101. _frmChemStd.ProcessCodeNk = processCode;
  102. //this.RefreshData();
  103. _frmChemStd.PopupRefresh();
  104. }
  105. }
  106. }
  107. public void ShowPurchaseGrid(OpeBase ob)
  108. {
  109. if (isLoaded)
  110. {
  111. _frmChemStd.PopupRefresh();
  112. }
  113. else
  114. {
  115. _frmChemStd.PopupLoad("2", ob);
  116. isLoaded = true;
  117. }
  118. }
  119. public void Query(string msc, string codeJg)
  120. {
  121. _frmChemStd.Msc = msc;
  122. _frmChemStd.CodeJg = codeJg;
  123. _frmChemStd.ToolBar_Click(null, "Query");
  124. }
  125. public void QueryStd(string stdCode, string produccodeNk, ArrayList steelCodes, string modelCode)
  126. {
  127. _frmChemStd.StdCode = stdCode;
  128. _frmChemStd.ProduccodeNk = produccodeNk;
  129. _frmChemStd.SteelCodes = steelCodes;
  130. _frmChemStd.ModelCode = modelCode;
  131. _frmChemStd.ToolBar_Click(null, "Query");
  132. }
  133. public void QueryPurchaseAgreement(string stdCodeNk)
  134. {
  135. _frmChemStd.QueryPurchaseAgreement(stdCodeNk);
  136. }
  137. public void Save()
  138. {
  139. _frmChemStd.ToolBar_Click(null, "Save");
  140. }
  141. public void Delete()
  142. {
  143. _frmChemStd.ToolBar_Click(null, "Delete");
  144. }
  145. public void Resume()
  146. {
  147. _frmChemStd.ToolBar_Click(null, "Resume");
  148. }
  149. public void Copy()
  150. {
  151. _frmChemStd.ToolBar_Click(null, "Copy");
  152. }
  153. public void Paste()
  154. {
  155. _frmChemStd.ToolBar_Click(null, "Paste");
  156. }
  157. public void RefreshData()
  158. {
  159. _frmChemStd.ToolBar_Click(null, "Refresh");
  160. }
  161. public void Group()
  162. {
  163. _frmChemStd.ToolBar_Click(null, "Group");
  164. }
  165. public void CancelGroup()
  166. {
  167. _frmChemStd.ToolBar_Click(null, "CancelGroup");
  168. }
  169. public void Clear()
  170. {
  171. _frmChemStd.DataTable1.Clear();
  172. _frmChemStd.DataTable2.Clear();
  173. }
  174. public void ExpandFirstRow()
  175. {
  176. if (_frmChemStd.UltraGrid1.Rows.Count > 0)
  177. {
  178. _frmChemStd.UltraGrid1.Rows[0].ExpandAll();
  179. }
  180. }
  181. private void UltraGrid1_AfterRowInsert(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e)
  182. {
  183. if (e.Row.HasParent()) return;
  184. if (_customInfo == "1")
  185. {
  186. e.Row.SetValue("MSC", _frmChemStd.Msc);
  187. DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["MSC"].EditorComponent).DataSource;
  188. DataRow[] drs = dt.Select("MSC = '" + _frmChemStd.Msc + "'");
  189. if (drs.Length > 0)
  190. {
  191. e.Row.Cells["PSC"].Value = drs[0][2];
  192. e.Row.Cells["PSC_DESC"].Value = drs[0][3];
  193. e.Row.Cells["PRODUCNAME"].Value = drs[0][4];
  194. if (e.Row.Cells.Exists("STD_NAME_B"))
  195. {
  196. e.Row.Cells["STD_NAME_B"].Value = drs[0][5];
  197. }
  198. else
  199. {
  200. e.Row.Cells["STD_NAME"].Value = drs[0][5];
  201. }
  202. e.Row.Cells["STEELNAME"].Value = drs[0][6];
  203. e.Row.Cells["STD_STYLE_DESC"].Value = drs[0][7];
  204. e.Row.Cells["STDSTYLE"].Value = drs[0][8];
  205. }
  206. }
  207. else if (_customInfo == "2")
  208. {
  209. e.Row.Cells["STD_CODE_NK"].Value = _frmChemStd.StdCode;
  210. DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["STD_CODE_NK"].EditorComponent).DataSource;
  211. DataRow[] drs = dt.Select("STD_CODE = '" + _frmChemStd.StdCode + "'");
  212. if (drs.Length > 0)
  213. {
  214. e.Row.Cells["STD_NAME_NK"].Value = drs[0][1];
  215. e.Row.Cells["STDSTYLE"].Value = drs[0][2];
  216. }
  217. }
  218. e.Row.Update();
  219. }
  220. private void UltraGrid1_BeforeRowInsert(object sender, BeforeRowInsertEventArgs e)
  221. {
  222. if (BeforeRowInsert != null)
  223. {
  224. BeforeRowInsert(sender, e);
  225. }
  226. }
  227. }
  228. }