QcmJyTestReport.cs 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418
  1. using Core.Mes.Client.Comm.Control;
  2. using Core.Mes.Client.Comm.Format;
  3. using Core.Mes.Client.Comm.Server;
  4. using Core.Mes.Client.Comm.Tool;
  5. using Core.StlMes.Client.Judge.Commons;
  6. using Core.StlMes.Client.Judge.Models;
  7. using Core.StlMes.Client.Judge.ViewModels;
  8. using CoreFS.CA06;
  9. using Infragistics.Win;
  10. using Infragistics.Win.UltraWinEditors;
  11. using Infragistics.Win.UltraWinGrid;
  12. using System;
  13. using System.Collections;
  14. using System.Collections.Generic;
  15. using System.Data;
  16. using System.Diagnostics;
  17. using System.Drawing;
  18. using System.Drawing.Printing;
  19. //using Spire.Pdf;
  20. using System.IO;
  21. using System.Linq;
  22. using System.Net;
  23. using System.Windows.Forms;
  24. namespace Core.StlMes.Client.Judge.Forms
  25. {
  26. public partial class QcmJyTestReport : FrmBase
  27. {
  28. public QcmJyTestReport()
  29. {
  30. InitializeComponent();
  31. this.IsLoadUserView = true;
  32. }
  33. private void QcmJyQueryFrm_Load(object sender, EventArgs e)
  34. {
  35. InitDate();
  36. EntityHelper.ShowGridCaption<YdmZcOutlistEntity>(ultraGridOrder.DisplayLayout.Bands[0]);
  37. //初始化加载项目列
  38. DataTable dt3 = ServerHelper.GetData("com.steering.pss.judge.DAL.QcmZbsQueryFrm.querySendPlan", new object[] { "4112" }, ob);
  39. // TubeRoll.InitCombo(Items, "com.steering.pss.judge.DAL.QcmJyTestReport.FindItemsList", "ITEMS", this.ob, false);
  40. //TubeRoll.BindColumnComb(Items, "ITEMS", this.Controls, this.ultraGridJustNo, 0);
  41. ultraComboEditor1.DataSource = dt3;
  42. ultraComboEditor1.DisplayMember = "BASENAME";
  43. ultraComboEditor1.ValueMember = "BASENAME";
  44. }
  45. private void ChcCheckedChanged(object sender, EventArgs e)
  46. {
  47. if (ChcOrderNo.Checked)
  48. {
  49. TxtOrderNo.Enabled = true;
  50. }
  51. else
  52. {
  53. TxtOrderNo.Enabled = false;
  54. }
  55. if (ChcTime.Checked)
  56. {
  57. TimeBegin.Enabled = true;
  58. TimeEnd.Enabled = true;
  59. }
  60. else
  61. {
  62. TimeEnd.Enabled = false;
  63. TimeBegin.Enabled = false;
  64. }
  65. if (ChcStatus.Checked) { ComStatus.Enabled = true; } else { ComStatus.Enabled = false; }
  66. }
  67. /// <summary>
  68. /// 初始时间
  69. /// </summary>
  70. private void InitDate()
  71. {
  72. DateTime now = DateTime.Now;
  73. DateTime dt1 = new DateTime(now.Year, now.Month, 1);//当月第一天
  74. DateTime dt2 = dt1.AddMonths(1).AddDays(-1);//当月最后一天
  75. TimeBegin.Value = DateTime.Parse(dt1.ToString("yyyy-MM-dd") + " 00:00:00");
  76. TimeEnd.Value = DateTime.Parse(dt2.ToString("yyyy-MM-dd") + " 23:59:59");
  77. }
  78. public override void ToolBar_Click(object sender, string ToolbarKey)
  79. {
  80. switch (ToolbarKey)
  81. {
  82. case "Query":
  83. DoQuery();
  84. break;
  85. case "Update":
  86. DoUpdate();
  87. break;
  88. case "Delete":
  89. Delete();
  90. break;
  91. case "doAdd":
  92. DoAdd();
  93. break;
  94. case "Close":
  95. this.Close();
  96. break;
  97. }
  98. }
  99. private ArrayList ingname = new ArrayList();
  100. //新增检验报告记录
  101. private void DoAdd() {
  102. ultraGridJustNo.UpdateData();
  103. ArrayList list1 = new ArrayList();
  104. String orderno = "";
  105. String items = "";
  106. String standard = "";
  107. String result = "";
  108. String instrumentmodel = "";
  109. String createname = "";
  110. String REPORTED = this.textBox1.Text;
  111. String APPROVED = this.textBox2.Text;
  112. String REMARKS = this.textBox3.Text;
  113. IQueryable<UltraGridRow> uGrid = ultraGridJustNo.Rows.AsQueryable().Where(" CHK = 'True'");
  114. if(uGrid.Count() == 0){
  115. MessageUtil.ShowTips("请选择要新增的数据!");
  116. return;
  117. }
  118. foreach(UltraGridRow ugr in uGrid){
  119. ArrayList list = new ArrayList();
  120. orderno = ugr.Cells["ORDER_NO"].Value.ToString();
  121. items = ugr.Cells["ITEMS"].Value.ToString();
  122. standard = ugr.Cells["STANDARD"].Value.ToString();
  123. result = ugr.Cells["RESULT"].Value.ToString();
  124. instrumentmodel = ugr.Cells["INSTRUMENT_MODEL"].Value.ToString();
  125. if (orderno == "") { MessageUtil.ShowTips("合同号不能为空!"); return; }
  126. if (items == "") { MessageUtil.ShowTips("项目不能为空!"); return; }
  127. if (standard == "") { MessageUtil.ShowTips("标准值不能为空!"); return; }
  128. if (result == "") { MessageUtil.ShowTips("检测值不能为空!"); return; }
  129. if (instrumentmodel == "") { MessageUtil.ShowTips("设备名称及型号不能为空!"); return; }
  130. String username = UserInfo.GetUserName();
  131. // String nowtime = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
  132. list.Add(orderno);
  133. list.Add(items);
  134. list.Add(standard);
  135. list.Add(result);
  136. list.Add(instrumentmodel);
  137. createname = username;
  138. list.Add(createname);
  139. list.Add(REPORTED);
  140. list.Add(APPROVED);
  141. list.Add(REMARKS);
  142. list1.Add(list);
  143. }
  144. CoreClientParam ccp = new CoreClientParam();
  145. ccp.ServerName = "com.steering.pss.judge.DAL.QcmJyTestReport";
  146. ccp.MethodName = "AddTestReport";
  147. ccp.ServerParams = new object[] { list1 };
  148. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  149. if (ccp.ReturnCode != -1)
  150. {
  151. MessageUtil.ShowTips(ccp.ReturnInfo);
  152. if (ccp.ReturnInfo.Equals("新增成功!"))
  153. {
  154. DoQuery();
  155. }
  156. }
  157. }
  158. public string spathName = "";
  159. private List<Image> ing = new List<Image>();
  160. private List<FileBean> list = new List<FileBean>();
  161. /// <summary>
  162. /// 修改记录
  163. /// </summary>
  164. private void DoUpdate()
  165. {
  166. ultraGridJustNo.UpdateData();
  167. ArrayList list1 = new ArrayList();
  168. String orderno = "";
  169. String items = "";
  170. String standard = "";
  171. String result = "";
  172. String instrumentmodel = "";
  173. String REPORTED = this.textBox1.Text;
  174. String APPROVED = this.textBox2.Text;
  175. String REMARKS = this.textBox3.Text;
  176. ArrayList pram1 = new ArrayList();
  177. IQueryable<UltraGridRow> uGrid = ultraGridJustNo.Rows.AsQueryable().Where(" CHK = 'True'");
  178. if (uGrid.Count() == 0)
  179. {
  180. MessageUtil.ShowTips("请选择修改的数据!");
  181. return;
  182. }
  183. foreach (UltraGridRow ugr in uGrid)
  184. {
  185. orderno = ugr.Cells["ORDER_NO"].Value.ToString();
  186. items = ugr.Cells["ITEMS"].Value.ToString();
  187. standard = ugr.Cells["STANDARD"].Value.ToString();
  188. result = ugr.Cells["RESULT"].Value.ToString();
  189. instrumentmodel = ugr.Cells["INSTRUMENT_MODEL"].Value.ToString();
  190. if (orderno == "") { MessageUtil.ShowTips("合同号不能为空!"); return; }
  191. if (items == "") { MessageUtil.ShowTips("项目不能为空!"); return; }
  192. if (standard == "") { MessageUtil.ShowTips("标准值不能为空!"); return; }
  193. if (result == "") { MessageUtil.ShowTips("检测值不能为空!"); return; }
  194. if (instrumentmodel == "") { MessageUtil.ShowTips("设备名称及型号不能为空!"); return; }
  195. ArrayList list = new ArrayList();
  196. list.Add(standard);
  197. list.Add(result);
  198. list.Add(instrumentmodel);
  199. list.Add(UserInfo.GetUserName());
  200. list.Add(orderno);
  201. list.Add(items);
  202. list.Add(REPORTED);
  203. list.Add(APPROVED);
  204. list.Add(REMARKS);
  205. pram1.Add(list);
  206. }
  207. CoreClientParam ccp = new CoreClientParam();
  208. ccp.ServerName = "com.steering.pss.judge.DAL.QcmJyTestReport";
  209. ccp.MethodName = "UpdateTestReport";
  210. ccp.ServerParams = new object[] { pram1 };
  211. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  212. if (ccp.ReturnCode != -1)
  213. {
  214. MessageUtil.ShowTips(ccp.ReturnInfo);
  215. if (ccp.ReturnInfo.Equals("修改成功!"))
  216. {
  217. DoQuery();
  218. }
  219. }
  220. }
  221. /// <summary>
  222. /// 删除检验报告记录
  223. /// </summary>
  224. private void Delete()
  225. {
  226. ultraGridJustNo.UpdateData();
  227. ArrayList pram1 = new ArrayList();
  228. IQueryable<UltraGridRow> uGrid = ultraGridJustNo.Rows.AsQueryable().Where(" CHK = 'True'");
  229. if (uGrid.Count() == 0)
  230. {
  231. MessageUtil.ShowTips("请选择要删除的数据!");
  232. return;
  233. }
  234. if (MessageUtil.ShowYesNoAndQuestion("是否确认删除信息?") == System.Windows.Forms.DialogResult.No)
  235. {
  236. return;
  237. }
  238. foreach (UltraGridRow ugr in uGrid)
  239. {
  240. ArrayList pram = new ArrayList();
  241. pram.Add(ugr.Cells["ORDER_NO"].Value.ToString());
  242. pram.Add(ugr.Cells["ITEMS"].Value.ToString());
  243. pram1.Add(pram);
  244. }
  245. int countinsert = ServerHelper.SetData("com.steering.pss.judge.DAL.QcmJyTestReport.deleteTestReport", new Object[] { pram1 }, this.ob);
  246. if (countinsert > 0)
  247. {
  248. MessageUtil.ShowTips("删除成功!");
  249. }
  250. else
  251. {
  252. MessageUtil.ShowTips("删除失败!"); return;
  253. }
  254. DoQuery();
  255. }
  256. /// <summary>
  257. /// 查询合同信息
  258. /// </summary>
  259. private void DoQuery()
  260. {
  261. ArrayList param = new ArrayList();
  262. string orderNo = "";
  263. if (ChcOrderNo.Checked)
  264. {
  265. orderNo = TxtOrderNo.Text.Trim();
  266. }
  267. string strBegin = "1900-01-01 00:00:00";
  268. string strEnd = "9900-01-01 00:00:00";
  269. if (ChcTime.Checked)
  270. {
  271. if (TimeBegin.Value == null || TimeEnd.Value == null)
  272. {
  273. MessageUtil.ShowWarning("请选择正确的时间");
  274. return;
  275. }
  276. strBegin = TimeBegin.Value.ToString();
  277. strEnd = TimeEnd.Value.ToString();
  278. }
  279. param.Add(orderNo);
  280. param.Add(strBegin);
  281. param.Add(strEnd);
  282. if (ultraTabControl2.SelectedTab.Index == 0)
  283. {
  284. List<YdmZcOutlistEntity> listSource = EntityHelper.GetData<YdmZcOutlistEntity>(
  285. "com.steering.pss.judge.DAL.QcmJyQueryFrm.getOrderInfo", new object[] { param }, this.ob);//查找合同信息
  286. ydmZcOutlistEntityBindingSource1.DataSource = listSource;
  287. }
  288. }
  289. //根据合同号去查询检验报告
  290. private void QueryJustStoveInfo(string orderNo)
  291. {
  292. ultraGridJustNo.UpdateData();
  293. ArrayList param = new ArrayList();
  294. param.Add(orderNo);
  295. //查找testreport
  296. DataTable dt = ServerHelper.GetData("com.steering.pss.judge.DAL.QcmJyTestReport.FindTestReport", new Object[] { param }, ob);
  297. GridHelper.CopyDataToDatatable(dt, this.dataTable1, true);
  298. //判断 中部新增的三个字段的内容
  299. if (dt.Rows.Count >= 1)
  300. {
  301. for (int i = 0; i < dt.Rows.Count;i++ ) {
  302. if (dt.Rows[i]["REPORTED"].ToString() != null || dt.Rows[i]["REPORTED"].ToString() != "")
  303. {
  304. this.textBox1.Text = dt.Rows[i]["REPORTED"].ToString();
  305. }
  306. if (dt.Rows[i]["APPROVED"].ToString() != null || dt.Rows[i]["APPROVED"].ToString() != "")
  307. {
  308. this.textBox2.Text = dt.Rows[i]["APPROVED"].ToString();
  309. }
  310. if (dt.Rows[i]["REMARKS"].ToString() != null || dt.Rows[i]["REMARKS"].ToString() != "")
  311. {
  312. this.textBox3.Text = dt.Rows[i]["REMARKS"].ToString();
  313. }
  314. }
  315. }
  316. else {
  317. this.textBox1.Text = null;
  318. this.textBox2.Text = null;
  319. this.textBox3.Text = null;
  320. }
  321. }
  322. DataTable dtzbs = new DataTable();
  323. //单击上表 行的事件 根据合同号查找下表的信息
  324. private void ultraGridOrder_AfterRowActivate(object sender, EventArgs e)
  325. {
  326. UltraGridRow ugr = ultraGridOrder.ActiveRow;
  327. if (ugr == null)
  328. {
  329. return;
  330. }
  331. QueryJustStoveInfo(ugr.Cells["OrderNo"].Text.ToString());
  332. }
  333. /// <summary>
  334. /// 按回车键触发查询按钮
  335. /// </summary>
  336. /// <param name="sender"></param>
  337. /// <param name="e"></param>
  338. private void ContPublic_KeyDown(object sender, KeyEventArgs e)
  339. {
  340. if (e.KeyCode == Keys.Enter)
  341. {
  342. DoQuery();
  343. }
  344. }
  345. private int splitterDistance = 0;
  346. private void ultraExpandableGroupBox1_ExpandedStateChanged(object sender, EventArgs e)
  347. {
  348. if (ultraExpandableGroupBox1.Expanded == false)
  349. {
  350. this.splitContainer2.SplitterDistance = splitContainer2.Size.Height - 26;
  351. }
  352. else
  353. {
  354. this.splitContainer2.SplitterDistance = splitterDistance == 0 ? splitContainer2.Size.Height / 2 : splitterDistance;
  355. }
  356. }
  357. private void ultraGridOrder_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
  358. {
  359. foreach (UltraGridRow uRow in ultraGridOrder.Selected.Rows)
  360. {
  361. if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow))
  362. {
  363. uRow.Cells["CHC"].Value = true;
  364. }
  365. }
  366. }
  367. //下表新增一行触发事件 默认合同号为当前上表选中的合同号
  368. private void ultraGridJustNo_AfterRowInsert(object sender, RowEventArgs e)
  369. {
  370. UltraGridRow ugr = ultraGridOrder.ActiveRow;
  371. if (ugr == null)
  372. {
  373. return;
  374. }
  375. String oldOrder = ugr.Cells["OrderNo"].Text.ToString();
  376. this.ultraGridJustNo.ActiveRow.Cells["ORDER_NO"].Value = oldOrder;
  377. }
  378. private void ultraComboEditor1_ValueChanged(object sender, EventArgs e)
  379. {
  380. }
  381. }
  382. }