ClassModelMethod.cs 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using Core.LgMes.Client.lgClassModel;
  5. namespace Core.LgMes.Client.LgJobMgt
  6. {
  7. /// <summary>
  8. /// 封装类模型方法
  9. /// </summary>
  10. public class ClassModelMethod
  11. {
  12. }
  13. #region " 实时跟踪信息模型类 TrackObjectInfo "
  14. public class TrackObjectInfo
  15. {
  16. public TrackObjectInfo()
  17. {
  18. hList = new Hashlist();
  19. }
  20. #region 变量定义
  21. public Hashlist hList;
  22. #endregion
  23. #region 公用方法
  24. public void ClearElement()
  25. {
  26. hList.Clear();
  27. }
  28. #region
  29. public void Add(ref RealDataTrackObjectInfor TrackObjectInfor)
  30. {
  31. RealDataTrackObjectInfor tmpTrackObjectInfor = null;
  32. tmpTrackObjectInfor = (RealDataTrackObjectInfor)hList[TrackObjectInfor.OBJECTPOS];
  33. if (tmpTrackObjectInfor == null)
  34. {
  35. hList.Add(TrackObjectInfor.OBJECTPOS, TrackObjectInfor);
  36. }
  37. }
  38. //当前没有信息从缓存中添加 增加协调
  39. public void AddElement(ref TrackObjectInfo obj)
  40. {
  41. RealDataTrackObjectInfor tmpTrackObjectInfo = null;
  42. int Count = obj.hList.Count;
  43. for (int i = 0; i < Count; i++)
  44. {
  45. tmpTrackObjectInfo = (RealDataTrackObjectInfor)obj.hList[i];
  46. if (tmpTrackObjectInfo != null)
  47. {
  48. RealDataTrackObjectInfor TrackObjectInfor = null;
  49. TrackObjectInfor = (RealDataTrackObjectInfor)hList[tmpTrackObjectInfo.OBJECTPOS];
  50. if (TrackObjectInfor != null)
  51. {
  52. TrackObjectInfor.Copy(ref tmpTrackObjectInfo);
  53. }
  54. else
  55. {
  56. TrackObjectInfor = new RealDataTrackObjectInfor();
  57. TrackObjectInfor.Copy(ref tmpTrackObjectInfo);
  58. hList.Add(TrackObjectInfor.OBJECTPOS, TrackObjectInfor);
  59. }
  60. }
  61. }
  62. }
  63. //缓存中没有数据移除 移除协调
  64. public void RemoveElement(ref TrackObjectInfo obj)
  65. {
  66. RealDataTrackObjectInfor tmpTrackObjectInfo = null;
  67. int Count = hList.Count;
  68. for (int i = 0; i < Count; i++)
  69. {
  70. tmpTrackObjectInfo = (RealDataTrackObjectInfor)hList[i];
  71. if (tmpTrackObjectInfo != null)
  72. {
  73. RealDataTrackObjectInfor TrackObjectInfo = null;
  74. TrackObjectInfo = (RealDataTrackObjectInfor)obj.hList[tmpTrackObjectInfo.OBJECTPOS];
  75. if (TrackObjectInfo == null)
  76. {
  77. hList.Remove(tmpTrackObjectInfo.OBJECTPOS);
  78. i = i - 1;
  79. Count = Count - 1;
  80. }
  81. }
  82. }
  83. }
  84. //数据协调
  85. public void DataHarmonize(ref TrackObjectInfo obj)
  86. {
  87. AddElement(ref obj);
  88. RemoveElement(ref obj);
  89. }
  90. #endregion
  91. #endregion
  92. }
  93. #endregion
  94. #region " 工艺化学成分 CraftElement "
  95. public class CraftElement
  96. {
  97. public CraftElement()
  98. {
  99. hList = new Hashlist();
  100. }
  101. public Hashlist hList;
  102. #region 公用方法
  103. public void ClearElement()
  104. {
  105. hList.Clear();
  106. }
  107. #region
  108. public void Add(ref JOB_CHEMELEMENT LGHXJYZ)
  109. {
  110. JOB_CHEMELEMENT tmpLGHXJYZ = null;
  111. tmpLGHXJYZ = (JOB_CHEMELEMENT)hList[LGHXJYZ.CHECKNO];
  112. if (tmpLGHXJYZ == null)
  113. {
  114. hList.Add(LGHXJYZ.CHECKNO, LGHXJYZ);
  115. }
  116. }
  117. //当前没有信息从缓存中添加 增加协调
  118. public void AddElement(ref CraftElement obj)
  119. {
  120. JOB_CHEMELEMENT tmpLGHXJYZ = null;
  121. int Count = obj.hList.Count;
  122. for (int i = 0; i < Count; i++)
  123. {
  124. tmpLGHXJYZ = (JOB_CHEMELEMENT)obj.hList[i];
  125. if (tmpLGHXJYZ != null)
  126. {
  127. JOB_CHEMELEMENT LGHXJYZ = null;
  128. LGHXJYZ = (JOB_CHEMELEMENT)hList[tmpLGHXJYZ.CHECKNO];
  129. if (LGHXJYZ != null)
  130. {
  131. LGHXJYZ.Copy(ref tmpLGHXJYZ);
  132. }
  133. else
  134. {
  135. LGHXJYZ = new JOB_CHEMELEMENT();
  136. LGHXJYZ.Copy(ref tmpLGHXJYZ);
  137. hList.Add(LGHXJYZ.CHECKNO, LGHXJYZ);
  138. }
  139. }
  140. }
  141. }
  142. //缓存中没有数据移除 移除协调
  143. public void RemoveElement(ref CraftElement obj)
  144. {
  145. JOB_CHEMELEMENT tmpLGHXJYZ = null;
  146. int Count = hList.Count;
  147. for (int i = 0; i < Count; i++)
  148. {
  149. tmpLGHXJYZ = (JOB_CHEMELEMENT)hList[i];
  150. if (tmpLGHXJYZ != null)
  151. {
  152. JOB_CHEMELEMENT LGHXJYZ = null;
  153. LGHXJYZ = (JOB_CHEMELEMENT)obj.hList[tmpLGHXJYZ.CHECKNO];
  154. if (LGHXJYZ == null)
  155. {
  156. hList.Remove(tmpLGHXJYZ.CHECKNO);
  157. i = i - 1;
  158. Count = Count - 1;
  159. }
  160. }
  161. }
  162. }
  163. //数据协调
  164. public void DataHarmonize(ref CraftElement obj)
  165. {
  166. AddElement(ref obj);
  167. RemoveElement(ref obj);
  168. }
  169. #endregion
  170. #endregion
  171. }
  172. #endregion
  173. #region " 转炉过程添加剂 BofAdditive "
  174. public class BofAdditive
  175. {
  176. public BofAdditive()
  177. {
  178. hList = new Hashlist();
  179. }
  180. public Hashlist hList;
  181. #region 公用方法
  182. public void ClearElement()
  183. {
  184. hList.Clear();
  185. }
  186. #region
  187. public void Add(ref JOB_BOF_ADDITIVES ZLGCTJJ)
  188. {
  189. JOB_BOF_ADDITIVES tmpZLGCTJJ = null;
  190. string szKey = ZLGCTJJ.HEATPROCESSNO + ZLGCTJJ.MATERIELCODE + ZLGCTJJ.MATERIELTYPE + ZLGCTJJ.HOPPERNUMID + ZLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  191. tmpZLGCTJJ = (JOB_BOF_ADDITIVES)hList[szKey];
  192. if (tmpZLGCTJJ == null)
  193. {
  194. hList.Add(szKey, ZLGCTJJ);
  195. }
  196. }
  197. //当前没有信息从缓存中添加 增加协调
  198. public void AddElement(ref BofAdditive obj)
  199. {
  200. JOB_BOF_ADDITIVES tmpZLGCTJJ = null;
  201. int Count = obj.hList.Count;
  202. for (int i = 0; i < Count; i++)
  203. {
  204. tmpZLGCTJJ = (JOB_BOF_ADDITIVES)obj.hList[i];
  205. if (tmpZLGCTJJ != null)
  206. {
  207. string szKey = tmpZLGCTJJ.HEATPROCESSNO + tmpZLGCTJJ.MATERIELCODE + tmpZLGCTJJ.MATERIELTYPE + tmpZLGCTJJ.HOPPERNUMID + tmpZLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  208. JOB_BOF_ADDITIVES ZLGCTJJ = null;
  209. ZLGCTJJ = (JOB_BOF_ADDITIVES)hList[szKey];
  210. if (ZLGCTJJ != null)
  211. {
  212. ZLGCTJJ.Copy(ref tmpZLGCTJJ);
  213. }
  214. else
  215. {
  216. ZLGCTJJ = new JOB_BOF_ADDITIVES();
  217. ZLGCTJJ.Copy(ref tmpZLGCTJJ);
  218. hList.Add(szKey, ZLGCTJJ);
  219. }
  220. }
  221. }
  222. }
  223. //缓存中没有数据移除 移除协调
  224. public void RemoveElement(ref BofAdditive obj)
  225. {
  226. JOB_BOF_ADDITIVES tmpZLGCTJJ = null;
  227. int Count = hList.Count;
  228. for (int i = 0; i < Count; i++)
  229. {
  230. tmpZLGCTJJ = (JOB_BOF_ADDITIVES)hList[i];
  231. if (tmpZLGCTJJ != null)
  232. {
  233. string szKey = tmpZLGCTJJ.HEATPROCESSNO + tmpZLGCTJJ.MATERIELCODE + tmpZLGCTJJ.MATERIELTYPE + tmpZLGCTJJ.HOPPERNUMID + tmpZLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  234. JOB_BOF_ADDITIVES ZLGCTJJ = null;
  235. ZLGCTJJ = (JOB_BOF_ADDITIVES)obj.hList[szKey];
  236. if (ZLGCTJJ == null)
  237. {
  238. hList.Remove(szKey);
  239. i = i - 1;
  240. Count = Count - 1;
  241. }
  242. }
  243. }
  244. }
  245. //数据协调
  246. public void DataHarmonize(ref BofAdditive obj)
  247. {
  248. AddElement(ref obj);
  249. RemoveElement(ref obj);
  250. }
  251. #endregion
  252. #endregion
  253. }
  254. #endregion
  255. #region " 吹氩过程添加剂 CasAdditive "
  256. public class CasAdditive
  257. {
  258. public CasAdditive()
  259. {
  260. hList = new Hashlist();
  261. }
  262. public Hashlist hList;
  263. #region 公用方法
  264. public void ClearElement()
  265. {
  266. hList.Clear();
  267. }
  268. #region
  269. public void Add(ref JOB_CAS_ADDITIVES ZLGCTJJ)
  270. {
  271. JOB_CAS_ADDITIVES tmpZLGCTJJ = null;
  272. string szKey = ZLGCTJJ.HEATPROCESSNO + ZLGCTJJ.MATERIELCODE + ZLGCTJJ.MATERIELTYPE + ZLGCTJJ.HOPPERNUMID + ZLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  273. tmpZLGCTJJ = (JOB_CAS_ADDITIVES)hList[szKey];
  274. if (tmpZLGCTJJ == null)
  275. {
  276. hList.Add(szKey, ZLGCTJJ);
  277. }
  278. }
  279. //当前没有信息从缓存中添加 增加协调
  280. public void AddElement(ref CasAdditive obj)
  281. {
  282. JOB_CAS_ADDITIVES tmpZLGCTJJ = null;
  283. int Count = obj.hList.Count;
  284. for (int i = 0; i < Count; i++)
  285. {
  286. tmpZLGCTJJ = (JOB_CAS_ADDITIVES)obj.hList[i];
  287. if (tmpZLGCTJJ != null)
  288. {
  289. string szKey = tmpZLGCTJJ.HEATPROCESSNO + tmpZLGCTJJ.MATERIELCODE + tmpZLGCTJJ.MATERIELTYPE + tmpZLGCTJJ.HOPPERNUMID + tmpZLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  290. JOB_CAS_ADDITIVES ZLGCTJJ = null;
  291. ZLGCTJJ = (JOB_CAS_ADDITIVES)hList[szKey];
  292. if (ZLGCTJJ != null)
  293. {
  294. ZLGCTJJ.Copy(ref tmpZLGCTJJ);
  295. }
  296. else
  297. {
  298. ZLGCTJJ = new JOB_CAS_ADDITIVES();
  299. ZLGCTJJ.Copy(ref tmpZLGCTJJ);
  300. hList.Add(szKey, ZLGCTJJ);
  301. }
  302. }
  303. }
  304. }
  305. //缓存中没有数据移除 移除协调
  306. public void RemoveElement(ref CasAdditive obj)
  307. {
  308. JOB_CAS_ADDITIVES tmpZLGCTJJ = null;
  309. int Count = hList.Count;
  310. for (int i = 0; i < Count; i++)
  311. {
  312. tmpZLGCTJJ = (JOB_CAS_ADDITIVES)hList[i];
  313. if (tmpZLGCTJJ != null)
  314. {
  315. string szKey = tmpZLGCTJJ.HEATPROCESSNO + tmpZLGCTJJ.MATERIELCODE + tmpZLGCTJJ.MATERIELTYPE + tmpZLGCTJJ.HOPPERNUMID + tmpZLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  316. JOB_CAS_ADDITIVES ZLGCTJJ = null;
  317. ZLGCTJJ = (JOB_CAS_ADDITIVES)obj.hList[szKey];
  318. if (ZLGCTJJ == null)
  319. {
  320. hList.Remove(szKey);
  321. i = i - 1;
  322. Count = Count - 1;
  323. }
  324. }
  325. }
  326. }
  327. //数据协调
  328. public void DataHarmonize(ref CasAdditive obj)
  329. {
  330. AddElement(ref obj);
  331. RemoveElement(ref obj);
  332. }
  333. #endregion
  334. #endregion
  335. }
  336. #endregion
  337. #region " 精炼炉过程添加剂 LfsAdditive "
  338. public class LfsAdditive
  339. {
  340. public LfsAdditive()
  341. {
  342. hList = new Hashlist();
  343. }
  344. public Hashlist hList;
  345. #region 公用方法
  346. public void ClearElement()
  347. {
  348. hList.Clear();
  349. }
  350. #region
  351. public void Add(ref JOB_LFS_ADDITIVES GBLGCTJJ)
  352. {
  353. JOB_LFS_ADDITIVES tmpGBLGCTJJ = null;
  354. string szKey = GBLGCTJJ.HEATPROCESSNO + GBLGCTJJ.MATERIELCODE + GBLGCTJJ.MATERIELTYPE + GBLGCTJJ.HOPPERNUMID + GBLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  355. tmpGBLGCTJJ = (JOB_LFS_ADDITIVES)hList[szKey];
  356. if (tmpGBLGCTJJ == null)
  357. {
  358. hList.Add(szKey, GBLGCTJJ);
  359. }
  360. }
  361. // 当前没有信息从缓存中添加 增加协调
  362. public void AddElement(ref LfsAdditive obj)
  363. {
  364. JOB_LFS_ADDITIVES tmpGBLGCTJJ = null;
  365. int Count = obj.hList.Count;
  366. for (int i = 0; i < Count; i++)
  367. {
  368. tmpGBLGCTJJ = (JOB_LFS_ADDITIVES)obj.hList[i];
  369. if (tmpGBLGCTJJ != null)
  370. {
  371. string szKey = tmpGBLGCTJJ.HEATPROCESSNO + tmpGBLGCTJJ.MATERIELCODE + tmpGBLGCTJJ.MATERIELTYPE + tmpGBLGCTJJ.HOPPERNUMID + tmpGBLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  372. JOB_LFS_ADDITIVES GBLGCTJJ = null;
  373. GBLGCTJJ = (JOB_LFS_ADDITIVES)hList[szKey];
  374. if (GBLGCTJJ != null)
  375. {
  376. GBLGCTJJ.Copy(ref tmpGBLGCTJJ);
  377. }
  378. else
  379. {
  380. GBLGCTJJ = new JOB_LFS_ADDITIVES();
  381. GBLGCTJJ.Copy(ref tmpGBLGCTJJ);
  382. hList.Add(szKey, GBLGCTJJ);
  383. }
  384. }
  385. }
  386. }
  387. //缓存中没有数据移除 移除协调
  388. public void RemoveElement(ref LfsAdditive obj)
  389. {
  390. JOB_LFS_ADDITIVES tmpGBLGCTJJ = null;
  391. int Count = hList.Count;
  392. for (int i = 0; i < Count; i++)
  393. {
  394. tmpGBLGCTJJ = (JOB_LFS_ADDITIVES)hList[i];
  395. if (tmpGBLGCTJJ != null)
  396. {
  397. string szKey = tmpGBLGCTJJ.HEATPROCESSNO + tmpGBLGCTJJ.MATERIELCODE + tmpGBLGCTJJ.MATERIELTYPE + tmpGBLGCTJJ.HOPPERNUMID + tmpGBLGCTJJ.JMDATE.ToString("yyyyMMddhhmmss");
  398. JOB_LFS_ADDITIVES GBLGCTJJ = null;
  399. GBLGCTJJ = (JOB_LFS_ADDITIVES)obj.hList[szKey];
  400. if (GBLGCTJJ == null)
  401. {
  402. hList.Remove(szKey);
  403. i = i - 1;
  404. Count = Count - 1;
  405. }
  406. }
  407. }
  408. }
  409. //数据协调
  410. public void DataHarmonize(ref LfsAdditive obj)
  411. {
  412. AddElement(ref obj);
  413. RemoveElement(ref obj);
  414. }
  415. #endregion
  416. #endregion
  417. }
  418. #endregion
  419. }