FrmStlControlLogUpdate.cs 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368
  1. using com.steering.mes.zgmil.entity;
  2. using Core.Mes.Client.Comm.Control;
  3. using Core.Mes.Client.Comm.Format;
  4. using Core.Mes.Client.Comm.Server;
  5. using Core.Mes.Client.Comm.Tool;
  6. using Core.StlMes.Client.ZGMil.Entity;
  7. using CoreFS.CA06;
  8. using Infragistics.Win;
  9. using Infragistics.Win.UltraWinEditors;
  10. using Infragistics.Win.UltraWinGrid;
  11. using System;
  12. using System.Collections;
  13. using System.Collections.Generic;
  14. using System.ComponentModel;
  15. using System.Data;
  16. using System.Drawing;
  17. using System.Globalization;
  18. using System.Linq;
  19. using System.Text;
  20. using System.Windows.Forms;
  21. namespace Core.StlMes.Client.ZGMil.Signature
  22. {
  23. public partial class FrmStlControlLogUpdate : FrmBase
  24. {
  25. private string departm = "";
  26. UltraComboEditor ucePline = new UltraComboEditor();//产线名称
  27. private string plineCode;
  28. private string userId = "";
  29. private string[] plineCodes = { };
  30. //int stratday;//开始时间日期差,天,时,分
  31. //int strathours;
  32. //int stratminutes;
  33. //int endday;//结束时间日期差,天,时,分
  34. //int endhours;
  35. //int endminutes;toolba
  36. int flag = 0;//分析时间错误
  37. int flag1 = 0;//分析相差时间
  38. private string basecodeSamll = "";//停机小类值
  39. private string basecodeReason = "";//停机原因值
  40. public FrmStlControlLogUpdate()
  41. {
  42. InitializeComponent();
  43. }
  44. private void FrmStlControlLogUpdate_Load(object sender, EventArgs e)
  45. {
  46. EntityHelper.ShowGridCaption<StlControlLogEntity>(ultraGrid1.DisplayLayout.Bands[0]);
  47. NativeMethodNew na = new NativeMethodNew(this.ob);
  48. departm = UserInfo.GetDepartment();
  49. userId = UserInfo.GetUserID();
  50. plineCode = na.GetPCode(departm);//获取 用户 对应的产线
  51. plineCodes = na.GetPlineCode(this.ValidDataPurviewIds);
  52. //cmbPline.DataSource = ServerHelper.GetData("com.steering.mes.signature.FrmTubeRollFileManage.queryPlineCode", new object[] { plineCode }, this.ob);
  53. //cmbPline.ValueMember = "PLINE_CODE";
  54. //cmbPline.DisplayMember = "PLINE_NAME";
  55. //TubeRoll.SetComboItemHeight(cmbPline);
  56. //cmbPlineE.DataSource = ServerHelper.GetData("com.steering.mes.signature.FrmTubeRollFileManage.queryPlineCode", new object[] { plineCode }, this.ob);
  57. //cmbPlineE.ValueMember = "PLINE_CODE";
  58. //cmbPlineE.DisplayMember = "PLINE_NAME";
  59. //TubeRoll.SetComboItemHeight(cmbPlineE);
  60. if (plineCode.Equals(""))
  61. {
  62. this.chkpline.Visible = true;
  63. this.cmbPline.Visible = true;
  64. }
  65. ultraGrid1.DisplayLayout.Bands[0].Columns["Sjc"].Header.Caption = "停机时长(分钟)";
  66. //cmbDate.MaxDate = DateTime.Now;
  67. cmbDate.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
  68. cmbDate2.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
  69. cmbPline.Value = na.GetPCodePline(this.ValidDataPurviewIds);
  70. TubeRoll.setUltraGridColumnInput(ultraGrid1, new string[] { "QualifiedNum", "ScrapNum" });//支数
  71. TubeRoll.setUltraGridColumnMaxInput(ultraGrid1, new string[] { "QualifiedWt", "ScrapWt" });//重量
  72. TubeRoll.SetComboItemHeight(cmbPline);
  73. TubeRoll.SetComboItemHeight(cmbBc);
  74. TubeRoll.SetComboItemHeight(cmbBz);
  75. DataTable dt = TubeRoll.GetComBaseInfo("3001", ob);
  76. cmbStop.DataSource = dt;
  77. cmbStop.ValueMember = "BASECODE";
  78. cmbStop.DisplayMember = "BASENAME";
  79. TubeRoll.SetComboItemHeight(cmbStop);
  80. }
  81. /// <summary>
  82. /// 重写基类方法
  83. /// </summary>
  84. /// <param name="sender"></param>
  85. /// <param name="ToolbarKey"></param>
  86. public override void ToolBar_Click(object sender, string ToolbarKey)
  87. {
  88. switch (ToolbarKey)
  89. {
  90. case "Query":
  91. doQuery();
  92. break;
  93. //case "Add":
  94. // doAdd();
  95. // break;
  96. //case "Update":
  97. // doUpdate("0");
  98. // break;
  99. case "Update":
  100. doUpdate();
  101. break;
  102. //case "Delete":
  103. // doDelete();
  104. // break;
  105. case "Analysis":
  106. doQuery();
  107. doAnalysis();
  108. break;
  109. //case "Confirm":
  110. // doConfirm();
  111. // break;
  112. //case "UpConfirm":
  113. // UpConfirm();
  114. // break;
  115. //case "OneKeyProces":
  116. // DoOneKeyProces();
  117. // break;
  118. //case "Statistical":
  119. // DoStatistical();
  120. // break;
  121. //case "OneKeyUpdate":
  122. // DoOneKeyUpdate();
  123. // break;
  124. //case "Production":
  125. // DoProduction();
  126. // break;
  127. case "Export":
  128. GridHelper.ulGridToExcel(ultraGrid1, "炼钢停机记录");
  129. break;
  130. case "Close":
  131. this.Close();
  132. break;
  133. }
  134. }
  135. /// <summary>
  136. /// 生产记录
  137. /// </summary>
  138. private void DoProduction()
  139. {
  140. FrmProductionDetails pro = new FrmProductionDetails(cmbDate.Value.ToString("yyyyMMdd"), plineCode, this.ob);
  141. pro.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
  142. pro.Text = "生产详细";
  143. pro.ShowDialog();
  144. }
  145. /// <summary>
  146. /// 查询统计数据
  147. /// </summary>
  148. private void DoStatistical()
  149. {
  150. UltraGridRow row = ultraGrid1.ActiveRow;
  151. if (row == null) { MessageUtil.ShowTips("无数据!"); return; }
  152. //foreach (UltraGridRow urg in ultraGrid1.Rows)
  153. //{
  154. // if (row.Cells["ConfirmFlag"].Text.Equals("未确认")) { MessageUtil.ShowTips("未确认,不允许此操作!"); return; }
  155. //}
  156. FrmStatistical fsta = new FrmStatistical(plineCode, ob);
  157. fsta.AutoSize = true;
  158. fsta.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
  159. fsta.Text = "统计查询";
  160. fsta.ShowDialog();
  161. }
  162. /// <summary>
  163. /// 查询
  164. /// </summary>
  165. private void doQuery()
  166. {
  167. ArrayList list = new ArrayList();
  168. //当天
  169. string date = "";
  170. //前一天
  171. string endDate = "";
  172. date = cmbDate.Value.ToString("yyyyMMdd");
  173. endDate = cmbDate2.Value.ToString("yyyyMMdd");
  174. if (this.chkpline.Checked)
  175. {
  176. plineCode = this.cmbPline.Value.ToString();
  177. }
  178. else
  179. {
  180. NativeMethodNew na = new NativeMethodNew(this.ob);
  181. plineCode = na.GetPCode(departm);
  182. }
  183. //当班数据
  184. List<StlControlLogEntity> listSource = EntityHelper.GetData<StlControlLogEntity>
  185. ("com.steering.mes.signature.FrmStlControlLog.doQueryPlan3", new object[] { date, endDate, plineCode }, this.ob);
  186. StlControlLogEntity.DataSource = listSource;
  187. GridHelper.RefreshAndAutoSize(ultraGrid1);
  188. this.ultraGrid1.DisplayLayout.Bands[0].Columns["LogsBeg"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DateTimeWithSpin;
  189. this.ultraGrid1.DisplayLayout.Bands[0].Columns["LogsBeg"].MaskInput = "yyyy-mm-dd hh:mm";
  190. this.ultraGrid1.DisplayLayout.Bands[0].Columns["LogsEnd"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DateTimeWithSpin;
  191. this.ultraGrid1.DisplayLayout.Bands[0].Columns["LogsEnd"].MaskInput = "yyyy-mm-dd hh:mm";
  192. }
  193. /// <summary>
  194. /// 一键处理新增(分析后五分钟以内的时间间隔)
  195. /// </summary>
  196. //private void DoOneKeyProces()
  197. //{
  198. // ultraGrid1.UpdateData();
  199. // UltraGridRow row = ultraGrid1.ActiveRow;
  200. // if (row == null) { MessageUtil.ShowTips("无数据,不允许此操作!"); return; }
  201. // int minutes = int.Parse(MinTime.Value.ToString());
  202. // if (minutes == 0) { MessageUtil.ShowTips("请输入相差时间!"); }
  203. // ArrayList pram = new ArrayList();
  204. // if (flag == 0) { MessageUtil.ShowTips("未分析,不允许此操作!"); return; }
  205. // if (flag == 1 && flag1 == 0) { MessageUtil.ShowTips("分析通过,不允许此操作!"); return; }
  206. // if (flag == 2) { MessageUtil.ShowTips("分析时间错误,不允许此操作!"); return; }
  207. // int i = 0;
  208. // try
  209. // {
  210. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  211. // {
  212. // //if (ugr.Cells["ConfirmFlag"].Text.Equals("已确认"))
  213. // //{
  214. // // MessageUtil.ShowTips("已确认数据,不允许此操作!");
  215. // // return;
  216. // //}
  217. // if (!ugr.Cells["LogsEnd"].Value.Equals(""))
  218. // {
  219. // i += 1;
  220. // }
  221. // }
  222. // for (int j = 0; j < i; j++)
  223. // {
  224. // string loagEnd = ultraGrid1.Rows[j].Cells["LogsEnd"].Text.ToString();
  225. // string loagBeg = "";
  226. // if (j + 1 < i)
  227. // {
  228. // loagBeg = ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Text.ToString();
  229. // if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0)
  230. // {
  231. // if (TubeRoll.JudgeTimeMax(Convert.ToDateTime(loagEnd), Convert.ToDateTime(loagBeg)) <= minutes
  232. // && TubeRoll.JudgeTimeMax(Convert.ToDateTime(loagEnd), Convert.ToDateTime(loagBeg)) > 0)
  233. // {
  234. // ArrayList list = new ArrayList();
  235. // list.Add(DateTime.Parse(ultraGrid1.Rows[j].Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm"));
  236. // list.Add(DateTime.Parse(ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  237. // list.Add(this.UserInfo.GetUserName());
  238. // list.Add(this.UserInfo.GetUserOrder());
  239. // list.Add(this.UserInfo.GetUserGroup());
  240. // list.Add(plineCode);
  241. // pram.Add(list);
  242. // }
  243. // }
  244. // }
  245. // }
  246. // if (MessageUtil.ShowYesNoAndQuestion("是否一键新增处理?") == DialogResult.No)
  247. // {
  248. // return;
  249. // }
  250. // CoreClientParam ccp = new CoreClientParam();
  251. // ccp.ServerName = "com.steering.mes.signature.FrmMilControlLog";
  252. // ccp.MethodName = "oneKeyProcesMilControlLog";
  253. // ccp.ServerParams = new object[] { pram };
  254. // ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  255. // if (ccp.ReturnCode != -1)
  256. // {
  257. // MessageUtil.ShowTips(ccp.ReturnInfo);
  258. // if (ccp.ReturnInfo.Equals("一键处理成功!"))
  259. // {
  260. // doQuery();
  261. // doAnalysis();
  262. // }
  263. // }
  264. // }
  265. // catch (Exception ex)
  266. // {
  267. // MessageUtil.ShowTips("开始时间或结束时间不能为空!");
  268. // }
  269. //}
  270. /// <summary>
  271. /// 一键修改
  272. /// </summary>
  273. //private void DoOneKeyUpdate()
  274. //{
  275. // ultraGrid1.UpdateData();
  276. // UltraGridRow row = ultraGrid1.ActiveRow;
  277. // if (row == null) { MessageUtil.ShowTips("无数据,不允许此操作!"); return; }
  278. // ArrayList pram = new ArrayList();
  279. // if (flag == 0) { MessageUtil.ShowTips("未分析,不允许此操作!"); return; }
  280. // if (flag == 1 && flag1 == 0) { MessageUtil.ShowTips("分析通过,不允许此操作!"); return; }
  281. // //if (flag == 2) { MessageUtil.ShowTips("分析时间错误,不允许此操作!"); return; }
  282. // int i = 0;
  283. // try
  284. // {
  285. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  286. // {
  287. // //if (ugr.Cells["ConfirmFlag"].Text.Equals("已确认"))
  288. // //{
  289. // // MessageUtil.ShowTips("已确认数据,不允许此操作!");
  290. // // return;
  291. // //}
  292. // if (!ugr.Cells["LogsEnd"].Value.Equals(""))
  293. // {
  294. // i += 1;
  295. // }
  296. // }
  297. // for (int j = 0; j < i; j++)
  298. // {
  299. // string loagEnd = ultraGrid1.Rows[j].Cells["LogsEnd"].Text.ToString();
  300. // string loagBeg = "";
  301. // if (j + 1 < i)
  302. // {
  303. // loagBeg = ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Text.ToString();
  304. // if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) < 0)
  305. // {
  306. // ArrayList list = new ArrayList();
  307. // list.Add(DateTime.Parse(ultraGrid1.Rows[j].Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  308. // list.Add(DateTime.Parse(ultraGrid1.Rows[j].Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm"));
  309. // list.Add(DateTime.Parse(ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  310. // list.Add(this.UserInfo.GetUserName());
  311. // list.Add(this.UserInfo.GetUserOrder());
  312. // list.Add(this.UserInfo.GetUserGroup());
  313. // list.Add(plineCode);
  314. // list.Add(ultraGrid1.Rows[j].Cells["ControlId"].Value.ToString());
  315. // pram.Add(list);
  316. // }
  317. // }
  318. // }
  319. // if (ultraGrid1.Rows.Count > 0 && ultraGrid2.Rows.Count > 0)
  320. // {
  321. // int a = ultraGrid2.Rows.Count;
  322. // string logsBeg = ultraGrid1.Rows[0].Cells["LogsBeg"].Value.ToString();
  323. // string logsEnd = ultraGrid2.Rows[a - 1].Cells["LogsEnd"].Value.ToString();
  324. // string ControlId = ultraGrid1.Rows[0].Cells["ControlId"].Value.ToString();
  325. // if (DateTime.Compare(Convert.ToDateTime(logsBeg), Convert.ToDateTime(logsEnd)) < 0)
  326. // {
  327. // logsEnd = DateTime.Parse(logsEnd).ToString("yyyyMMddHHmm");
  328. // ServerHelper.SetData("com.steering.mes.signature.FrmMilControlLog.updateOneDate", new object[] { logsEnd, ControlId }, this.ob);
  329. // }
  330. // }
  331. // if (MessageUtil.ShowYesNoAndQuestion("是否一键修改处理?") == DialogResult.No)
  332. // {
  333. // return;
  334. // }
  335. // CoreClientParam ccp = new CoreClientParam();
  336. // ccp.ServerName = "com.steering.mes.signature.FrmMilControlLog";
  337. // ccp.MethodName = "oneKeyUpdateMilControlLog";
  338. // ccp.ServerParams = new object[] { pram };
  339. // ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  340. // if (ccp.ReturnCode != -1)
  341. // {
  342. // MessageUtil.ShowTips(ccp.ReturnInfo);
  343. // if (ccp.ReturnInfo.Equals("一键处理成功!"))
  344. // {
  345. // doQuery();
  346. // doAnalysis();
  347. // }
  348. // }
  349. // }
  350. // catch (Exception ex)
  351. // {
  352. // MessageUtil.ShowTips("开始时间或结束时间不能为空!");
  353. // }
  354. //}
  355. /// <summary>
  356. /// 新增
  357. /// </summary>
  358. //private void doAdd()
  359. //{
  360. // ultraGrid1.UpdateData();
  361. // ArrayList pram = new ArrayList();
  362. // UltraGridRow row = ultraGrid1.ActiveRow;
  363. // int count = 0;
  364. // int statrindex = 0;//第一行记录
  365. // int endindex = 0;//最后一行记录
  366. // int indexEnd = 0;//获取Grid最后一行记录
  367. // string statime = "";//新增开始时间
  368. // string endtime = "";//新增结束时间
  369. // string datetime1 = "";//获取选中第一行结束时间
  370. // string datetime2 = "";//获取选中第二行开始时间
  371. // if (row != null)
  372. // {
  373. // try
  374. // {
  375. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  376. // {
  377. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  378. // {
  379. // //if (ugr.Cells["ConfirmFlag"].Text.Equals("已确认"))
  380. // //{
  381. // // MessageUtil.ShowTips("已确认数据,不允许此操作!");
  382. // // return;
  383. // //}
  384. // statime = DateTime.Parse(ugr.Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm");//新增开始时间
  385. // datetime1 = DateTime.Parse(ugr.Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm");
  386. // statrindex = ugr.Index;
  387. // break;
  388. // }
  389. // }
  390. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  391. // {
  392. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  393. // {
  394. // count += 1;
  395. // endindex = ugr.Index;
  396. // endtime = DateTime.Parse(ugr.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm");//新增结束时间
  397. // datetime2 = DateTime.Parse(ugr.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm");
  398. // }
  399. // indexEnd = ugr.Index;
  400. // }
  401. // //判断选中的两行没有时间差,不许增加
  402. // int cnt = ultraGrid1.Rows.Where(a => a.GetValue("CHK") == "True").Count();
  403. // if (datetime2 == datetime1 && cnt > 1)
  404. // { MessageUtil.ShowTips("选中的两行没有时间差,不允许增加!"); return; }
  405. // int index = endindex - statrindex;
  406. // if (index == 0)
  407. // {
  408. // if (statrindex == 0)//获取第一行
  409. // {
  410. // if (indexEnd == 0)//如果只有一条数据
  411. // {
  412. // FrmPopupWindow win = new FrmPopupWindow();
  413. // win.AutoSize = true;
  414. // win.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
  415. // win.Text = "提示";
  416. // win.ShowDialog();
  417. // if (win.DialogResult == System.Windows.Forms.DialogResult.OK)
  418. // {
  419. // if (win.Popup == "之前")
  420. // {
  421. // pram.Add(DateTime.Parse(row.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  422. // pram.Add(DateTime.Parse(row.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  423. // }
  424. // else if (win.Popup == "之后")
  425. // {
  426. // pram.Add(DateTime.Parse(row.Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm"));
  427. // pram.Add(DateTime.Parse(row.Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm"));
  428. // }
  429. // else
  430. // {
  431. // return;
  432. // }
  433. // }
  434. // }
  435. // else
  436. // {
  437. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  438. // {
  439. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  440. // {
  441. // pram.Add(DateTime.Parse(ugr.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  442. // pram.Add(DateTime.Parse(ugr.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  443. // }
  444. // }
  445. // }
  446. // }
  447. // else if (statrindex == indexEnd)//获取最后一行
  448. // {
  449. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  450. // {
  451. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  452. // {
  453. // pram.Add(DateTime.Parse(ugr.Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm"));
  454. // pram.Add(DateTime.Parse(ugr.Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm"));
  455. // }
  456. // }
  457. // }
  458. // else
  459. // {
  460. // if (count == 0 || count > 2 || count < 2 && index < 2)
  461. // {
  462. // MessageUtil.ShowTips("请选择数据且选择相邻两条数据新增!");
  463. // return;
  464. // }
  465. // if (MessageUtil.ShowYesNoAndQuestion("是否新增?") == DialogResult.No)
  466. // {
  467. // return;
  468. // }
  469. // pram.Add(statime);
  470. // pram.Add(endtime);
  471. // }
  472. // }
  473. // else
  474. // {
  475. // if (count == 0 || count > 2 || count < 2 && index < 2)
  476. // {
  477. // MessageUtil.ShowTips("请选择数据且选择相邻两条数据新增!");
  478. // return;
  479. // }
  480. // if (MessageUtil.ShowYesNoAndQuestion("是否新增?") == DialogResult.No)
  481. // {
  482. // return;
  483. // }
  484. // pram.Add(statime);
  485. // pram.Add(endtime);
  486. // }
  487. // }
  488. // catch (Exception ex)
  489. // {
  490. // MessageUtil.ShowTips("开始时间或结束时间不能为空!");
  491. // return;
  492. // }
  493. // }
  494. // else//Grid 为空
  495. // {
  496. // if (MessageUtil.ShowYesNoAndQuestion("当前班次无数据是否新增?") == DialogResult.No)
  497. // {
  498. // return;
  499. // }
  500. // pram.Add(cmbDate.Value.ToString("yyyyMMdd") + DateTime.Now.ToString("HHmm"));
  501. // pram.Add(cmbDate.Value.ToString("yyyyMMdd") + DateTime.Now.ToString("HHmm"));
  502. // //pram.Add(DateTime.Now.ToString("yyyyMMddHHmm"));
  503. // //pram.Add(DateTime.Now.ToString("yyyyMMddHHmm"));
  504. // }
  505. // pram.Add(this.UserInfo.GetUserName());
  506. // pram.Add(this.UserInfo.GetUserOrder());
  507. // pram.Add(this.UserInfo.GetUserGroup());
  508. // pram.Add(plineCode);
  509. // CoreClientParam ccp = new CoreClientParam();
  510. // ccp.ServerName = "com.steering.mes.signature.FrmMilControlLog";
  511. // ccp.MethodName = "addMilControlLog";
  512. // ccp.ServerParams = new object[] { pram };
  513. // ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  514. // if (ccp.ReturnCode != -1)
  515. // {
  516. // MessageUtil.ShowTips(ccp.ReturnInfo);
  517. // if (ccp.ReturnInfo.Equals("新增成功!"))
  518. // {
  519. // doQuery();
  520. // doAnalysis();
  521. // }
  522. // }
  523. //}
  524. /// <summary>
  525. /// 修改
  526. /// </summary>
  527. /// <param name="ifConfirm">0只能修改未确认的,1可以修改已确认的</param>
  528. ///
  529. private void doUpdate()
  530. {
  531. ultraGrid1.UpdateData();
  532. UltraGridRow row = ultraGrid1.ActiveRow;
  533. if (row == null) { MessageUtil.ShowTips("无数据!"); return; }
  534. ArrayList pram = new ArrayList();
  535. IQueryable<UltraGridRow> checkMagRows = this.ultraGrid1.Rows.AsQueryable().Where(" CHK = 'True'");
  536. if (checkMagRows.Count() == 0)
  537. {
  538. MessageUtil.ShowTips("请选择需要修改的停机记录!");
  539. return;
  540. }
  541. foreach (UltraGridRow uRow in checkMagRows)
  542. {
  543. StlControlLogEntity stlControlLogEntity = (StlControlLogEntity)uRow.ListObject;
  544. //if (stlControlLogEntity.ConfirmFlag.Equals("1"))
  545. //{
  546. // MessageUtil.ShowTips("已确认的数据不能修改!");
  547. // return;
  548. //}
  549. stlControlLogEntity.LogsBeg = DateTime.Parse(uRow.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm");
  550. stlControlLogEntity.LogsEnd = DateTime.Parse(uRow.Cells["LogsEnd"].Value.ToString()).ToString("yyyyMMddHHmm");
  551. //stlControlLogEntity.StopType = row.Cells["StopType"].Value.ToString();
  552. stlControlLogEntity.StopReason = basecodeReason;
  553. stlControlLogEntity.StopSmall = basecodeSamll;
  554. string matZcTity = JSONFormat.Format(stlControlLogEntity);
  555. pram.Add(matZcTity);
  556. }
  557. CoreClientParam ccp = new CoreClientParam();
  558. ccp.ServerName = "com.steering.mes.signature.FrmStlControlLog";
  559. ccp.MethodName = "updateMilControlLog";
  560. ccp.ServerParams = new object[] { pram };
  561. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  562. if (ccp.ReturnCode != -1)
  563. {
  564. MessageUtil.ShowTips(ccp.ReturnInfo);
  565. if (ccp.ReturnInfo.Equals("修改成功!"))
  566. {
  567. doQuery();
  568. //doAnalysis();
  569. }
  570. }
  571. }
  572. /// <summary>
  573. /// 删除
  574. /// </summary>
  575. //private void doDelete()
  576. //{
  577. // ultraGrid1.UpdateData();
  578. // UltraGridRow row = ultraGrid1.ActiveRow;
  579. // if (row == null) { MessageUtil.ShowTips("无数据!"); return; }
  580. // int count = 0;
  581. // ArrayList list = new ArrayList();
  582. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  583. // {
  584. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  585. // {
  586. // count += 1;
  587. // //只有各厂总账号可以删除正常数据,普通账号只可删除停机数据。
  588. // if (userId != "250001" && userId != "1680001" && userId != "2580001" && userId != "4600001")
  589. // {
  590. // if (ugr.Cells["ProType"].Text.Equals("正常"))
  591. // {
  592. // MessageUtil.ShowTips("请选择停机数据!");
  593. // return;
  594. // }
  595. // }
  596. // if (ugr.Cells["ConfirmFlag"].Text.Equals("已确认"))
  597. // {
  598. // MessageUtil.ShowTips("已确认数据,不允许此操作!");
  599. // return;
  600. // }
  601. // ArrayList pram = new ArrayList();
  602. // pram.Add(ugr.Cells["ControlId"].Value.ToString());
  603. // list.Add(pram);
  604. // }
  605. // }
  606. // if (count == 0)
  607. // {
  608. // MessageUtil.ShowTips("请选择要删除的停机数据!");
  609. // return;
  610. // }
  611. // if (MessageUtil.ShowYesNoAndQuestion("是否删除?") == DialogResult.No)
  612. // {
  613. // return;
  614. // }
  615. // CoreClientParam ccp = new CoreClientParam();
  616. // ccp.ServerName = "com.steering.mes.signature.FrmMilControlLog";
  617. // ccp.MethodName = "deleteMilControlLog";
  618. // ccp.ServerParams = new object[] { list };
  619. // ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  620. // if (ccp.ReturnCode != -1)
  621. // {
  622. // MessageUtil.ShowTips(ccp.ReturnInfo);
  623. // if (ccp.ReturnInfo.Equals("删除成功!"))
  624. // {
  625. // doQuery();
  626. // doAnalysis();
  627. // }
  628. // }
  629. //}
  630. /// <summary>
  631. ///分析
  632. /// </summary>
  633. private void doAnalysis()
  634. {
  635. flag = 1;
  636. flag1 = 0;
  637. int i = 0;
  638. try
  639. {
  640. //当班数据分析
  641. foreach (UltraGridRow ugr in ultraGrid1.Rows)
  642. {
  643. if (!ugr.Cells["LogsEnd"].Value.Equals(""))
  644. { i += 1; }
  645. if (!ugr.Cells["LogsEnd"].Value.Equals(""))
  646. {
  647. if (Convert.ToDateTime(ugr.Cells["LogsBeg"].Value.ToString()) > Convert.ToDateTime(ugr.Cells["LogsEnd"].Value.ToString()))
  648. {
  649. ugr.RowSelectorAppearance.BackColor = Color.Red;
  650. //ugr.Cells["LogsBeg"].Appearance.BackHatchStyle = BackHatchStyle.None;
  651. //ugr.Cells["LogsEnd"].Appearance.BackColor = Color.Red;
  652. //ugr.Cells["LogsEnd"].Appearance.BackHatchStyle = BackHatchStyle.None;
  653. flag = 2;//分析时间错误
  654. }
  655. }
  656. }
  657. for (int j = 0; j < i; j++)
  658. {
  659. string loagEnd = ultraGrid1.Rows[j].Cells["LogsEnd"].Text.ToString();
  660. string loagBeg = "";
  661. if (j + 1 < i)
  662. {
  663. loagBeg = ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Text.ToString();
  664. if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0)
  665. {
  666. if (TubeRoll.JudgeTime(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0)
  667. {
  668. ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackColor = Color.Pink;
  669. ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  670. ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackColor = Color.Pink;
  671. ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  672. flag1 = 1;//时间差
  673. }
  674. //else if (TubeRoll.JudgeTime(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) <= 5 && TubeRoll.JudgeTime(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd))>=3)
  675. //{
  676. // ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackColor = Color.LightGray;
  677. // ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  678. // ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackColor = Color.LightGray;
  679. // ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  680. // flag = 2;
  681. //}
  682. }
  683. else if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) < 0)
  684. {
  685. ultraGrid1.Rows[j].RowSelectorAppearance.BackColor = Color.Red;
  686. //ultraGrid1.Rows[j + 1].RowSelectorAppearance.BackColor = Color.Red;
  687. //ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Appearance.BackColor = Color.Orange;
  688. //ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Appearance.BackHatchStyle = BackHatchStyle.None;
  689. //ultraGrid1.Rows[j].Cells["LogsBeg"].Appearance.BackColor = Color.Orange;
  690. //ultraGrid1.Rows[j].Cells["LogsBeg"].Appearance.BackHatchStyle = BackHatchStyle.None;
  691. flag = 2;
  692. }
  693. TimeSpan timeSpan = DateTime.Parse(ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Value.ToString()) -
  694. DateTime.Parse(ultraGrid1.Rows[j].Cells["LogsEnd"].Value.ToString());
  695. ultraGrid1.Rows[j + 1].Cells["TimeDiff"].Value = timeSpan.TotalMinutes.ToString();
  696. }
  697. }
  698. //上班数据分析
  699. //i = 0;
  700. //foreach (UltraGridRow ugr in ultraGrid2.Rows)
  701. //{
  702. // if (!ugr.Cells["LogsBeg"].Value.Equals(""))
  703. // { i += 1; }
  704. // if (!ugr.Cells["LogsEnd"].Value.Equals(""))
  705. // {
  706. // //i += 1;
  707. // if (Convert.ToDateTime(ugr.Cells["LogsBeg"].Value.ToString()) > Convert.ToDateTime(ugr.Cells["LogsEnd"].Value.ToString()))
  708. // {
  709. // ugr.RowSelectorAppearance.BackColor = Color.Red;
  710. // flag = 2;//分析时间错误
  711. // }
  712. // }
  713. //}
  714. //for (int j = 0; j < i; j++)
  715. //{
  716. // string loagEnd = ultraGrid2.Rows[j].Cells["LogsEnd"].Text.ToString();
  717. // string loagBeg = "";
  718. // if (j + 1 < i)
  719. // {
  720. // loagBeg = ultraGrid2.Rows[j + 1].Cells["LogsBeg"].Text.ToString();
  721. // if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0)
  722. // {
  723. // if (TubeRoll.JudgeTime(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0)
  724. // {
  725. // ultraGrid2.Rows[j + 1].Cells["StopType"].Appearance.BackColor = Color.Pink;
  726. // ultraGrid2.Rows[j + 1].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  727. // ultraGrid2.Rows[j].Cells["StopType"].Appearance.BackColor = Color.Pink;
  728. // ultraGrid2.Rows[j].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  729. // flag1 = 1;//时间差
  730. // }
  731. // }
  732. // else if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) < 0)
  733. // {
  734. // ultraGrid2.Rows[j].RowSelectorAppearance.BackColor = Color.Red;
  735. // flag = 2;
  736. // }
  737. // TimeSpan timeSpan = DateTime.Parse(ultraGrid2.Rows[j + 1].Cells["LogsBeg"].Value.ToString()) -
  738. // DateTime.Parse(ultraGrid2.Rows[j].Cells["LogsEnd"].Value.ToString());
  739. // ultraGrid2.Rows[j + 1].Cells["TimeDiff"].Value = timeSpan.TotalMinutes.ToString();
  740. // }
  741. //}
  742. //if (ultraGrid1.Rows.Count > 0 && ultraGrid2.Rows.Count > 0)
  743. //{
  744. // string logsBeg = ultraGrid1.Rows[0].Cells["LogsBeg"].Value.ToString();
  745. // string logsEnd = ultraGrid2.Rows[i - 1].Cells["LogsEnd"].Value.ToString();
  746. // if (DateTime.Compare(Convert.ToDateTime(logsBeg), Convert.ToDateTime(logsEnd)) > 0)
  747. // {
  748. // if (TubeRoll.JudgeTime(Convert.ToDateTime(logsBeg), Convert.ToDateTime(logsEnd)) > 0)
  749. // {
  750. // flag1 = 1;//时间差
  751. // }
  752. // }
  753. // else if (DateTime.Compare(Convert.ToDateTime(logsBeg), Convert.ToDateTime(logsEnd)) < 0)
  754. // {
  755. // flag = 2;
  756. // }
  757. // TimeSpan timeSpan = DateTime.Parse(logsBeg) - DateTime.Parse(logsEnd);
  758. // ultraGrid1.Rows[0].Cells["TimeDiff"].Value = timeSpan.TotalMinutes.ToString();
  759. //}
  760. }
  761. catch (Exception ex)
  762. {
  763. // MessageUtil.ShowTips(ex.Message);
  764. MessageUtil.ShowTips("开始时间或结束时间不能为空!");
  765. }
  766. }
  767. private string DateDiff(DateTime DateTime1, DateTime DateTime2)
  768. {
  769. string dateDiff = null;
  770. try
  771. {
  772. TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);
  773. TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);
  774. TimeSpan ts = ts1.Subtract(ts2).Duration();
  775. dateDiff = ts.Minutes.ToString();
  776. }
  777. catch
  778. {
  779. }
  780. return dateDiff;
  781. }
  782. /// <summary>
  783. ///确认
  784. /// </summary>
  785. //private void doConfirm()
  786. //{
  787. // UltraGridRow uow = ultraGrid1.ActiveRow;
  788. // if (uow == null) { MessageUtil.ShowTips("无数据!"); return; }
  789. // ArrayList list = new ArrayList();
  790. // string date = DateTime.Now.ToString();
  791. // int count = 0;
  792. // if (flag == 0) { MessageUtil.ShowTips("未分析,不允许此操作!"); return; }
  793. // if (flag1 == 1) { MessageUtil.ShowTips("有停机记录未新增,不允许此操作!"); return; }
  794. // if (flag == 2) { MessageUtil.ShowTips("分析时间错误,不允许此操作!"); return; }
  795. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  796. // {
  797. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true && ugr.Cells["LogsBeg"].Value.ToString().Equals(""))
  798. // {
  799. // MessageUtil.ShowTips("有开始时间为空,不允许此操作!"); return;
  800. // }
  801. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true && ugr.Cells["LogsEnd"].Value.ToString().Equals(""))
  802. // {
  803. // MessageUtil.ShowTips("有结束时间为空,不允许此操作!"); return;
  804. // }
  805. // }
  806. // ultraGrid1.UpdateData();
  807. // int seqmin1 = ultraGrid1.Rows.Where(a => a.GetValue("CHK") == "True").Select(a => a.Index).Count();
  808. // if (seqmin1 < 1)
  809. // {
  810. // MessageUtil.ShowTips("没有选中要确认的数据!"); return;
  811. // }
  812. // if (seqmin1 > 0 && ultraGrid1.Rows.Count > 0)
  813. // {
  814. // int seqmin = ultraGrid1.Rows.Where(a => a.GetValue("CHK") == "True").Select(a => a.Index).Min();
  815. // for (int i = 0; i < seqmin; i++)
  816. // {
  817. // if (ultraGrid1.Rows[i].Cells["ConfirmFlag"].Value.ToString().Trim().Equals("未确认"))
  818. // {
  819. // MessageBox.Show("前面有未确认的数据,请先确认!");
  820. // return;
  821. // }
  822. // }
  823. // }
  824. // //if (flag2 == 1) { MessageUtil.ShowTips("有开始时间为空,不允许此操作!"); return; }
  825. // //if (flag2 == 2) { MessageUtil.ShowTips("有结束时间为空,不允许此操作!"); return; }
  826. // //判断上班是否有未确认的数据
  827. // if (ultraGrid2.Rows.Count() < 1)
  828. // {
  829. // MessageBox.Show("上班有停机记录未新增!");
  830. // return;
  831. // }
  832. // foreach (UltraGridRow row in ultraGrid2.Rows)
  833. // {
  834. // if (row.Cells["ConfirmFlag"].Value.ToString().Trim().Equals("未确认"))
  835. // {
  836. // MessageBox.Show("上班有未确认的数据,请先确认!");
  837. // return;
  838. // }
  839. // }
  840. // string startdate = "";
  841. // string endDate = "";
  842. // if (chkDate.Checked)
  843. // {
  844. // startdate = cmbDate.Value.ToString("yyyyMMdd1800");
  845. // }
  846. // else
  847. // {
  848. // MessageUtil.ShowTips("请选择日期!");
  849. // return;
  850. // //startdate = cmbDate.Value.ToString("199901012100");
  851. // //endDate = cmbEndDate.Value.ToString("203901012100");
  852. // }
  853. // foreach (UltraGridRow ugr in ultraGrid1.Rows)
  854. // {
  855. // if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  856. // {
  857. // if (ugr.Cells["ProType"].Text.ToString().Trim().Equals("停机"))
  858. // {
  859. // if (ugr.Cells["StopType"].Value.Equals("") || ugr.Cells["StopSmall"].Value.Equals("") || ugr.Cells["StopReason"].Value.Equals(""))
  860. // {
  861. // MessageUtil.ShowTips("停机大类,停机小类,停机原因不能为空!");
  862. // return;
  863. // }
  864. // }
  865. // string shift = ugr.Cells["ProBc"].Value.ToString();
  866. // string group = ugr.Cells["ProBz"].Value.ToString();
  867. // if (shift != this.UserInfo.GetUserOrder() || group != this.UserInfo.GetUserGroup())
  868. // {
  869. // MessageUtil.ShowTips("您登录的班次班组与要确认的数据班次班组不符,请重新确认!");
  870. // return;
  871. // }
  872. // count += 1;
  873. // ArrayList list1 = new ArrayList();
  874. // list1.Add(ugr.Cells["ControlId"].Text.ToString());
  875. // list1.Add(this.UserInfo.GetUserName());
  876. // list1.Add(date);
  877. // list1.Add(this.UserInfo.GetUserOrder());
  878. // list1.Add(this.UserInfo.GetUserGroup());
  879. // list1.Add(plineCode);
  880. // list1.Add(DateTime.Parse(ugr.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  881. // list1.Add(startdate);
  882. // list1.Add(endDate);
  883. // list1.Add(ugr.Cells["JudgeStoveNo"].Text.ToString());
  884. // list.Add(list1);
  885. // }
  886. // }
  887. // if (count == 0)
  888. // {
  889. // MessageUtil.ShowTips("请选中要确认的数据!");
  890. // return;
  891. // }
  892. // string intCount = "0";//是否选择确认
  893. // if (MessageUtil.ShowYesNoAndQuestion("是否只确认选中行数据?") == DialogResult.No)
  894. // {
  895. // intCount = "0";
  896. // if (count == 2)
  897. // {
  898. // MessageUtil.ShowTips("请选择一条数据!");
  899. // return;
  900. // }
  901. // }
  902. // else
  903. // {
  904. // intCount = "1";
  905. // }
  906. // //if (MessageUtil.ShowYesNoAndQuestion("是否确认?") == DialogResult.No)
  907. // //{
  908. // // return;
  909. // //}
  910. // UltraGridRow ugr1 = ultraGrid1.ActiveRow;
  911. // if (ugr1 != null)
  912. // {
  913. // string logbeg = ugr1.Cells["LogsBeg"].Value.ToString();
  914. // }
  915. // CoreClientParam ccp = new CoreClientParam();
  916. // ccp.ServerName = "com.steering.mes.signature.FrmMilControlLog";
  917. // ccp.MethodName = "confirmMilControlLog";
  918. // ccp.ServerParams = new object[] { list, intCount };
  919. // ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  920. // if (ccp.ReturnCode != -1)
  921. // {
  922. // MessageUtil.ShowTips(ccp.ReturnInfo);
  923. // if (ccp.ReturnInfo.Equals("确认成功!"))
  924. // {
  925. // doQuery();
  926. // doAnalysis();
  927. // }
  928. // }
  929. //}
  930. /// <summary>
  931. ///取消确认
  932. /// </summary>
  933. private void UpConfirm()
  934. {
  935. UltraGridRow uow = ultraGrid1.ActiveRow;
  936. if (uow == null) { MessageUtil.ShowTips("无数据!"); return; }
  937. ultraGrid1.UpdateData();
  938. int seqmax1 = ultraGrid1.Rows.Where(a => a.GetValue("CHK") == "True").Select(a => a.Index).Count();
  939. if (seqmax1 < 1)
  940. {
  941. MessageUtil.ShowTips("没有选中要确认的数据!"); return;
  942. }
  943. if (seqmax1 > 0 && ultraGrid1.Rows.Count() > 0)
  944. {
  945. int seqmax = ultraGrid1.Rows.Where(a => a.GetValue("CHK") == "True").Select(a => a.Index).Max();
  946. for (int i = seqmax + 1; i < ultraGrid1.Rows.Count(); i++)
  947. {
  948. if (ultraGrid1.Rows[i].Cells["ConfirmFlag"].Value.ToString().Trim().Equals("已确认"))
  949. {
  950. MessageBox.Show("后面有已确认的数据,请先取消确认!");
  951. return;
  952. }
  953. }
  954. }
  955. ArrayList list = new ArrayList();
  956. string date = DateTime.Now.ToString();
  957. int count = 0;
  958. string startdate = "";
  959. string endDate = "";
  960. if (chkDate.Checked)
  961. {
  962. startdate = cmbDate.Value.ToString("yyyyMMdd1800");
  963. }
  964. else
  965. {
  966. MessageUtil.ShowTips("请选择日期!");
  967. return;
  968. //startdate = cmbDate.Value.ToString("199901012100");
  969. //endDate = cmbEndDate.Value.ToString("203901012100");
  970. }
  971. foreach (UltraGridRow ugr in ultraGrid1.Rows)
  972. {
  973. if (Convert.ToBoolean(ugr.Cells["CHK"].Text) == true)
  974. {
  975. count += 1;
  976. ArrayList list1 = new ArrayList();
  977. list1.Add(ugr.Cells["ControlId"].Text.ToString());
  978. list1.Add(this.UserInfo.GetUserOrder());
  979. list1.Add(this.UserInfo.GetUserGroup());
  980. list1.Add(plineCode);
  981. list1.Add(DateTime.Parse(ugr.Cells["LogsBeg"].Value.ToString()).ToString("yyyyMMddHHmm"));
  982. list1.Add(startdate);
  983. list1.Add(endDate);
  984. list1.Add(ugr.Cells["JudgeStoveNo"].Text.ToString());
  985. list.Add(list1);
  986. }
  987. }
  988. if (count == 0) { MessageUtil.ShowTips("请选中要取消确认的数据!"); return; }
  989. string intCount = "0";//是否选择取消确认
  990. if (MessageUtil.ShowYesNoAndQuestion("是否只取消确认选中行数据?") == DialogResult.No)
  991. {
  992. intCount = "0";
  993. if (count == 2)
  994. {
  995. MessageUtil.ShowTips("请选择一条数据!");
  996. return;
  997. }
  998. }
  999. else
  1000. {
  1001. intCount = "1";
  1002. }
  1003. //if (MessageUtil.ShowYesNoAndQuestion("是否取消确认?") == DialogResult.No)
  1004. //{
  1005. // return;
  1006. //}
  1007. CoreClientParam ccp = new CoreClientParam();
  1008. ccp.ServerName = "com.steering.mes.signature.FrmMilControlLog";
  1009. ccp.MethodName = "upConfirmMilControlLog";
  1010. ccp.ServerParams = new object[] { list, intCount };
  1011. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  1012. if (ccp.ReturnCode != -1)
  1013. {
  1014. MessageUtil.ShowTips(ccp.ReturnInfo);
  1015. if (ccp.ReturnInfo.Equals("取消确认成功!"))
  1016. {
  1017. doQuery();
  1018. doAnalysis();
  1019. }
  1020. }
  1021. }
  1022. private void chkDate_CheckedChanged(object sender, EventArgs e)
  1023. {
  1024. if (chkDate.Checked) { cmbDate.Enabled = true; } else { cmbDate.Enabled = false; }
  1025. if (chkBc.Checked) { cmbBc.Enabled = true; } else { cmbBc.Enabled = false; }
  1026. if (chkBz.Checked) { cmbBz.Enabled = true; } else { cmbBz.Enabled = false; }
  1027. if (chkpline.Checked) { cmbPline.Enabled = true; } else { cmbPline.Enabled = false; }
  1028. }
  1029. /// <summary>
  1030. /// Grid字段修改触发事件
  1031. /// </summary>
  1032. /// <param name="sender"></param>
  1033. /// <param name="e"></param>
  1034. private void ultraGrid1_CellChange(object sender, CellEventArgs e)
  1035. {
  1036. UltraGridRow row = ultraGrid1.ActiveRow;
  1037. //string stratime = row.Cells["LogsBeg"].Value.ToString();
  1038. //string endtime = row.Cells["LogsEnd"].Value.ToString();
  1039. try
  1040. {
  1041. //string updateStratime = "";
  1042. //string updateEndtime = "";
  1043. ultraGrid1.UpdateData();
  1044. //if (e.Cell.Column.Key.Equals("LogsEnd"))
  1045. //{
  1046. // if (Convert.ToBoolean(e.Cell.Row.Cells["CHK"].Text) == true)
  1047. // {
  1048. // if (e.Cell.Value == null || e.Cell.Value.ToString().Trim().Equals(""))
  1049. // {
  1050. // return;
  1051. // }
  1052. // else
  1053. // {
  1054. // updateEndtime = e.Cell.Row.Cells["LogsEnd"].Value.ToString();
  1055. // TimeSpan midTime = DateTime.Parse(updateEndtime) - DateTime.Parse(endtime);
  1056. // stratday = midTime.Days;
  1057. // strathours = midTime.Hours;
  1058. // stratminutes = midTime.Minutes;
  1059. // int i = e.Cell.Row.Index;//h获取选中行序号
  1060. // UltraGridRow urg = ultraGrid1.Rows.AsQueryable().Where(a => a.Index == i + 1).First();//获取选择行下一行序号
  1061. // DateTime time = DateTime.Parse(urg.Cells["LogsBeg"].Value.ToString()).AddDays(stratday).AddHours(strathours).AddMinutes(stratminutes);
  1062. // urg.Cells["LogsBeg"].Value = time;
  1063. // }
  1064. // }
  1065. // else
  1066. // {
  1067. // MessageUtil.ShowTips("请选择需要修改的数据!");
  1068. // e.Cell.Row.Cells["LogsEnd"].Value = row.Cells["LogsEnd"].Value.ToString();
  1069. // return;
  1070. // }
  1071. //}
  1072. //if (e.Cell.Column.Key.Equals("LogsBeg"))
  1073. //{
  1074. // if (Convert.ToBoolean(e.Cell.Row.Cells["CHK"].Text) == true)
  1075. // {
  1076. // if (e.Cell.Value == null || e.Cell.Value.ToString().Trim().Equals(""))
  1077. // {
  1078. // return;
  1079. // }
  1080. // else
  1081. // {
  1082. // updateStratime = e.Cell.Row.Cells["LogsBeg"].Value.ToString();
  1083. // TimeSpan midTime = DateTime.Parse(updateStratime) - DateTime.Parse(stratime);
  1084. // endday = midTime.Days;
  1085. // endhours = midTime.Hours;
  1086. // endminutes = midTime.Minutes;
  1087. // int i = e.Cell.Row.Index;//h获取选中行序号
  1088. // UltraGridRow urg = ultraGrid1.Rows.AsQueryable().Where(a => a.Index == i -1).First();//获取选择行上一行序号
  1089. // //if (urg.Index < 0) return;
  1090. // DateTime time = DateTime.Parse(urg.Cells["LogsEnd"].Value.ToString()).AddDays(endday).AddHours(endhours).AddMinutes(endminutes);
  1091. // urg.Cells["LogsEnd"].Value = time;
  1092. // }
  1093. // }
  1094. // else
  1095. // {
  1096. // MessageUtil.ShowTips("请选择需要修改的数据!");
  1097. // e.Cell.Row.Cells["LogsBeg"].Value = row.Cells["LogsBeg"].Value.ToString();
  1098. // return;
  1099. // }
  1100. //}
  1101. if (e.Cell.Column.Key.Equals("QualifiedNum"))
  1102. {
  1103. if (e.Cell.Row.Cells["QualifiedNum"].Value == null)
  1104. {
  1105. e.Cell.Row.Cells["QualifiedNum"].Value = "0";
  1106. }
  1107. else
  1108. {
  1109. string actCount = e.Cell.Row.Cells["QualifiedNum"].Value.ToString();
  1110. if (!StringUtil.IsInt(actCount) || actCount == "0")//actCount == "" || int.Parse(actCount)==0
  1111. {
  1112. e.Cell.Row.Cells["QualifiedNum"].Value = "0";
  1113. }
  1114. }
  1115. }
  1116. if (e.Cell.Column.Key.Equals("QualifiedWt"))
  1117. {
  1118. if (e.Cell.Row.Cells["QualifiedWt"].Value == null)
  1119. {
  1120. e.Cell.Row.Cells["QualifiedWt"].Value = "0";
  1121. }
  1122. else
  1123. {
  1124. string actWt = e.Cell.Row.Cells["QualifiedWt"].Value.ToString();
  1125. if (!StringUtil.IsDouble(actWt) || actWt == "0")//actCount == "" || int.Parse(actCount)==0
  1126. {
  1127. e.Cell.Row.Cells["QualifiedWt"].Value = "0";
  1128. }
  1129. }
  1130. }
  1131. if (e.Cell.Column.Key.Equals("ScrapNum"))
  1132. {
  1133. if (e.Cell.Row.Cells["ScrapNum"].Value == null)
  1134. {
  1135. e.Cell.Row.Cells["ScrapNum"].Value = "0";
  1136. }
  1137. else
  1138. {
  1139. string scrpNum = e.Cell.Row.Cells["ScrapNum"].Value.ToString();
  1140. if (!StringUtil.IsInt(scrpNum) || scrpNum == "0")//actCount == "" || int.Parse(actCount)==0
  1141. {
  1142. e.Cell.Row.Cells["ScrapNum"].Value = "0";
  1143. }
  1144. }
  1145. }
  1146. if (e.Cell.Column.Key.Equals("ScrapWt"))
  1147. {
  1148. if (e.Cell.Row.Cells["ScrapWt"].Value == null)
  1149. {
  1150. e.Cell.Row.Cells["ScrapWt"].Value = "0";
  1151. }
  1152. else
  1153. {
  1154. string scrpwt = e.Cell.Row.Cells["ScrapWt"].Value.ToString();
  1155. if (!StringUtil.IsDouble(scrpwt) || scrpwt == "0")//actCount == "" || int.Parse(actCount)==0
  1156. {
  1157. e.Cell.Row.Cells["ScrapWt"].Value = "0";
  1158. }
  1159. }
  1160. }
  1161. if (e.Cell.Column.Key.Equals("StopType"))
  1162. {
  1163. e.Cell.Row.Cells["StopSmall"].Value = "";
  1164. e.Cell.Row.Cells["StopReason"].Value = "";
  1165. }
  1166. if (e.Cell.Column.Key.Equals("StopSmall"))
  1167. {
  1168. e.Cell.Row.Cells["StopReason"].Value = "";
  1169. }
  1170. }
  1171. catch (Exception ex)
  1172. {
  1173. //MessageUtil.ShowTips("您输入的时间格式不正确!");
  1174. //e.Cell.Row.Cells["LogsBeg"].Value = row.Cells["LogsBeg"].Value.ToString();
  1175. //e.Cell.Row.Cells["LogsEnd"].Value = row.Cells["LogsEnd"].Value.ToString();
  1176. return;
  1177. }
  1178. }
  1179. private void ultraGrid1_CellDataError(object sender, CellDataErrorEventArgs e)
  1180. {
  1181. e.RaiseErrorEvent = false;
  1182. MessageUtil.ShowTips("您输入的时间格式不正确!");
  1183. }
  1184. /// <summary>
  1185. /// 停机原因
  1186. /// </summary>
  1187. /// <param name="sender"></param>
  1188. /// <param name="e"></param>
  1189. private void cmbStopReason_EditorButtonClick(object sender, EditorButtonEventArgs e)
  1190. {
  1191. UltraGridRow row = ultraGrid1.ActiveRow;
  1192. if (row == null) return;
  1193. string stopSallm = basecodeSamll;
  1194. if (!row.Cells["StopSmall"].Text.Equals("")) { stopSallm = row.Cells["StopSmall"].Text; }
  1195. FrmStopSamll fpdc = new FrmStopSamll(basecodeSamll, ob);
  1196. fpdc.AutoSize = true;
  1197. fpdc.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
  1198. fpdc.Text = "停机原因";
  1199. fpdc.ShowDialog();
  1200. if (fpdc.DialogResult == System.Windows.Forms.DialogResult.OK)
  1201. {
  1202. //获取弹出窗体的属性值
  1203. row.Cells["StopReasonm"].Value = fpdc.Basename;
  1204. //cmbStopReason.Value = fpdc.Basename;
  1205. basecodeReason = fpdc.Basecode;
  1206. }
  1207. }
  1208. /// <summary>
  1209. /// 停机小类
  1210. /// </summary>
  1211. /// <param name="sender"></param>
  1212. /// <param name="e"></param>
  1213. private void cmbStopSmall_EditorButtonClick(object sender, EditorButtonEventArgs e)
  1214. {
  1215. UltraGridRow row = ultraGrid1.ActiveRow;
  1216. string stoptype = "";
  1217. if (!row.Cells["StopType"].Text.Trim().Equals(""))
  1218. {
  1219. stoptype = row.Cells["StopType"].Value.ToString();
  1220. }
  1221. FrmStopSamll fpdc = new FrmStopSamll(stoptype, ob);
  1222. fpdc.AutoSize = true;
  1223. fpdc.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
  1224. fpdc.Text = "停机小类";
  1225. fpdc.ShowDialog();
  1226. if (fpdc.DialogResult == System.Windows.Forms.DialogResult.OK)
  1227. {
  1228. //获取弹出窗体的属性值
  1229. row.Cells["StopSmallm"].Value = fpdc.Basename;
  1230. //cmbStopSmall.Value = fpdc.Basename;
  1231. basecodeSamll = fpdc.Basecode;
  1232. }
  1233. }
  1234. /// <summary>
  1235. /// 班次中文
  1236. /// </summary>
  1237. /// <param name="dtShift"></param>
  1238. /// <returns></returns>
  1239. private string changeShift(string dtShift)
  1240. {
  1241. switch (dtShift)
  1242. {
  1243. case "1":
  1244. dtShift = "早班";
  1245. break;
  1246. case "2":
  1247. dtShift = "中班";
  1248. break;
  1249. case "3":
  1250. dtShift = "夜班";
  1251. break;
  1252. }
  1253. return dtShift;
  1254. }
  1255. /// <summary>
  1256. /// 班组中文
  1257. /// </summary>
  1258. /// <param name="dtGroup"></param>
  1259. /// <returns></returns>
  1260. private string changeGroup(string dtGroup)
  1261. {
  1262. switch (dtGroup)
  1263. {
  1264. case "1":
  1265. dtGroup = "甲班";
  1266. break;
  1267. case "2":
  1268. dtGroup = "乙班";
  1269. break;
  1270. case "3":
  1271. dtGroup = "丙班";
  1272. break;
  1273. case "4":
  1274. dtGroup = "丁班";
  1275. break;
  1276. }
  1277. return dtGroup;
  1278. }
  1279. }
  1280. }