FrmPotMgt.cs 54 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Threading;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.Collections;
  10. using Infragistics.Win.UltraWinGrid;
  11. using Infragistics.Win.UltraWinDataSource;
  12. using CoreFS.CA06;
  13. using Core.Mes.Client.Common;
  14. //using Core.LgMes.Client.LgIntegrationQuery;
  15. namespace Core.LgMes.Client.LgDeviceManager
  16. {
  17. public partial class FrmPotMgt : FrmLgDevFunctions
  18. {
  19. private bool bReadOnly = false; //是否只读权限 add on 2009-3-24
  20. private bool bShow = true; //第一次显示详细信息
  21. private Thread _getDataThread; // 取数据线程
  22. private bool _bIfGetData = true; // 控制取数据线程循环的标志
  23. private DataSet _dsMain;
  24. private bool _IsUpdateFlag = false;
  25. private bool _flagaffterrow = true;
  26. private bool _IsEdit = false;
  27. private bool _IsStatus = false;
  28. private int Flagi = 0;
  29. private delegate void SetDataThreadDelegate(); // 刷新数据线程的一个委托方法,目的是达到界面所有数
  30. private int ifgb = 0;//用以存储窗体关闭前(后)的值
  31. //以下为烘烤信息申明
  32. public string _strPotNo = "";
  33. private bool _IsInsert = true;
  34. private string _strWorkNo = "";
  35. /// <summary>
  36. /// 设置ultraGrid颜色
  37. /// </summary>
  38. private void SetEditAreaStyle()
  39. {
  40. try
  41. {
  42. uGrdUseladle.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default;
  43. uGrdUseladle.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.FromArgb(204, 221, 239);
  44. uGrdUseladle.DisplayLayout.Override.HeaderAppearance.BackColor = Color.FromArgb(204, 221, 239);
  45. uGrdUseladle.DisplayLayout.Override.CellAppearance.BackColor = Color.FromArgb(255, 255, 255);
  46. uGrdGBLadleinfo.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default;
  47. uGrdGBLadleinfo.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.FromArgb(204, 221, 239);//背景色
  48. uGrdGBLadleinfo.DisplayLayout.Override.HeaderAppearance.BackColor = Color.FromArgb(204, 221, 239);//列头
  49. uGrdGBLadleinfo.DisplayLayout.Override.CellAppearance.BackColor = Color.FromArgb(255, 255, 255);//列表颜色
  50. uGrdMaintInfo.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default;
  51. uGrdMaintInfo.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.FromArgb(204, 221, 239);
  52. uGrdMaintInfo.DisplayLayout.Override.HeaderAppearance.BackColor = Color.FromArgb(204, 221, 239);
  53. uGrdMaintInfo.DisplayLayout.Override.CellAppearance.BackColor = Color.FromArgb(255, 255, 255);
  54. uGrdPostTime.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default;
  55. uGrdPostTime.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.FromArgb(204, 221, 239);
  56. uGrdPostTime.DisplayLayout.Override.HeaderAppearance.BackColor = Color.FromArgb(204, 221, 239);
  57. uGrdPostTime.DisplayLayout.Override.CellAppearance.BackColor = Color.FromArgb(255, 255, 255);
  58. }
  59. catch { }
  60. }
  61. public FrmPotMgt()
  62. {
  63. InitializeComponent();
  64. this.uDTEStart.DateTime = DateTime.Now;
  65. this.uDTEEnd.DateTime = DateTime.Now;
  66. this.btnWithTime.Click += new System.EventHandler(this.button1_Click);
  67. this.chkStart.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged);
  68. this.chkEnd.CheckedChanged += new System.EventHandler(this.checkBox2_CheckedChanged);
  69. }
  70. #region "formload"
  71. private void proc_SetToolButtonsInvisible()
  72. {
  73. try
  74. {
  75. uTbMTool.Tools["add"].SharedProps.Visible = false;
  76. uTbMTool.Tools["del"].SharedProps.Visible = false;
  77. uTbMTool.Tools["edit"].SharedProps.Visible = false;
  78. uTbMTool.Tools["Toast"].SharedProps.Visible = false;
  79. uTbMTool.Tools["repair"].SharedProps.Visible = false;
  80. }
  81. catch { }
  82. }
  83. /// <summary>
  84. /// 增加、删除、修改权限
  85. /// </summary>
  86. /// <returns></returns>
  87. private bool proc_JudgeReadOnly()
  88. {
  89. try
  90. {
  91. if (bReadOnly )
  92. MessageBox.Show("您没有操作权限!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
  93. return bReadOnly;
  94. }
  95. catch { return true; }
  96. }
  97. private void frmLadleManage_Load(object sender, EventArgs e)
  98. {
  99. {
  100. string strKey = this.Key;
  101. if (strKey.IndexOf("@") > 0 && strKey.Substring(strKey.IndexOf("@") + 1) == "1")
  102. {
  103. bReadOnly = true;
  104. proc_SetToolButtonsInvisible();
  105. }
  106. } //add on 2009-3-24
  107. this.SetEditAreaStyle();
  108. StartUpThread();
  109. initializeData();
  110. Getpotbasedata();
  111. Getrightdata();//钢包发送查询
  112. SetColumnGBLVL();
  113. SetColumnUSESTATE();
  114. SetColumnPOSITION();
  115. SetColumnPOTSTYLE();
  116. SetColumnhuaban();
  117. SetColumnnaicai();
  118. SetColumnVentilate();
  119. SetColumnPotStatus();
  120. SetPlanSteel();
  121. SetColumnBKDZ();
  122. SetColumnPairehisNC();
  123. }
  124. /// <summary>
  125. /// 加载钢包烘烤信息
  126. /// </summary>
  127. private void GetData(string strPotNo)
  128. {
  129. try
  130. {
  131. string strOut = "";
  132. DataSet ds = QueryToFunions("Core.LgMes.Server.LgDeviceManager.potmanger", "GetCurrHotPot", strPotNo, ob);
  133. if (strOut == "" && ds.Tables[0].Rows.Count > 0)
  134. {
  135. this.cmbBakingNo.Text = ds.Tables[0].Rows[0]["OVENID"].ToString();//烘烤站号
  136. this.uDTEStart.Text = ds.Tables[0].Rows[0]["BEGINTIME"].ToString();//开始时间
  137. this.txtBakingTime.Text = ds.Tables[0].Rows[0]["duration"].ToString();//用时
  138. _strWorkNo = ds.Tables[0].Rows[0]["FIRINGID"].ToString();//记录编号
  139. this.chkStart.Checked = true;
  140. this.chkStart.BackColor = Color.Pink;
  141. _IsInsert = false;
  142. _IsStatus = true;
  143. Flagi++;
  144. }
  145. else
  146. { _IsStatus = false; }
  147. }
  148. catch { }
  149. }
  150. private void button1_Click(object sender, EventArgs e)
  151. {
  152. GetDuration();
  153. }
  154. /// <summary>
  155. /// 获取时间
  156. /// </summary>
  157. private void GetDuration()
  158. {
  159. try
  160. {
  161. string strOut = "";
  162. DataSet ds = QueryToFunions("Core.LgMes.Server.LgDeviceManager.potmanger", "GetCurrDuration", this.uDTEStart.DateTime.ToString("yyyy-MM-dd HH:mm:ss"), ob);
  163. if (strOut != "")
  164. {
  165. MessageBox.Show(strOut, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
  166. return;
  167. }
  168. this.txtBakingTime.Text = ds.Tables[0].Rows[0][0].ToString();
  169. }
  170. catch (Exception ex)
  171. {
  172. MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
  173. }
  174. }
  175. /// <summary>
  176. /// 烘烤开始
  177. /// </summary>
  178. /// <param name="sender"></param>
  179. /// <param name="e"></param>
  180. private void checkBox1_CheckedChanged(object sender, System.EventArgs e)
  181. {
  182. if (this.chkStart.Checked)
  183. {
  184. this.chkStart.BackColor = Color.Pink;
  185. this.uDTEStart.DateTime = System.DateTime.Now;
  186. }
  187. else
  188. {
  189. this.chkStart.BackColor = Color.Transparent;
  190. }
  191. }
  192. /// <summary>
  193. /// 烘烤结束
  194. /// </summary>
  195. /// <param name="sender"></param>
  196. /// <param name="e"></param>
  197. private void checkBox2_CheckedChanged(object sender, System.EventArgs e)
  198. {
  199. if (this.chkEnd.Checked)
  200. {
  201. this.chkEnd.BackColor = Color.Pink;
  202. this.uDTEEnd.DateTime = System.DateTime.Now;
  203. GetDuration();
  204. }
  205. else
  206. {
  207. this.chkEnd.BackColor = Color.Transparent;
  208. }
  209. }
  210. /// <summary>
  211. /// 钢包状态
  212. /// </summary>
  213. private void SetColumnUSESTATE()
  214. {
  215. DataTable dt = new DataTable();
  216. dt.TableName = "JIALIAO";
  217. DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String"));
  218. dt.Columns.Add(dc);
  219. dc = new DataColumn("BCNA", Type.GetType("System.String"));
  220. dt.Columns.Add(dc);
  221. DataRow dr = dt.NewRow();
  222. dr["BCBM"] = "在用";
  223. dr["BCNA"] = "在用";
  224. dt.Rows.Add(dr);
  225. dr = dt.NewRow();
  226. dr["BCBM"] = "待用";
  227. dr["BCNA"] = "待用";
  228. dt.Rows.Add(dr);
  229. dr = dt.NewRow();
  230. dr["BCBM"] = "备用";
  231. dr["BCNA"] = "备用";
  232. dt.Rows.Add(dr);
  233. dr = dt.NewRow();
  234. dr["BCBM"] = "大修";
  235. dr["BCNA"] = "大修";
  236. dt.Rows.Add(dr);
  237. dr = dt.NewRow();
  238. dr["BCBM"] = "中修";
  239. dr["BCNA"] = "中修";
  240. dt.Rows.Add(dr);
  241. dr = dt.NewRow();
  242. dr["BCBM"] = "小修";
  243. dr["BCNA"] = "小修";
  244. dt.Rows.Add(dr);
  245. dr = dt.NewRow();
  246. dr["BCBM"] = "烘烤";
  247. dr["BCNA"] = "烘烤";
  248. dt.Rows.Add(dr);
  249. dr = dt.NewRow();
  250. dr["BCBM"] = "维修";
  251. dr["BCNA"] = "维修";
  252. dt.Rows.Add(dr);
  253. dr = dt.NewRow();
  254. dr["BCBM"] = "事故钢包";
  255. dr["BCNA"] = "事故钢包";
  256. dt.Rows.Add(dr);
  257. JJBStaticFunction.SetGridDropDownListCell("STATUS", 0, "使用状态", 60, uGrdUseladle, dt, "BCBM", "BCNA");
  258. }
  259. /// <summary>
  260. /// 钢包当前位置
  261. /// </summary>
  262. private void SetColumnPOSITION()
  263. {
  264. DataTable dt = new DataTable();
  265. dt.TableName = "JIALIAO";
  266. DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String"));
  267. dt.Columns.Add(dc);
  268. dc = new DataColumn("BCNA", Type.GetType("System.String"));
  269. dt.Columns.Add(dc);
  270. DataRow dr = dt.NewRow();
  271. dr["BCBM"] = "装包区域";
  272. dr["BCNA"] = "装包区域";
  273. dt.Rows.Add(dr);
  274. dr = dt.NewRow();
  275. dr["BCBM"] = "维修区域";
  276. dr["BCNA"] = "维修区域";
  277. dt.Rows.Add(dr);
  278. dr = dt.NewRow();
  279. dr["BCBM"] = "行车吊包";
  280. dr["BCNA"] = "行车吊包";
  281. dt.Rows.Add(dr);
  282. JJBStaticFunction.SetGridDropDownListCell("NOWPOSITION", 0, "当前位置", 60, uGrdUseladle, dt, "BCBM", "BCNA");
  283. }
  284. /// <summary>
  285. /// 钢包种类
  286. /// </summary>
  287. private void SetColumnPOTSTYLE()
  288. {
  289. DataTable dt = new DataTable();
  290. dt.TableName = "JIALIAO";
  291. DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String"));
  292. dt.Columns.Add(dc);
  293. dc = new DataColumn("BCNA", Type.GetType("System.String"));
  294. dt.Columns.Add(dc);
  295. DataRow dr = dt.NewRow();
  296. dr["BCBM"] = "有碳包";
  297. dr["BCNA"] = "有碳包";
  298. dt.Rows.Add(dr);
  299. dr = dt.NewRow();
  300. dr["BCBM"] = "无碳包";
  301. dr["BCNA"] = "无碳包";
  302. dt.Rows.Add(dr);
  303. /*
  304. * 修改描述:新增微碳包选项
  305. * 修改人:ym
  306. * 修改时间:20131217
  307. */
  308. dr = dt.NewRow();
  309. dr["BCBM"] = "微碳包";
  310. dr["BCNA"] = "微碳包";
  311. dt.Rows.Add(dr);
  312. JJBStaticFunction.SetGridDropDownListCell("LADLETYPE", 0, "钢包种类", 60, uGrdUseladle, dt, "BCBM", "BCNA");
  313. }
  314. /// <summary>
  315. /// 滑板制造厂
  316. /// </summary>
  317. private void SetColumnhuaban()
  318. {
  319. DataTable dt = new DataTable();
  320. dt = GetFactory(LadleCommonClass.strSlideBoardFactoryCode);
  321. JJBStaticFunction.SetGridDropDownListCell("HBMANUFACTURER", 0, "滑板制造厂", 82, uGrdUseladle, dt, "BASECODE", "BASENAME");
  322. }
  323. /// <summary>
  324. /// 耐材制造厂
  325. /// </summary>
  326. private void SetColumnnaicai()
  327. {
  328. DataTable dt = new DataTable();
  329. dt = GetFactory(LadleCommonClass.strRefractoryMatterFactoryCode);
  330. JJBStaticFunction.SetGridDropDownListCell("NCMANUFACTURER", 0, "耐材制造厂", 71, uGrdUseladle, dt, "BASECODE", "BASENAME");
  331. }
  332. /// <summary>
  333. /// 耐材制造厂
  334. /// </summary>
  335. private void SetColumnPairehisNC()
  336. {
  337. DataTable dt = new DataTable();
  338. dt = GetFactory(LadleCommonClass.strRefractoryMatterFactoryCode);
  339. JJBStaticFunction.SetGridDropDownListCell("MATERIALREPLACING", 0, "耐材制造厂", 71, uGrdMaintInfo, dt, "BASECODE", "BASENAME");
  340. }
  341. /// <summary>
  342. /// 透气蕊厂家
  343. /// </summary>
  344. private void SetColumnVentilate()
  345. {
  346. DataTable dt = new DataTable();
  347. dt = GetFactory(LadleCommonClass.strVentilateFactoryCode);
  348. JJBStaticFunction.SetGridDropDownListCell("BRICKFACTORY", 0, "透气蕊制造厂", 82, uGrdUseladle, dt, "BASECODE", "BASENAME");
  349. }
  350. /// <summary>
  351. /// 包口掉砖
  352. /// </summary>
  353. private void SetColumnBKDZ()
  354. {
  355. DataTable dt = new DataTable();
  356. dt = GetFactory(LadleCommonClass.strVentilateBKDZFactoryCode);
  357. JJBStaticFunction.SetGridDropDownListCell("BKDZ", 0, "包口掉砖", 82, uGrdUseladle, dt, "BASECODE", "BASENAME");
  358. }
  359. /// <summary>
  360. /// 钢包等级
  361. /// </summary>
  362. private void SetColumnGBLVL()
  363. {
  364. DataTable dt = new DataTable();
  365. dt = GetFactory(LadleCommonClass.strVentilateLVLFactoryCode);
  366. JJBStaticFunction.SetGridDropDownListCell("LVL", 0, "钢包等级", 82, uGrdUseladle, dt, "BASENAME", "BASENAME");
  367. }
  368. /// <summary>
  369. /// 钢包包况
  370. /// </summary>
  371. private void SetColumnPotStatus()
  372. {
  373. DataTable dt = new DataTable();
  374. dt = GetFactory(LadleCommonClass.strVentilatePotSFactoryCode);
  375. JJBStaticFunction.SetGridDropDownListCell("POTSTATUS", 0, "钢包包况", 82, uGrdUseladle, dt, "BASECODE", "BASENAME");
  376. }
  377. #endregion
  378. private void SetPlanSteel()
  379. {
  380. string strErr = "";
  381. ArrayList arry = new ArrayList();
  382. arry.Add("LoadGetSteel.Query");
  383. CommonClientToServer ccs = new CommonClientToServer();
  384. ccs.ob = this.ob;
  385. DataSet ds = ccs.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arry, out strErr);
  386. if (strErr != "" || (ds != null && ds.Tables.Count > 0))
  387. {
  388. JJBStaticFunction.SetGridDropDownListCell("PLANSTEEL", 0, "钢种", 82, uGrdUseladle, ds.Tables[0], "STEEL", "STEEL");
  389. }
  390. }
  391. /// <summary>
  392. /// 判断1#、2# 转炉是否在生产
  393. /// </summary>
  394. private void IsBofProduction()
  395. {
  396. string strErr = "";
  397. ArrayList arrybof = new ArrayList();
  398. arrybof.Add("ISBofOneTwoPro.Query");
  399. CommonClientToServer ccsTwo = new CommonClientToServer();
  400. ccsTwo.ob = this.ob;
  401. DataSet dsBof = ccsTwo.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arrybof, out strErr);
  402. if (Convert.ToInt32(dsBof.Tables[0].Rows[0][0]) > 0)
  403. {
  404. try
  405. {
  406. frmPotSendArrivall frmPotSA = new frmPotSendArrivall("", ob);
  407. frmPotSA._ds = this._dsMain.Copy();
  408. ifgb = 1;
  409. frmPotSA.ShowDialog(this);
  410. ifgb = 0;
  411. }
  412. catch { }
  413. }
  414. }
  415. #region Thread Handle
  416. /// <summary>
  417. /// 启动线程主程序
  418. /// </summary>
  419. private void StartUpThread()
  420. {
  421. ThreadStart ts = new ThreadStart(GetDataThread);
  422. _getDataThread = new Thread(ts);
  423. _getDataThread.Name = "GetDataThread ";
  424. _getDataThread.Start();
  425. }
  426. /// <summary>
  427. /// 取数据线程程序
  428. /// </summary>
  429. private void GetDataThread()
  430. {
  431. while (_bIfGetData)
  432. {
  433. try
  434. {
  435. this.Invoke(new SetDataThreadDelegate(Getpotbasedata));
  436. this.Invoke(new SetDataThreadDelegate(Getrightdata));//钢包发送查询
  437. //Thread.Sleep(15000);
  438. /*
  439. * 修改线程刷数据时间,延长到60s
  440. */
  441. Thread.Sleep(60000);
  442. }
  443. catch { }
  444. }
  445. }
  446. #endregion
  447. #region "function"
  448. /// <summary>
  449. /// 钢包烘烤记录
  450. /// </summary>
  451. /// <param name="strNo"></param>
  452. /// <returns></returns>
  453. private DataRow GetHotInfoData(string strNo)
  454. {
  455. string strWhere = " FIRINGTOOLID = '" + strNo + "'";
  456. try
  457. {
  458. DataSet ds = QueryFunctions("Core.LgMes.Server.LgDeviceManager.potmanger", "GetHotRecLog", strWhere);
  459. if (ds.Tables[0].Rows.Count > 0)
  460. {
  461. DataRow dr = ds.Tables[0].Rows[0];
  462. return dr;
  463. }
  464. else
  465. {
  466. return null;
  467. }
  468. }
  469. catch
  470. {
  471. return null;
  472. }
  473. }
  474. #endregion
  475. #region "function"
  476. /// <summary>
  477. /// 钢包维修记录
  478. /// </summary>
  479. /// <param name="strNo"></param>
  480. /// <returns></returns>
  481. private DataRow GetRepairData(string strNo)
  482. {
  483. try
  484. {
  485. DataSet ds = QueryFunctions("Core.LgMes.Server.LgDeviceManager.potmanger", "GetLatelyRepair", "'" + strNo + "'");
  486. if (ds.Tables[0].Rows.Count > 0)
  487. {
  488. DataRow dr = ds.Tables[0].Rows[0];
  489. return dr;
  490. }
  491. else
  492. {
  493. return null;
  494. }
  495. }
  496. catch
  497. {
  498. return null;
  499. }
  500. }
  501. /// <summary>
  502. /// 岗位时间查询
  503. /// </summary>
  504. /// <param name="strNo"></param>
  505. /// <returns></returns>
  506. private DataRow Getworkdata(string strNo)
  507. {
  508. try
  509. {
  510. DataSet ds = QueryFunctions("Core.LgMes.Server.LgDeviceManager.potmanger", "Getworkdata", strNo);
  511. DataRow dr = ds.Tables[0].Rows[0];
  512. return dr;
  513. }
  514. catch
  515. {
  516. return null;
  517. }
  518. }
  519. /// <summary>
  520. /// 钢包信息查询
  521. /// </summary>
  522. public void Getpotbasedata()
  523. {
  524. try
  525. {
  526. _dsMain = QueryFunctions("Core.LgMes.Server.LgDeviceManager.potmanger", "Getpotbasedata", "");
  527. uDSrLadleInfo.Rows.Clear();
  528. if (_dsMain.Tables[0].Rows.Count > 0)
  529. {
  530. foreach (DataRow dr in _dsMain.Tables[0].Rows)
  531. {
  532. uDSrLadleInfo.Rows.Add(new object[] {
  533. dr["LADLEID"].ToString(),
  534. dr["LVL"].ToString(),
  535. dr["HEATNO"].ToString(),
  536. dr["STATUS"].ToString(),
  537. dr["POTSTATUS"].ToString(),
  538. dr["AGE"].ToString(),
  539. dr["NOWPOSITION"].ToString(),
  540. dr["CVTPOS"].ToString(),
  541. dr["CURRSTEELWEIGHT"].ToString(),
  542. dr["STEELACCOUNT"].ToString(),
  543. dr["CURRARRIVETIME"].ToString(),
  544. dr["LADLETYPE"].ToString(),
  545. dr["PLANSTEEL"].ToString() ,
  546. dr["BKDZ"].ToString(),
  547. dr["BRICKCOUNT"].ToString()
  548. });
  549. }
  550. }
  551. }
  552. catch (Exception ex)
  553. {
  554. Console.WriteLine(ex.Message);
  555. }
  556. SetLeftTableRowColor();
  557. SetRowColor_ByLanletype();
  558. }
  559. /// <summary>
  560. /// 钢包发送查询
  561. /// </summary>
  562. private void Getrightdata()
  563. {
  564. try
  565. {
  566. //DataSet ds = QueryFunctions("Core.LgMes.Server.LgDeviceManager.potmanger", "Getsenddata", "");
  567. DataSet ds = GetrightdataSql11();
  568. uDSrSendLadle.Rows.Clear();
  569. if (ds != null && ds.Tables[0].Rows.Count > 0)
  570. {
  571. foreach (DataRow dr in ds.Tables[0].Rows)
  572. {
  573. uDSrSendLadle.Rows.Add(new object[] {
  574. dr["SENDTOOLID"].ToString(),
  575. dr["SENDOVENSEATID"].ToString(),
  576. dr["SENDTIME"].ToString(),
  577. dr["CASOKTIME"].ToString(),
  578. dr["STOPPOTTIME"].ToString(),
  579. dr["CCMENDTIME"].ToString()
  580. });
  581. }
  582. }
  583. }
  584. catch (Exception ex)
  585. {
  586. Console.WriteLine(ex.Message);
  587. }
  588. }
  589. private DataSet GetrightdataSql11()
  590. {
  591. string strErr="";
  592. DataSet ds = new DataSet();
  593. CommonClientToServer cctos = new CommonClientToServer();
  594. cctos.ob = this.ob;
  595. ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBExecute",
  596. "doSimpleQuery", GetrightdataSql(), out strErr);
  597. return ds;
  598. }
  599. /// <summary>
  600. /// 数据为空时显示列头
  601. /// </summary>
  602. private void initializeData()
  603. {
  604. uDSrGBLadleinfo.Rows.Add(new object[] { "", "", "", "" });
  605. uDSrUseladle.Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "","" });
  606. uDSrMaintInfo.Rows.Add(new object[] { "", "", "", null, null, null, "" });
  607. //uDHotInfo.Rows.Add(new object[]{"",null,null,""});
  608. uDSrPostTime.Rows.Add(new object[] { "", null, null, "", null, null, "", null, null, "", null, null, "", null, null, "", null, null, "", "", "", "", "", "" });
  609. }
  610. private void SetDetailData(string strNo)
  611. {
  612. DataRow dr = GetDetailTableData(strNo);
  613. SetDataSource(this.uDSrGBLadleinfo, dr);
  614. SetDataSource(this.uDSrUseladle, dr);//使用信息
  615. dr = Getworkdata(strNo);
  616. SetDataSource(this.uDSrPostTime, dr);//在站信息
  617. //dr = GetRepairData(strNo);
  618. //SetDataSource(this.uDSrMaintInfo, dr);//维修信息
  619. //dr = GetHotInfoData(strNo);
  620. //SetDataSource(this.uDHotInfo, dr);//烘烤信息
  621. }
  622. private DataRow GetDetailTableData(string strNo)
  623. {
  624. string strErr = "";
  625. try
  626. {
  627. ArrayList arry = new ArrayList();
  628. arry.Add("GetDETAIL_LFVDTIME.Query");
  629. arry.Add(strNo);
  630. arry.Add(strNo);
  631. arry.Add(strNo);
  632. CommonClientToServer ccs = new CommonClientToServer();
  633. ccs.ob = this.ob;
  634. DataSet ds = ccs.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arry, out strErr);
  635. DataRow dr = ds.Tables[0].Rows[0];
  636. return dr;
  637. }
  638. catch
  639. {
  640. return null;
  641. }
  642. }
  643. private void SetDataSource(UltraDataSource uds, DataRow dr)
  644. {
  645. string strErr = "";
  646. int count = uds.Band.Columns.Count;
  647. string strNo = this.uGrdLadleInfo.ActiveRow.Cells[0].Value.ToString();//获取钢包号
  648. string strHeaNo = this.uGrdLadleInfo.ActiveRow.Cells[2].Value.ToString();//获取钢包号
  649. //获取钢包维修时间
  650. ArrayList arry = new ArrayList();
  651. arry.Add("GetRepairTypeByToolid.Query");
  652. arry.Add(strNo);
  653. CommonClientToServer ccs = new CommonClientToServer();
  654. ccs.ob = this.ob;
  655. DataSet ds = ccs.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arry, out strErr);
  656. //获取钢包烘烤时间
  657. ArrayList ArryWX = new ArrayList();
  658. ArryWX.Add("GetTOOLFIRINGByToolid.Query");
  659. ArryWX.Add(strNo);
  660. CommonClientToServer ccsWX = new CommonClientToServer();
  661. ccsWX.ob = this.ob;
  662. DataSet dsWX = ccsWX.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", ArryWX, out strErr);
  663. //获取精炼工序吹氩流量
  664. ArrayList ArryH = new ArrayList();
  665. ArryH.Add("GetLFSArfluxbyHeaNo.Query");
  666. ArryH.Add(strHeaNo);
  667. ArryH.Add(strHeaNo);
  668. CommonClientToServer ccsH = new CommonClientToServer();
  669. ccsH.ob = this.ob;
  670. DataSet dsH = ccsH.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", ArryH, out strErr);
  671. //获取精炼工序吹氩时间
  672. ArrayList ArryC = new ArrayList();
  673. ArryC.Add("GetLFSBlowTimeByHeaNo.Query");
  674. ArryC.Add(strHeaNo);
  675. ArryC.Add(strHeaNo);
  676. CommonClientToServer ccsC = new CommonClientToServer();
  677. ccsC.ob = this.ob;
  678. DataSet dsC = ccsC.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", ArryC, out strErr);
  679. //获取连铸工序是否引流信息
  680. ArrayList ArryF = new ArrayList();
  681. ArryF.Add("GetCCMSFLOWFLAGByHeaNo.Query");
  682. ArryF.Add(strNo);
  683. ArryF.Add(strNo);
  684. CommonClientToServer ccsF = new CommonClientToServer();
  685. ccsF.ob = this.ob;
  686. DataSet dsF = ccsF.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", ArryF, out strErr);
  687. for (int i = 0; i < count; i++)
  688. {
  689. try
  690. {
  691. string strCol = uds.Band.Columns[i].Key;
  692. uds.Rows[0][strCol] = "";
  693. if (dr != null)
  694. {
  695. if (strCol == "REPAIRTYPE")
  696. {
  697. uds.Rows[0][strCol] = ds.Tables[0].Rows.Count < 0 ? "" : ds.Tables[0].Rows[0][0].ToString();
  698. }
  699. else if (strCol == "HOTTIME")
  700. { uds.Rows[0][strCol] = dsWX.Tables[0].Rows.Count < 0 ? "" : dsWX.Tables[0].Rows[0]["HOTTIME"].ToString(); }
  701. else if (strCol == "ARFLUX")
  702. { uds.Rows[0][strCol] = dsH.Tables[0].Rows.Count < 0 ? "" : dsH.Tables[0].Rows[0][0].ToString(); }
  703. else if (strCol == "CASTIME")
  704. { uds.Rows[0][strCol] = dsC.Tables[0].Rows.Count < 0 ? "" : dsC.Tables[0].Rows[0][0].ToString(); }
  705. else if (strCol == "BALEMOULDFLAG")
  706. { uds.Rows[0][strCol] = dsF.Tables[0].Rows.Count < 0 ? "" : dsF.Tables[0].Rows[0][0].ToString(); }
  707. else
  708. uds.Rows[0][strCol] = dr[strCol];
  709. }
  710. }
  711. catch { }
  712. }
  713. }
  714. private void SetLeftTableRowColor()
  715. {
  716. for (int i = 0; i < this.uGrdLadleInfo.Rows.Count; i++)
  717. {
  718. switch (this.uGrdLadleInfo.Rows[i].Cells[3].Value.ToString())
  719. {
  720. case "在用":
  721. this.uGrdLadleInfo.Rows[i].Appearance.BackColor = Color.LightGreen;
  722. break;
  723. case "待用":
  724. this.uGrdLadleInfo.Rows[i].Appearance.BackColor = Color.LightYellow;
  725. break;
  726. case "烘烤":
  727. this.uGrdLadleInfo.Rows[i].Appearance.BackColor = Color.LightBlue;
  728. break;
  729. default:
  730. this.uGrdLadleInfo.Rows[i].Appearance.BackColor = Color.LightCyan;
  731. break;
  732. }
  733. }
  734. }
  735. private void SetRowColor_ByLanletype()
  736. {
  737. for (int i = 0; i < this.uGrdLadleInfo.Rows.Count; i++)
  738. {
  739. switch (this.uGrdLadleInfo.Rows[i].Cells["LADLETYPE"].Value.ToString())
  740. {
  741. case "无碳包":
  742. this.uGrdLadleInfo.Rows[i].Cells["LADLETYPE"].Appearance.BackColor = Color.Red;
  743. break;
  744. default:
  745. break;
  746. }
  747. string brickCount = this.uGrdLadleInfo.Rows[i].Cells["BRICKCOUNT"].Text.Trim();
  748. if (!string.IsNullOrEmpty(brickCount) && Convert.ToInt32(brickCount) >= 35)
  749. {
  750. this.uGrdLadleInfo.Rows[i].Cells["BRICKCOUNT"].Appearance.BackColor = Color.Red;
  751. }
  752. }
  753. }
  754. /// <summary>
  755. /// 获取滑板、耐材、透气蕊厂家
  756. /// </summary>
  757. private DataTable GetFactory(string strBaseCode)
  758. {
  759. DataTable dtFactory = null;
  760. try
  761. {
  762. ArrayList ar = new ArrayList();
  763. ar.Add(strBaseCode);
  764. ar.Add("");
  765. ar.Add("order by BASENAME");
  766. DataSet ds = QueryArray("Core.LgMes.Server.LgDeviceManager.LadleManager", "GetFactory", new object[] { ar });
  767. if (ds.Tables[0].Rows.Count > 0)
  768. {
  769. dtFactory = ds.Tables[0];
  770. }
  771. }
  772. catch { }
  773. return dtFactory;
  774. }
  775. private void ultraGrid1_AfterRowActivate_1(object sender, EventArgs e)
  776. {
  777. //if (!bShow) return;
  778. if (this.uGrdLadleInfo.ActiveRow == null) return;
  779. //if (!_flagaffterrow) return;
  780. string strNo = this.uGrdLadleInfo.ActiveRow.Cells[0].Value.ToString();//获取钢包号
  781. txtPotNo.Text = strNo;//显示烘烤钢包号LADLEID
  782. SetDetailData(strNo);
  783. //bShow = false;
  784. //加载钢包烘烤信息
  785. GetData(strNo);
  786. if (_IsStatus == false && Flagi == 0)
  787. {
  788. this.chkStart.BackColor = Color.Transparent;
  789. this.chkEnd.BackColor = Color.Transparent;
  790. }
  791. if (_IsStatus == false && Flagi > 0)
  792. {
  793. this.chkStart.BackColor = Color.LightSteelBlue;
  794. //this.chkEnd.BackColor = Color.LightSteelBlue;
  795. }
  796. }
  797. private void ultraToolbarsManager2_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  798. {
  799. string strPotNo = this.uDSrGBLadleinfo.Rows[0]["LADLEID"].ToString();
  800. switch (e.Tool.Key)
  801. {
  802. case "add":
  803. _IsEdit = false;
  804. if (proc_JudgeReadOnly())
  805. return;
  806. Edit();
  807. this.uTbMTool.Tools["ok"].Tag = "add";
  808. _flagaffterrow = false;
  809. break;
  810. case "del":
  811. if (proc_JudgeReadOnly())
  812. return;
  813. if (strPotNo == null || strPotNo == "") return;
  814. DialogResult dr = MessageBox.Show("删除钢包将删除所有相关信息,是否确认?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
  815. if (dr == DialogResult.No) return;
  816. if (Del(strPotNo))
  817. {
  818. _IsUpdateFlag = true;
  819. RefreshRightTable();
  820. }
  821. Getpotbasedata();
  822. break;
  823. case "edit":
  824. _IsEdit = true;
  825. if (proc_JudgeReadOnly())
  826. return;
  827. Edit();
  828. this.uTbMTool.Tools["ok"].Tag = "edit";
  829. _flagaffterrow = false;
  830. break;
  831. case "query":
  832. frmrequipot frm = new frmrequipot();
  833. frm.ShowDialog();
  834. if (frm._updateFlag)
  835. {
  836. string strNo = frm._strPotNo;
  837. SetDetailData(strNo);
  838. }
  839. break;
  840. case "ok":
  841. if (strPotNo == null || strPotNo == "")
  842. {
  843. MessageBox.Show("请输入钢包号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
  844. return;
  845. }
  846. if (Update(this.uTbMTool.Tools["ok"].Tag.ToString()))
  847. {
  848. SetDetailToolBarEnable(true);
  849. this.SetGridCellAllowEdit(uGrdUseladle, false);
  850. this.SetGridCellAllowEdit(uGrdGBLadleinfo, false);
  851. _IsUpdateFlag = true;
  852. }
  853. Getpotbasedata();
  854. break;
  855. case "cancel":
  856. _flagaffterrow = true;
  857. SetDetailToolBarEnable(true);
  858. this.SetGridCellAllowEdit(uGrdUseladle, false);
  859. this.SetGridCellAllowEdit(uGrdGBLadleinfo, false);
  860. break;
  861. case "fore":
  862. //将位置移动到前一条记录
  863. if (uGrdLadleInfo.ActiveRow == null)
  864. {
  865. uGrdLadleInfo.Rows[0].Activate();
  866. }
  867. else
  868. {
  869. int nIndex = uGrdLadleInfo.ActiveRow.Index;
  870. nIndex = nIndex - 1;
  871. if (nIndex < 0) nIndex = 0;
  872. uGrdLadleInfo.Rows[nIndex].Activate();
  873. }
  874. break;
  875. case "next":
  876. if (uGrdLadleInfo.ActiveRow == null)
  877. {
  878. uGrdLadleInfo.Rows[0].Activate();
  879. }
  880. else
  881. {
  882. int nIndex = uGrdLadleInfo.ActiveRow.Index;
  883. nIndex = nIndex + 1;
  884. if (nIndex >= uGrdLadleInfo.Rows.Count) nIndex = 0;
  885. uGrdLadleInfo.Rows[nIndex].Activate();
  886. //ultraGrid1_AfterRowActivate_1(null, null);
  887. string strNo = this.uGrdLadleInfo.ActiveRow.Cells[0].Value.ToString();//获取钢包号
  888. SetDetailData(strNo);
  889. }
  890. break;
  891. }
  892. }
  893. /// <summary>
  894. /// 菜单栏
  895. /// </summary>
  896. ///
  897. public override void ToolBar_Click(object sender, string ToolbarKey)
  898. {
  899. /*
  900. * 修改描述:原有的写法直接取激活行,有时候会报控制
  901. * 加个异常捕捉
  902. * 修改人:ym
  903. * 修改时间:20131217
  904. */
  905. string strPotNo = "";
  906. try
  907. {
  908. if (this.uGrdGBLadleinfo.ActiveRow == null)
  909. {
  910. this.uGrdGBLadleinfo.ActiveRow = this.uGrdGBLadleinfo.Rows[0];
  911. }
  912. strPotNo = uGrdGBLadleinfo.ActiveRow.Cells["LADLEID"].Value.ToString();// this.ultraDataSource7.Rows[0]["LADLEID"].ToString();
  913. }
  914. catch
  915. {
  916. }
  917. ArrayList ar = new ArrayList();
  918. switch (ToolbarKey)
  919. {
  920. case "Query":
  921. Getpotbasedata();
  922. break;
  923. case "LadleBakeRecord"://展现钢包烘烤记录
  924. frmhothis HotRecfrmLog = new frmhothis(ob);
  925. HotRecfrmLog.potno = strPotNo;
  926. HotRecfrmLog.ShowDialog();
  927. break;
  928. case "LadleUseOfRecords"://钢包使用历史
  929. frmworkhis frmkhis = new frmworkhis(ob);
  930. frmkhis.potno = strPotNo;
  931. frmkhis.ShowDialog();
  932. break;
  933. case "LadleBake"://钢包烘烤
  934. if (proc_JudgeReadOnly())
  935. return;
  936. frmhot frm1 = new frmhot(ob);
  937. frm1._strPotNo = strPotNo;
  938. frm1.ShowDialog();
  939. break;
  940. case "LadleMaintenance"://钢包维修
  941. if (proc_JudgeReadOnly())
  942. return;
  943. frmpotrepaire frm2 = new frmpotrepaire(this.ob);
  944. frm2._strPotNo = strPotNo;
  945. frm2.ShowDialog();
  946. break;
  947. case "LadleMaintRecord"://钢包维修记录
  948. frmrepairehis frm3 = new frmrepairehis(ob);
  949. frm3.potno = strPotNo;
  950. frm3.ShowDialog();
  951. break;
  952. case "LadleRecord"://钢包发送
  953. frmPotSendArrivall frmPotSA = new frmPotSendArrivall(strPotNo, ob);
  954. frmPotSA._ds = this._dsMain.Copy();
  955. frmPotSA.ShowDialog(this);
  956. break;
  957. case "LadleRecordJL"://钢包发送记录
  958. FrmPotSendSuccesful frmPot = new FrmPotSendSuccesful(ob);
  959. frmPot.ShowDialog();
  960. break;
  961. case "LevelRecord"://等级记录
  962. frmpotrank frm4 = new frmpotrank(ob);
  963. if (this.uGrdLadleInfo.ActiveRow != null)
  964. {
  965. try
  966. {
  967. frm4._strPotNo = this.uGrdLadleInfo.ActiveRow.Cells["LADLEID"].Value.ToString();
  968. }
  969. catch { }
  970. }
  971. frm4.ShowDialog();
  972. break;
  973. case "Hide"://隐藏钢包信息
  974. bool b = this.ultraExpandableGroupBox1.Expanded;
  975. if (this.uGrdLadleInfo.ActiveRow != null && !b)
  976. {
  977. string strNo = this.uGrdLadleInfo.ActiveRow.Cells[0].Value.ToString();
  978. SetDetailData(strNo);
  979. }
  980. this.ultraExpandableGroupBox1.Expanded = !b;
  981. break;
  982. case "exit":
  983. Close();
  984. break;
  985. case "GbYcComfirm":
  986. frmPotAbnormal frmPAF = new frmPotAbnormal(ob);
  987. frmPAF.ShowDialog();
  988. break;
  989. }
  990. }
  991. private void Edit()
  992. {
  993. SetDetailToolBarEnable(false);
  994. SetGridCellAllowEdit(this.uGrdUseladle, true);
  995. SetGridCellAllowEdit(this.uGrdGBLadleinfo, true);
  996. }
  997. /// <summary>
  998. /// 点击修改或删除时显示确认和取消按钮
  999. /// </summary>
  1000. /// <param name="bEnable"></param>
  1001. private void SetDetailToolBarEnable(bool bEnable)
  1002. {
  1003. int count = this.uTbMTool.Tools.Count;
  1004. for (int i = 0; i < count; i++)
  1005. {
  1006. this.uTbMTool.Tools[i].SharedProps.Enabled = bEnable;
  1007. }
  1008. this.uTbMTool.Tools["ok"].SharedProps.Enabled = !bEnable;
  1009. this.uTbMTool.Tools["cancel"].SharedProps.Enabled = !bEnable;
  1010. this.uTbMTool.Tools["ok"].SharedProps.Visible = !bEnable;
  1011. this.uTbMTool.Tools["cancel"].SharedProps.Visible = !bEnable;
  1012. }
  1013. /// <summary>
  1014. /// 钢包和钢包使用信息是否可以编辑
  1015. /// </summary>
  1016. /// <param name="ug"></param>
  1017. /// <param name="IsAllow"></param>
  1018. private void SetGridCellAllowEdit(Infragistics.Win.UltraWinGrid.UltraGrid ug, bool IsAllow)
  1019. {
  1020. Infragistics.Win.UltraWinGrid.UltraGridBand band = ug.DisplayLayout.Bands[0];
  1021. for (int i = 0; i < band.Columns.Count; i++)
  1022. {
  1023. if (IsAllow) band.Columns[i].CellActivation = Activation.AllowEdit;
  1024. else band.Columns[i].CellActivation = Activation.NoEdit;
  1025. }
  1026. }
  1027. /// <summary>
  1028. /// 使用信息删除
  1029. /// </summary>
  1030. /// <param name="strPotNo"></param>
  1031. /// <returns></returns>
  1032. private bool Del(string strPotNo)
  1033. {
  1034. string strMsg = string.Format("删除{0}号钢包失败!", strPotNo);
  1035. try
  1036. {
  1037. string strOut = "";
  1038. strOut = NoQueryFunctions("Core.LgMes.Server.DEV.Methods.DEVPublicMethods", "UpdateMethods", new object[] { "delete DEV_GB_BASE_INFO where LADLEID = '" + strPotNo + "'" });
  1039. if (strOut == "")
  1040. {
  1041. strMsg = string.Format("删除{0}号钢包成功!", strPotNo);
  1042. return true;
  1043. }
  1044. }
  1045. catch { }
  1046. MessageBox.Show(strMsg, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
  1047. return false;
  1048. }
  1049. private void RefreshRightTable()
  1050. {
  1051. if (_IsUpdateFlag)
  1052. {
  1053. Getpotbasedata();
  1054. _IsUpdateFlag = false;
  1055. }
  1056. }
  1057. /// <summary>
  1058. /// 钢包信息新增修改
  1059. /// </summary>
  1060. /// <param name="strOpe"></param>
  1061. /// <returns></returns>
  1062. private bool Update(string strOpe)
  1063. {
  1064. ArrayList ar = new ArrayList();
  1065. this.uGrdUseladle.UpdateData();
  1066. this.uGrdGBLadleinfo.UpdateData();
  1067. AddParmToArrayFromDataSource(this.uGrdGBLadleinfo, ar);
  1068. AddParmToArrayFromDataSource(this.uGrdUseladle, ar);
  1069. string strMethod = "";
  1070. string strMsg = "";
  1071. string strOut = "";
  1072. switch (strOpe)
  1073. {
  1074. case "add":
  1075. strMethod = "STL_DEV_Info.STL_GBInsertTPM_INFO";// "InsertTPM_POTBASEINFO";
  1076. strMsg = "新增失败!\n";
  1077. break;
  1078. case "edit":
  1079. strMethod = "STL_DEV_Info.STL_GBUpdateTPM_INFO";//UpdateTPM_POTBASEINFO";
  1080. strMsg = "修改失败!\n";
  1081. break;
  1082. }
  1083. try
  1084. {
  1085. string[] strParams = (string[])ar.ToArray(typeof(string));
  1086. ProcedureZ("Core.LgMes.Server.DEV.Methods.DEVPublicMethods", "procedure", new object[] { strMethod, strParams }, ob, out strOut, out strMsg);
  1087. if (Convert.ToInt32(strOut) > 0)
  1088. {
  1089. if (strMethod == "STL_DEV_Info.STL_GBInsertTPM_INFO")
  1090. {
  1091. MessageBox.Show("钢包号【" + ar[0].ToString() + "】新增成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
  1092. SetDetailToolBarEnable(true);
  1093. SetGridCellAllowEdit(this.uGrdUseladle, false);
  1094. SetGridCellAllowEdit(this.uGrdGBLadleinfo, false);
  1095. }
  1096. else
  1097. {
  1098. MessageBox.Show("钢包号【" + ar[0].ToString() + "】修改成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
  1099. SetDetailToolBarEnable(true);
  1100. SetGridCellAllowEdit(this.uGrdUseladle, false);
  1101. SetGridCellAllowEdit(this.uGrdGBLadleinfo, false);
  1102. }
  1103. }
  1104. else
  1105. {
  1106. MessageBox.Show(strMsg, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  1107. SetDetailToolBarEnable(true);
  1108. SetGridCellAllowEdit(this.uGrdUseladle, false);
  1109. SetGridCellAllowEdit(this.uGrdGBLadleinfo, false);
  1110. }
  1111. }
  1112. catch { }
  1113. return false;
  1114. }
  1115. /// <summary>
  1116. /// 获取Grid所有值
  1117. /// </summary>
  1118. /// <param Grid名称="ug"></param>
  1119. /// <param arraylist="ar"></param>
  1120. private void AddParmToArrayFromDataSource(UltraGrid ug, ArrayList ar)
  1121. {
  1122. int count = ug.DisplayLayout.Bands[0].Columns.Count;
  1123. for (int i = 0; i < count; i++)
  1124. {
  1125. if (ug.Rows[0].Cells[i].Value == null || ug.Rows[0].Cells[i].Value.ToString().Trim() == "")
  1126. {
  1127. if (ug.DisplayLayout.Bands[0].Columns[i].Tag != null && ug.DisplayLayout.Bands[0].Columns[i].Tag.ToString() == "string")
  1128. ar.Add("");
  1129. else
  1130. ar.Add("0");
  1131. }
  1132. else
  1133. {
  1134. if (ug.Rows[0].Cells[i].Column.ToString() == "POTSTATUS")
  1135. ar.Add(ug.Rows[0].Cells[i].Text.ToString());
  1136. else
  1137. ar.Add(ug.Rows[0].Cells[i].Value);
  1138. }
  1139. }
  1140. }
  1141. #endregion
  1142. private void ultraGrid4_AfterCellListCloseUp(object sender, CellEventArgs e)
  1143. {
  1144. switch (e.Cell.Column.Key)
  1145. {
  1146. case "POTSTATUS":
  1147. if (e.Cell.Text == "新包" || e.Cell.Text == "中修包")
  1148. {
  1149. try
  1150. {
  1151. this.uGrdGBLadleinfo.Rows[0].Cells["LVL"].Value = "D";
  1152. this.uGrdGBLadleinfo.UpdateData();
  1153. }
  1154. catch { }
  1155. }
  1156. else if (e.Cell.Text != "干净" && this.uGrdGBLadleinfo.Rows[0].Cells["LVL"].Value.ToString() == "A")//获取包级
  1157. {
  1158. try
  1159. {
  1160. this.uGrdGBLadleinfo.Rows[0].Cells["LVL"].Value = "B";
  1161. this.uGrdGBLadleinfo.UpdateData();
  1162. }
  1163. catch { }
  1164. }
  1165. break;
  1166. case "LVL":
  1167. if (this.uGrdGBLadleinfo.Rows[0].Cells["POTSTATUS"].Value.ToString() != "干净" && e.Cell.Text == "A")
  1168. {
  1169. this.uGrdGBLadleinfo.Rows[0].Cells["LVL"].Value = "B";
  1170. this.uGrdGBLadleinfo.UpdateData();
  1171. }
  1172. break;
  1173. }
  1174. }
  1175. private void uGrdLadleInfo_Click(object sender, EventArgs e)
  1176. {
  1177. try
  1178. {
  1179. if (uGrdLadleInfo.Rows.Count == 0) return;
  1180. if (uGrdLadleInfo.ActiveRow == null) return;
  1181. if (!_flagaffterrow) return;
  1182. string strNo = this.uGrdLadleInfo.ActiveRow.Cells[0].Value.ToString();//获取钢包号
  1183. SetDetailData(strNo);
  1184. }
  1185. catch (Exception ex)
  1186. {
  1187. MessageBox.Show(ex.Message);
  1188. }
  1189. }
  1190. /// <summary>
  1191. /// 钢包发送-到达
  1192. /// </summary>
  1193. /// <param name="sender"></param>
  1194. /// <param name="e"></param>
  1195. private void uGrdLadleInfo_DoubleClickRow(object sender, DoubleClickRowEventArgs e)
  1196. {
  1197. string strPotNo = uGrdGBLadleinfo.ActiveRow.Cells["LADLEID"].Value.ToString();
  1198. //frmPotSendArrivall frmPotSA = new frmPotSendArrivall(strPotNo, ob);
  1199. //frmPotSA._ds = this._dsMain.Copy();
  1200. //frmPotSA.ShowDialog(this);
  1201. }
  1202. /// <summary>
  1203. /// 定时器弹出子窗体
  1204. /// </summary>
  1205. /// <param name="sender"></param>
  1206. /// <param name="e"></param>
  1207. private void timer_Tick(object sender, EventArgs e)
  1208. {
  1209. /*
  1210. * 修改描述:取消定时器自动弹出钢包-发送功能
  1211. * 修改人:ym
  1212. * 修改时间:20131217
  1213. */
  1214. return;
  1215. try
  1216. {
  1217. if (ifgb == 0)
  1218. {
  1219. IsBofProduction();
  1220. }
  1221. }
  1222. catch { }
  1223. }
  1224. /// <summary>
  1225. /// 确定事件
  1226. /// </summary>
  1227. private void proc_OK()
  1228. {
  1229. string strPotNo = uGrdGBLadleinfo.ActiveRow.Cells["LADLEID"].Value.ToString();
  1230. if (this.cmbBakingNo.Text.Trim().Length == 0)
  1231. {
  1232. MessageBox.Show("请选择烘烤位置!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
  1233. return;
  1234. }
  1235. if (uDTEStart.DateTime.Date > uDTEEnd.DateTime.Date)
  1236. {
  1237. MessageBox.Show("烘烤开始日期不能大于烘烤结束日期!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
  1238. return;
  1239. }
  1240. try
  1241. {
  1242. ArrayList ar = new ArrayList();
  1243. ar.Clear();
  1244. ar.Add(_IsInsert.ToString());
  1245. ar.Add(strPotNo);
  1246. ar.Add(_strWorkNo);
  1247. ar.Add(this.cmbBakingNo.Text.Trim());
  1248. ar.Add(this.chkStart.Checked.ToString());
  1249. ar.Add(this.chkEnd.Checked.ToString());
  1250. ar.Add(this.uDTEStart.DateTime.ToString("yyyy-MM-dd HH:mm:ss"));
  1251. ar.Add(this.uDTEEnd.DateTime.ToString("yyyy-MM-dd HH:mm:ss"));
  1252. string strOut = "";
  1253. string[] strParams = (string[])ar.ToArray(typeof(string));
  1254. string Mse = "";
  1255. ProcedureZ("Core.LgMes.Server.DEV.Methods.DEVPublicMethods", "procedure", new object[] { "STL_DEV_Info.stl_gbsetcurrhotpot", strParams }, ob, out strOut, out Mse);
  1256. if (Convert.ToInt32(strOut) <= 0)
  1257. {
  1258. MessageBox.Show(Mse, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
  1259. return;
  1260. }
  1261. //清空钢包烘烤信息
  1262. this.chkStart.BackColor = Color.LightSteelBlue;
  1263. this.chkEnd.BackColor = Color.LightSteelBlue;
  1264. this.txtBakingTime.Text = "";
  1265. cmbBakingNo.SelectedIndex = -1;
  1266. txtPotNo.Text = "";
  1267. }
  1268. catch (Exception ex)
  1269. {
  1270. MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
  1271. }
  1272. }
  1273. private String GetrightdataSql()
  1274. {
  1275. string Sql = "with tmp1 as (select * from "
  1276. + " (select ladleid,cycid,casoktime,STOPPOTTIME,castingendtime,row_number()"
  1277. + "over( partition by ladleid order by cycid desc) xh from dev_gb_use_detail) where xh<3)"
  1278. + "select a.SENDTOOLID SENDTOOLID,a.SENDOVENSEATID SENDOVENSEATID,"
  1279. + "to_char(a.SENDTIME, 'yyyy-mm-dd hh24:mi') SENDTIME,"
  1280. + "to_char(c.casoktime, 'hh24:mi') CASOKTIME,c.STOPPOTTIME,to_char(d.castingendtime, 'hh24:mi') CCMENDTIME "
  1281. + "from DEV_TOOLSENDDETAIL a, DEV_GB_BASE_INFO b, tmp1 c,tmp1 d "
  1282. + "where a.SENDID = b.SENDID and (b.ladleid = c.ladleid and c.xh=1) "
  1283. + "and (b.ladleid = d.ladleid and d.xh=2) order by sendtime desc";
  1284. return Sql;
  1285. }
  1286. private void btnOK_Click(object sender, EventArgs e)
  1287. {
  1288. this.proc_OK();
  1289. }
  1290. private void btnCancel_Click(object sender, EventArgs e)
  1291. {
  1292. //this.Close();
  1293. }
  1294. }
  1295. }