FrmMilCraftworkBase.cs 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428
  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 CoreFS.CA06;
  10. using System.Collections;
  11. using Core.Mes.Client.Comm.Tool;
  12. using Core.Mes.Client.Comm.Server;
  13. using Core.Mes.Client.Comm.Control;
  14. using Infragistics.Win.UltraWinEditors;
  15. using Infragistics.Win.UltraWinGrid;
  16. using Infragistics.Win;
  17. namespace Core.StlMes.Client.ZGMil.Signature
  18. {
  19. public partial class FrmMilCraftworkBase : FrmBase
  20. {
  21. UltraCombo uceTable = new UltraCombo();//表名
  22. UltraCombo uceColName = new UltraCombo();//字段名
  23. UltraComboEditor station = new UltraComboEditor();
  24. public FrmMilCraftworkBase()
  25. {
  26. InitializeComponent();
  27. }
  28. private void FrmMilCraftworkBase_Load(object sender, EventArgs e)
  29. {
  30. //表名
  31. DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryTbleName", null, ob);
  32. if (dt != null && dt.Rows.Count > 0)
  33. {
  34. uceTable.DataSource = dt;
  35. uceTable.ValueMember = "TABLE_NAME";
  36. //TubeRoll.SetComboItemHeight(cmbTableColm);
  37. uceTable.DisplayLayout.Bands[0].Columns[0].Header.Caption = "英文名";
  38. uceTable.DisplayLayout.Bands[0].Columns[1].Header.Caption = "中文名";
  39. }
  40. //TubeRoll.InitCombo(uceTable, "com.steering.mes.signature.FrmMilCraftworkBase.queryTbleName", "TABLE_NAME", this.ob, false);
  41. TubeRoll.BindColumnComb(uceTable, "TABLE_NAME", this.Controls, this.ultraGrid1, 0);
  42. TubeRoll.InitComboEditor(station, "com.steering.mes.signature.FrmTubTechnological.doQueryStation", "STATION_CODE", this.ob, false);
  43. TubeRoll.BindColumn(station, "STATION_CODE", this.Controls, this.ultraGrid1, 0);
  44. }
  45. private void TableColName(string Table,UltraGridRow urg)
  46. {
  47. uceColName = new UltraCombo();//字段名
  48. DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryTableColumnName", new Object[] { Table }, ob);
  49. if (dt != null && dt.Rows.Count > 0)
  50. {
  51. uceColName.DataSource = dt;
  52. uceColName.ValueMember = "COLUMN_NAME";
  53. //TubeRoll.SetComboItemHeight(cmbTableColm);
  54. uceColName.DisplayLayout.Bands[0].Columns[0].Header.Caption = "英文名";
  55. uceColName.DisplayLayout.Bands[0].Columns[1].Header.Caption = "中文名";
  56. uceColName.DisplayLayout.Bands[0].Columns[2].Header.Caption = "类型";
  57. }
  58. TubeRoll.BindRow1(uceColName, "COLUMN_KEY", this.Controls, urg, 0);
  59. }
  60. /// <summary>
  61. /// 重写基类方法
  62. /// </summary>
  63. /// <param name="sender"></param>
  64. /// <param name="ToolbarKey"></param>
  65. public override void ToolBar_Click(object sender, string ToolbarKey)
  66. {
  67. switch (ToolbarKey)
  68. {
  69. case "Query":
  70. DoQuery();
  71. break;
  72. case "Add":
  73. DoAdd();
  74. break;
  75. case "Invalid":
  76. DoInvalid();
  77. break;
  78. case "Delete":
  79. DoDelete();
  80. break;
  81. case "Update":
  82. DoUpdare();
  83. break;
  84. case "Close":
  85. this.Close();
  86. break;
  87. }
  88. }
  89. private void DoQuery()
  90. {
  91. string strGY = "";
  92. if (ChkFactor.Checked)
  93. {
  94. if (TxtFactor.Text.Trim() == "")
  95. {
  96. MessageUtil.ShowTips("工艺名称不能为空!");
  97. return;
  98. }
  99. else
  100. {
  101. strGY = TxtFactor.Text.Trim();
  102. }
  103. }
  104. string strval = "1";
  105. if (chkVal.Checked)
  106. {
  107. strval = "0";
  108. }
  109. DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryCrafBase", new Object[] { strGY, strval }, ob);
  110. GridHelper.CopyDataToDatatable(dt, this.dataTable1, true);
  111. foreach (UltraGridRow ugr in ultraGrid1.Rows)
  112. {
  113. if (ugr.Cells["VALIDFLAG"].Text.Trim().Equals("否"))
  114. {
  115. ugr.Cells["FACTOR_NAME"].Appearance.BackColor = Color.Transparent;
  116. ugr.Cells["FACTOR_NAME"].Appearance.BackHatchStyle = BackHatchStyle.Default;
  117. ugr.Cells["FACTOR_NAME"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
  118. ugr.Cells["TABLE_NAME"].Appearance.BackColor = Color.Transparent;
  119. ugr.Cells["TABLE_NAME"].Appearance.BackHatchStyle = BackHatchStyle.Default;
  120. ugr.Cells["TABLE_NAME"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
  121. ugr.Cells["COLUMN_KEY"].Appearance.BackColor = Color.Transparent;
  122. ugr.Cells["COLUMN_KEY"].Appearance.BackHatchStyle = BackHatchStyle.Default;
  123. ugr.Cells["COLUMN_KEY"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
  124. ugr.Cells["STATION_CODE"].Appearance.BackColor = Color.Transparent;
  125. ugr.Cells["STATION_CODE"].Appearance.BackHatchStyle = BackHatchStyle.Default;
  126. ugr.Cells["STATION_CODE"].Activation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
  127. ugr.Appearance.BackColor = Color.Red;
  128. ugr.Appearance.BackHatchStyle = BackHatchStyle.None;
  129. }
  130. TableColName(ugr.Cells["TABLE_NAME"].Text.Trim(), ugr);
  131. }
  132. }
  133. private void DoAdd()
  134. {
  135. ultraGrid1.UpdateData();
  136. ArrayList list1 = new ArrayList();
  137. //int count = 0;
  138. string time=DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
  139. IQueryable<UltraGridRow> uGrid = ultraGrid1.Rows.AsQueryable().Where(" CHK = 'True'");
  140. if (uGrid.Count() == 0)
  141. {
  142. MessageUtil.ShowTips("请选择要保存的数据!");
  143. return;
  144. }
  145. foreach (UltraGridRow ugr in uGrid)
  146. {
  147. //if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  148. //{
  149. // count += 1;
  150. if (ugr.Cells["FACTOR_NAME"].Text.Trim() == "") { MessageUtil.ShowTips("工艺名不能为空!"); return; }
  151. if (ugr.Cells["TABLE_NAME"].Text.Trim() == "") { MessageUtil.ShowTips("表名不能为空!"); return; }
  152. if (ugr.Cells["COLUMN_KEY"].Text.Trim() == "") { MessageUtil.ShowTips("字段名不能为空!"); return; }
  153. if (ugr.Cells["STATION_CODE"].Text.Trim() == "") { MessageUtil.ShowTips("工序不能为空!"); return; }
  154. if (ugr.Cells["FACTOR_ID"].Value.ToString() != "")
  155. {
  156. MessageUtil.ShowTips("已存在数据,不能进行此操作!"); return;
  157. }
  158. int leng = System.Text.Encoding.Default.GetBytes(ugr.Cells["FACTOR_NAME"].Text.Trim().ToCharArray()).Length;
  159. if (leng > 20) { MessageUtil.ShowTips("工艺名,字节实际长度20,输入长度" + leng + ",/,请重新输入!"); return; }
  160. ArrayList list = new ArrayList();
  161. list.Add(ugr.Cells["FACTOR_NAME"].Text.Trim());
  162. list.Add(ugr.Cells["TABLE_NAME"].Text.Trim());
  163. list.Add(ugr.Cells["COLUMN_KEY"].Text.Trim());
  164. list.Add(ugr.Cells["COLUMN_TYPE"].Text.Trim());
  165. list.Add(this.UserInfo.GetUserName());
  166. list.Add(time);
  167. list.Add(ugr.Cells["STATION_CODE"].Value.ToString());
  168. list1.Add(list);
  169. //}
  170. }
  171. //if (count == 0)
  172. //{
  173. // MessageUtil.ShowTips("请选择要保存的数据!");
  174. // return;
  175. //}
  176. if (MessageUtil.ShowYesNoAndQuestion("是否新增?") == System.Windows.Forms.DialogResult.No) return;
  177. CoreClientParam ccp = new CoreClientParam();
  178. ccp.ServerName = "com.steering.mes.signature.FrmMilCraftworkBase";
  179. ccp.MethodName = "addCrafBase";
  180. ccp.ServerParams = new object[] { list1 };
  181. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  182. if (ccp.ReturnCode != -1)
  183. {
  184. MessageUtil.ShowTips(ccp.ReturnInfo);
  185. if (ccp.ReturnInfo.Equals("新增成功!"))
  186. {
  187. DoQuery();
  188. }
  189. }
  190. }
  191. private void DoDelete()
  192. {
  193. ArrayList list1 = new ArrayList();
  194. ultraGrid1.UpdateData();
  195. //int count = 0;
  196. IQueryable<UltraGridRow> uGrid = ultraGrid1.Rows.AsQueryable().Where(" CHK = 'True'");
  197. if (uGrid.Count() == 0)
  198. {
  199. MessageUtil.ShowTips("请选择要删除的数据!");
  200. return;
  201. }
  202. foreach (UltraGridRow ugr in uGrid)
  203. {
  204. //if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  205. //{
  206. // count += 1;
  207. if (ugr.Cells["FACTOR_ID"].Text.Trim() == "")
  208. {
  209. MessageUtil.ShowTips("数据不存在,不能进行此操作!"); return;
  210. }
  211. DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryCrafSet", new Object[] { ugr.Cells["FACTOR_ID"].Text.Trim() }, ob);
  212. if (dt.Rows.Count > 0)
  213. {
  214. MessageUtil.ShowTips("该记录已引用,不能进行此操作!");
  215. return;
  216. }
  217. ArrayList list = new ArrayList();
  218. list.Add(ugr.Cells["FACTOR_ID"].Text.Trim());
  219. list1.Add(list);
  220. //}
  221. }
  222. //if (count == 0)
  223. //{
  224. // MessageUtil.ShowTips("请选择要删除的数据!");
  225. // return;
  226. //}
  227. if (MessageUtil.ShowYesNoAndQuestion("是否删除?") == System.Windows.Forms.DialogResult.No) return;
  228. int countdelete = ServerHelper.SetData("com.steering.mes.signature.FrmMilCraftworkBase.deleteCrafBase", new Object[] { list1 }, this.ob);
  229. if (countdelete > 0)
  230. {
  231. MessageUtil.ShowTips("删除成功!");
  232. }
  233. else
  234. {
  235. MessageUtil.ShowTips("删除失败!"); return;
  236. }
  237. DoQuery();
  238. }
  239. private void DoUpdare()
  240. {
  241. ultraGrid1.UpdateData();
  242. ArrayList list1 = new ArrayList();
  243. //int count = 0;
  244. string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
  245. IQueryable<UltraGridRow> uGrid = ultraGrid1.Rows.AsQueryable().Where(" CHK = 'True'");
  246. if (uGrid.Count() == 0)
  247. {
  248. MessageUtil.ShowTips("请选择要修改的数据!");
  249. return;
  250. }
  251. foreach (UltraGridRow ugr in uGrid)
  252. {
  253. //if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  254. //{
  255. // count += 1;
  256. if (ugr.Cells["FACTOR_ID"].Value.ToString() == "")
  257. {
  258. MessageUtil.ShowTips("数据不存在,不能进行此操作!"); return;
  259. }
  260. if (ugr.Cells["VALIDFLAG"].Text.Trim().Equals("否")) { MessageUtil.ShowTips("该记录已作废,不能进行此操作!"); return; }
  261. DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryCrafSet", new Object[] { ugr.Cells["FACTOR_ID"].Text.Trim() }, ob);
  262. if (dt.Rows.Count > 0)
  263. {
  264. MessageUtil.ShowTips("该记录已引用,不能进行此操作!");
  265. return;
  266. }
  267. int leng = System.Text.Encoding.Default.GetBytes(ugr.Cells["FACTOR_NAME"].Text.Trim().ToCharArray()).Length;
  268. if (leng > 20) { MessageUtil.ShowTips("工艺名,字节实际长度20,输入长度" + leng + ",工艺名太长,请重新输入!"); return; }
  269. ArrayList list = new ArrayList();
  270. list.Add(ugr.Cells["FACTOR_NAME"].Text.Trim());
  271. list.Add(ugr.Cells["TABLE_NAME"].Text.Trim());
  272. list.Add(ugr.Cells["COLUMN_KEY"].Text.Trim());
  273. list.Add(ugr.Cells["COLUMN_TYPE"].Text.Trim());
  274. list.Add(this.UserInfo.GetUserName());
  275. list.Add(time);
  276. list.Add(ugr.Cells["STATION_CODE"].Value.ToString());
  277. list.Add(ugr.Cells["FACTOR_ID"].Text.Trim());
  278. list1.Add(list);
  279. //}
  280. }
  281. //if (count == 0)
  282. //{
  283. // MessageUtil.ShowTips("请选择要修改的数据!");
  284. // return;
  285. //}
  286. if (MessageUtil.ShowYesNoAndQuestion("是否修改?") == System.Windows.Forms.DialogResult.No) return;
  287. int countupdate = ServerHelper.SetData("com.steering.mes.signature.FrmMilCraftworkBase.updateCrafBase", new Object[] { list1 }, this.ob);
  288. if (countupdate > 0)
  289. {
  290. MessageUtil.ShowTips("修改成功!");
  291. }
  292. else
  293. {
  294. MessageUtil.ShowTips("修改失败!"); return;
  295. }
  296. DoQuery();
  297. }
  298. /// <summary>
  299. /// 作废
  300. /// </summary>
  301. private void DoInvalid()
  302. {
  303. ArrayList list1 = new ArrayList();
  304. ultraGrid1.UpdateData();
  305. //int count = 0;
  306. string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
  307. IQueryable<UltraGridRow> uGrid = ultraGrid1.Rows.AsQueryable().Where(" CHK = 'True'");
  308. if (uGrid.Count() == 0)
  309. {
  310. MessageUtil.ShowTips("请选择要作废的数据!");
  311. return;
  312. }
  313. foreach (UltraGridRow ugr in uGrid)
  314. {
  315. //if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  316. //{
  317. // count += 1;
  318. if (ugr.Cells["FACTOR_ID"].Text.Trim() == "")
  319. {
  320. MessageUtil.ShowTips("数据不存在,不能进行此操作!"); return;
  321. }
  322. if (ugr.Cells["VALIDFLAG"].Text.Trim().Equals("否")) { MessageUtil.ShowTips("该记录已作废,不能进行此操作!"); return; }
  323. DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryCrafSet", new Object[] { ugr.Cells["FACTOR_ID"].Text.Trim() }, ob);
  324. if (dt.Rows.Count > 0)
  325. {
  326. MessageUtil.ShowTips("该记录已引用,不能进行此操作!");
  327. return;
  328. }
  329. ArrayList list = new ArrayList();
  330. list.Add(ugr.Cells["FACTOR_ID"].Text.Trim());
  331. list1.Add(list);
  332. //}
  333. }
  334. //if (count == 0)
  335. //{
  336. // MessageUtil.ShowTips("请选择要作废的数据!");
  337. // return;
  338. //}
  339. if (MessageUtil.ShowYesNoAndQuestion("是否作废?") == System.Windows.Forms.DialogResult.No) return;
  340. int countupdate = ServerHelper.SetData("com.steering.mes.signature.FrmMilCraftworkBase.updateValCrafBase", new Object[] { list1 }, this.ob);
  341. if (countupdate > 0)
  342. {
  343. MessageUtil.ShowTips("作废成功!");
  344. }
  345. else
  346. {
  347. MessageUtil.ShowTips("作废失败!"); return;
  348. }
  349. DoQuery();
  350. }
  351. /// <summary>
  352. /// Gird改变事件
  353. /// </summary>
  354. /// <param name="sender"></param>
  355. /// <param name="e"></param>
  356. private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  357. {
  358. UltraGridRow ugr = this.ultraGrid1.ActiveRow;
  359. //if (ugr.Cells["TABLE_NAME"].Text.Trim().Equals(""))
  360. //{
  361. if (e.Cell.Column.Key.Equals("TABLE_NAME"))
  362. {
  363. TableColName(e.Cell.Row.Cells["TABLE_NAME"].Text.Trim(), ugr);
  364. }
  365. if (e.Cell.Column.Key.Equals("COLUMN_KEY"))
  366. {
  367. //字段类型
  368. DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryTableDataType", new Object[] { e.Cell.Row.Cells["TABLE_NAME"].Text.Trim(), e.Cell.Row.Cells["COLUMN_KEY"].Text.Trim() }, ob);
  369. if (dt.Rows.Count <= 0) return;
  370. e.Cell.Row.Cells["COLUMN_TYPE"].Value = dt.Rows[0]["DATA_TYPE"].ToString();
  371. //字段备注
  372. DataTable dt1 = ServerHelper.GetData("com.steering.mes.signature.FrmMilCraftworkBase.queryTableColumecomments", new Object[] { e.Cell.Row.Cells["TABLE_NAME"].Text.Trim(), e.Cell.Row.Cells["COLUMN_KEY"].Text.Trim() }, ob);
  373. //if (e.Cell.Row.Cells["FACTOR_NAME"].Text.Trim() == "")
  374. //{
  375. e.Cell.Row.Cells["FACTOR_NAME"].Value = dt1.Rows[0]["COMMENTS"].ToString();
  376. //}
  377. }
  378. //}
  379. }
  380. private void ChkFactor_CheckedChanged(object sender, EventArgs e)
  381. {
  382. if (ChkFactor.Checked) { TxtFactor.Enabled = true; } else { TxtFactor.Enabled = false; }
  383. }
  384. private void ultraGrid1_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
  385. {
  386. try
  387. {
  388. ultraGrid1.UpdateData();
  389. foreach (UltraGridRow r in ultraGrid1.Rows)
  390. {
  391. r.Cells["CHK"].Value = r.Selected;
  392. }
  393. }
  394. catch { }
  395. }
  396. }
  397. }