JdgQcmJudgeLock.xml 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc="">
  3. <query id="JdgQcmJudgeLock.QueryJudgeStoveNo" desc="查询">
  4. <![CDATA[
  5. SELECT DISTINCT JUDGE_STOVE_NO
  6. FROM (SELECT A.JUDGE_STOVE_NO
  7. FROM PLN_STEELFOR_ORD A
  8. WHERE A.JUDGE_STOVE_NO LIKE '%' || {0} || '%'
  9. UNION ALL
  10. SELECT B.FEED_HEAT_NO
  11. FROM PLN_ZY_ZG_M B
  12. WHERE B.JUDGE_STOVE_NO LIKE '%' || {0} || '%'
  13. UNION ALL
  14. SELECT B.JUDGE_STOVE_NO
  15. FROM PLN_ZY_DBK_M B
  16. WHERE B.JUDGE_STOVE_NO LIKE '%' || {0} || '%'
  17. UNION ALL
  18. SELECT B.JUDGE_STOVE_NO
  19. FROM PLN_ZY_RCL_M B
  20. WHERE B.JUDGE_STOVE_NO LIKE '%' || {0} || '%'
  21. UNION ALL
  22. SELECT B.JUDGE_STOVE_NO
  23. FROM PLN_ZY_JGX_M B
  24. WHERE B.JUDGE_STOVE_NO LIKE '%' || {0} || '%'
  25. UNION ALL
  26. SELECT B.JUDGE_STOVE_NO
  27. FROM PLN_ZY_JG_M B
  28. WHERE B.JUDGE_STOVE_NO LIKE '%' || {0} || '%')
  29. ]]>
  30. </query>
  31. <query id="JdgQcmJudgeLock.QueryJudgeStoveNoByOrderNo" desc="查询">
  32. <![CDATA[
  33. SELECT DISTINCT JUDGE_STOVE_NO
  34. FROM (SELECT A.JUDGE_STOVE_NO
  35. FROM PLN_STEELFOR_ORD A, PLN_ORDER_ZG_S C
  36. WHERE C.PRO_PLAN_ID = A.PRO_PLAN_ID
  37. AND C.GX_PLAN_NO = A.GX_PLAN_NO
  38. AND C.ORDER_NO LIKE '%' || {0} || '%'
  39. AND ({1} IS NULL OR C.ORDER_SEQ = {1})
  40. UNION ALL
  41. SELECT B.FEED_HEAT_NO
  42. FROM PLN_ZY_ZG_M B, PLN_SALEORD C
  43. WHERE B.ORD_LN_DLY_PK = C.ORD_LN_DLY_PK
  44. AND C.ORDER_NO LIKE '%' || {0} || '%'
  45. UNION ALL
  46. SELECT B.JUDGE_STOVE_NO
  47. FROM PLN_ZY_DBK_M B, PLN_SALEORD C
  48. WHERE B.ORD_LN_DLY_PK = C.ORD_LN_DLY_PK
  49. AND C.ORDER_NO LIKE '%' || {0} || '%'
  50. UNION ALL
  51. SELECT B.JUDGE_STOVE_NO
  52. FROM PLN_ZY_RCL_M B, PLN_SALEORD C
  53. WHERE B.ORD_LN_DLY_PK = C.ORD_LN_DLY_PK
  54. AND C.ORDER_NO LIKE '%' || {0} || '%'
  55. UNION ALL
  56. SELECT B.JUDGE_STOVE_NO
  57. FROM PLN_ZY_JGX_M B, PLN_SALEORD C
  58. WHERE B.ORD_LN_DLY_PK = C.ORD_LN_DLY_PK
  59. AND C.ORDER_NO LIKE '%' || {0} || '%'
  60. UNION ALL
  61. SELECT B.JUDGE_STOVE_NO
  62. FROM PLN_ZY_JG_M B, PLN_SALEORD C
  63. WHERE B.ORD_LN_DLY_PK = C.ORD_LN_DLY_PK
  64. AND C.ORDER_NO LIKE '%' || {0} || '%')
  65. ]]>
  66. </query>
  67. <query id="JdgQcmJudgeLock.QueryLg" desc="查询">
  68. <![CDATA[
  69. SELECT 'A' PROCESS_CODE,
  70. MIN(H5.PROCESS_DESC) PROCESS_DESC,
  71. F.JUDGE_STOVE_NO,
  72. SUM(1) ACT_COUNT,
  73. SUM(F.WEIGHT) ACT_WEIGHT,
  74. MIN(H.LOCK_REASON) LOCK_REASON,
  75. MIN(H.LOCK_TIME) LOCK_TIME,
  76. MIN(H2.USERNAME) LOCK_USER,
  77. MIN(H.UNLOCK_TIME) UNLOCK_TIME,
  78. MIN(H3.USERNAME) UNLOCK_USER,
  79. MIN(H.LOCK_FLAG) LOCK_FLAG,
  80. MIN(H.LOCK_PROCESS_CODE) LOCK_PROCESS_CODE,
  81. MIN(H.LOCK_ID) LOCK_ID
  82. FROM (SELECT MIN(D.JUDGE_STOVE_NO) JUDGE_STOVE_NO,
  83. MIN(D.WEIGHT) WEIGHT,
  84. LISTAGG(D.ORDER_NO || '/' || D.ORDER_SEQ, ',') WITHIN GROUP(ORDER BY D.ORDER_NO),
  85. LISTAGG(D.ORDER_NO || '/' || D.ORDER_SEQ, ',') WITHIN GROUP(ORDER BY D.ORDER_NO),
  86. MIN(D.STEELNAME) STEELNAME,
  87. MIN(D.GRADENAME) GRADENAME,
  88. MIN(D.DIAMETER) DIAMETER
  89. FROM (SELECT C.MAT_NO,
  90. C.JUDGE_STOVE_NO,
  91. MIN(C.WEIGHT) WEIGHT,
  92. A.ORDER_NO,
  93. A.ORDER_SEQ,
  94. MIN(A.STEELNAME) STEELNAME,
  95. MIN(B.GRADENAME) GRADENAME,
  96. MIN(C.DIAMETER) DIAMETER
  97. FROM PLN_ORDER_ZG_S A,
  98. PLN_STEELFOR_ORD B,
  99. STL_LG_PROGRRSS C
  100. LEFT JOIN MAT_GP_M C2
  101. ON C2.MAT_NO = C.MAT_NO
  102. AND C.MAT_NO IS NOT NULL
  103. LEFT JOIN MAT_GP_M_HISTORY C3
  104. ON C3.MAT_NO = C.MAT_NO
  105. AND C.MAT_NO IS NOT NULL
  106. LEFT JOIN PORT_MIL_BATCH_SAMPLE_RESULT C4
  107. ON C4.IS_VALID = '1'
  108. AND C4.STATUS = '0'
  109. AND C4.JUDGE_STOVE_NO LIKE C.JUDGE_STOVE_NO || '%'
  110. AND C.JUDGE_STOVE_NO IS NOT NULL, SLM_ORDER_HEAD D,
  111. SLM_ORDER_LINE E, SLM_ORDER_LINE_DELIVERY F
  112. WHERE B.JUDGE_STOVE_NO = C.JUDGE_STOVE_NO
  113. AND C.JUDGE_STOVE_NO IS NOT NULL
  114. AND B.JUDGE_STOVE_NO IS NOT NULL
  115. AND C.IS_VALID = '0'
  116. AND C.STATUS = '0'
  117. AND A.GPREQ_ID = B.PRO_PLAN_ID
  118. AND B.PRO_PLAN_ID IS NOT NULL
  119. AND A.GPREQ_ID IS NOT NULL
  120. AND ({0} IS NULL OR B.JUDGE_STOVE_NO = {0})
  121. AND A.PLN_DIVIDE_ID = '01'
  122. AND F.ORD_LN_DLY_PK = A.ORD_LN_DLY_PK
  123. AND E.ORD_LN_PK = F.ORD_LN_PK
  124. AND D.ORD_PK = E.ORD_PK
  125. AND D.ORD_PK IS NOT NULL
  126. AND E.ORD_LN_PK IS NOT NULL
  127. AND F.ORD_LN_DLY_PK IS NOT NULL
  128. AND ({1} IS NULL OR
  129. D.ORDER_NO LIKE '%' || UPPER({1}) || '%')
  130. AND ({2} IS NULL OR E.ORDER_SEQ = {2})
  131. AND ((C2.MAT_NO IS NULL OR
  132. C2.JUDGE_RESULT_CODE <> '40740701') AND
  133. (C3.MAT_NO IS NULL OR
  134. C3.JUDGE_RESULT_CODE <> '40740701') OR
  135. C4.MAT_NO IS NULL)
  136. GROUP BY C.MAT_NO, C.JUDGE_STOVE_NO, A.ORDER_NO, A.ORDER_SEQ) D
  137. GROUP BY D.MAT_NO) F
  138. LEFT JOIN QCM_JUDGE_LOCK H
  139. ON H.JUDGE_STOVE_NO = F.JUDGE_STOVE_NO
  140. AND H.PROCESS_CODE = 'A'
  141. AND F.JUDGE_STOVE_NO IS NOT NULL
  142. LEFT JOIN CORE_APP_USER H2
  143. ON H2.USERID = H.LOCK_USER_ID
  144. AND H.LOCK_USER_ID IS NOT NULL
  145. LEFT JOIN CORE_APP_USER H3
  146. ON H3.USERID = H.UNLOCK_USER_ID
  147. AND H.UNLOCK_USER_ID IS NOT NULL
  148. LEFT JOIN COM_BASE_PROCESS H4
  149. ON H4.PROCESS_CODE = H.LOCK_PROCESS_CODE
  150. AND H.LOCK_PROCESS_CODE IS NOT NULL
  151. LEFT JOIN COM_BASE_PROCESS H5
  152. ON H5.PROCESS_CODE = 'A'
  153. GROUP BY F.JUDGE_STOVE_NO
  154. ]]>
  155. </query>
  156. <query id="JdgQcmJudgeLock.QueryZg" desc="查询轧管">
  157. <![CDATA[
  158. SELECT MIN(C.ORDER_NO) || '/' || MIN(C.ORDER_SEQ) ORDER_NO,
  159. MIN(A.FEED_HEAT_NO) JUDGE_STOVE_NO,
  160. E.BATCH_NO,
  161. MIN(C.STEELNAME) STEELNAME,
  162. MIN(B.GRADENAME) GRADENAME,
  163. MIN(C.SPEC_NAME) SPEC_NAME,
  164. SUM(E.ACT_COUNT) ACT_COUNT,
  165. SUM(E.ACT_THEORY_WEIGHT) ACT_WEIGHT,
  166. 'D' PROCESS_CODE,
  167. MIN(F4.PROCESS_DESC) PROCESS_DESC,
  168. MIN(F.LOCK_REASON) LOCK_REASON,
  169. MIN(F.LOCK_PROCESS_CODE) LOCK_PROCESS_CODE,
  170. MIN(F.LOCK_FLAG) LOCK_FLAG,
  171. MIN(F2.USERNAME) LOCK_NAME,
  172. TO_CHAR(MIN(F.LOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') LOCK_TIME,
  173. MIN(F3.USERNAME) UNLOCK_NAME,
  174. TO_CHAR(MIN(F.UNLOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') UNLOCK_TIME,
  175. MIN(F.LOCK_ID) LOCK_ID
  176. FROM PLN_ORDER_ZG_S B, PLN_ZY_ZG_M A
  177. LEFT JOIN PLN_ZY_DBK_M A2
  178. ON A2.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  179. AND A2.PLANSTATUS IN ('20', '30', '40')
  180. AND A.HEAT_PLAN_NO IS NOT NULL
  181. LEFT JOIN PLN_ZY_RCL_M A3
  182. ON A3.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  183. AND A3.PLANSTATUS IN ('20', '30', '40')
  184. AND A.HEAT_PLAN_NO IS NOT NULL
  185. LEFT JOIN PLN_ZY_JGX_M A4
  186. ON A4.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  187. AND A4.PLANSTATUS IN ('20', '30', '40')
  188. AND A.HEAT_PLAN_NO IS NOT NULL
  189. LEFT JOIN PLN_ZY_JG_M A5
  190. ON A5.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  191. AND A5.PLANSTATUS IN ('20', '30', '40')
  192. AND A.HEAT_PLAN_NO IS NOT NULL
  193. LEFT JOIN QCM_JUDGE_LOCK F
  194. ON F.PROCESS_CODE = 'D'
  195. AND A.FEED_HEAT_NO IS NOT NULL
  196. AND F.JUDGE_STOVE_NO = A.FEED_HEAT_NO
  197. LEFT JOIN CORE_APP_USER F2
  198. ON F.LOCK_USER_ID IS NOT NULL
  199. AND F2.USERID = F.LOCK_USER_ID
  200. LEFT JOIN CORE_APP_USER F3
  201. ON F.UNLOCK_USER_ID IS NOT NULL
  202. AND F3.USERID = F.UNLOCK_USER_ID
  203. LEFT JOIN COM_BASE_PROCESS F4
  204. ON F4.PROCESS_CODE = 'D', PORT_MIL_BATCH_SAMPLE_RESULT E
  205. LEFT JOIN MAT_BC_M E2
  206. ON E2.MAT_NO = E.MAT_NO
  207. AND E2.PROCESS_CDOE = 'D'
  208. AND E.MAT_NO IS NOT NULL
  209. LEFT JOIN MAT_BC_BACKUP E3
  210. ON E3.MAT_NO = E.MAT_NO
  211. AND E3.PROCESS_CDOE = 'D'
  212. AND E.MAT_NO IS NOT NULL, PLN_SALEORD C
  213. WHERE (A.PRO_PLAN_ID IS NOT NULL AND B.PRO_PLAN_ID IS NOT NULL AND
  214. A.PRO_PLAN_ID = B.PRO_PLAN_ID)
  215. AND (A.GX_PLAN_NO IS NOT NULL AND B.GX_PLAN_NO IS NOT NULL AND
  216. A.GX_PLAN_NO = B.GX_PLAN_NO)
  217. AND (C.ORD_LN_DLY_PK IS NOT NULL AND C.ORD_LN_DLY_PK = B.ORD_LN_DLY_PK)
  218. AND E.JUDGE_STOVE_NO LIKE A.FEED_HEAT_NO || '%'
  219. AND E.JUDGE_STOVE_NO IS NOT NULL
  220. AND A.FEED_HEAT_NO IS NOT NULL
  221. AND E.IS_VALID = '1'
  222. AND (E.STATUS = '0' or E.STATUS = '3')
  223. AND ({0} IS NULL OR A.FEED_HEAT_NO = {0})
  224. AND ({1} IS NULL OR
  225. C.ORDER_NO IS NOT NULL AND C.ORDER_NO LIKE '%' || UPPER({1}) || '%')
  226. AND ({2} IS NULL OR C.ORDER_SEQ IS NOT NULL AND C.ORDER_SEQ = {2})
  227. AND ((E2.MAT_NO IS NULL OR
  228. E2.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) AND
  229. (E3.MAT_NO IS NULL OR
  230. E3.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) OR
  231. A2.HEAT_PLAN_NO IS NOT NULL AND A3.HEAT_PLAN_NO IS NOT NULL AND
  232. A4.HEAT_PLAN_NO IS NOT NULL AND A5.HEAT_PLAN_NO IS NOT NULL)
  233. GROUP BY E.JUDGE_STOVE_NO, E.BATCH_NO
  234. ]]>
  235. </query>
  236. <query id="JdgQcmJudgeLock.QueryDbk" desc="查询热处理">
  237. <![CDATA[
  238. SELECT MIN(C.ORDER_NO) || '/' || MIN(C.ORDER_SEQ) ORDER_NO,
  239. MIN(A.JUDGE_STOVE_NO) JUDGE_STOVE_NO,
  240. E.PHY_BATCH_NO BATCH_NO,
  241. MIN(C.STEELNAME) STEELNAME,
  242. MIN(B.GRADENAME) GRADENAME,
  243. MIN(C.SPEC_NAME) SPEC_NAME,
  244. SUM(E.ACT_COUNT) ACT_COUNT,
  245. SUM(E.ACT_THEORY_WEIGHT) ACT_WEIGHT,
  246. 'E' PROCESS_CODE,
  247. MIN(F4.PROCESS_DESC) PROCESS_DESC,
  248. MIN(F.LOCK_REASON) LOCK_REASON,
  249. MIN(F.LOCK_PROCESS_CODE) LOCK_PROCESS_CODE,
  250. MIN(F.LOCK_FLAG) LOCK_FLAG,
  251. MIN(F2.USERNAME) LOCK_NAME,
  252. TO_CHAR(MIN(F.LOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') LOCK_TIME,
  253. MIN(F3.USERNAME) UNLOCK_NAME,
  254. TO_CHAR(MIN(F.UNLOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') UNLOCK_TIME,
  255. MIN(F.LOCK_ID) LOCK_ID
  256. FROM PLN_ORDER_DBK_S B, PLN_ZY_DBK_M A
  257. LEFT JOIN PLN_ZY_RCL_M A3
  258. ON A3.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  259. AND A3.PLANSTATUS IN ('20', '30', '40')
  260. AND A.HEAT_PLAN_NO IS NOT NULL
  261. LEFT JOIN PLN_ZY_JGX_M A4
  262. ON A4.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  263. AND A4.PLANSTATUS IN ('20', '30', '40')
  264. AND A.HEAT_PLAN_NO IS NOT NULL
  265. LEFT JOIN PLN_ZY_JG_M A5
  266. ON A5.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  267. AND A5.PLANSTATUS IN ('20', '30', '40')
  268. AND A.HEAT_PLAN_NO IS NOT NULL, PORT_VRP_BATCH_SAMPLE_RESULT E
  269. LEFT JOIN MAT_BC_M E2
  270. ON E2.MAT_NO = E.MAT_NO
  271. AND E2.PROCESS_CDOE = 'E'
  272. AND E.MAT_NO IS NOT NULL
  273. LEFT JOIN MAT_BC_BACKUP E3
  274. ON E3.MAT_NO = E.MAT_NO
  275. AND E3.PROCESS_CDOE = 'E'
  276. AND E.MAT_NO IS NOT NULL
  277. LEFT JOIN QCM_JUDGE_LOCK F
  278. ON F.PROCESS_CODE = 'E'
  279. AND E.JUDGE_STOVE_NO IS NOT NULL
  280. AND F.JUDGE_STOVE_NO = E.JUDGE_STOVE_NO
  281. AND F.BATCH_NO = E.PHY_BATCH_NO
  282. LEFT JOIN CORE_APP_USER F2
  283. ON F.LOCK_USER_ID IS NOT NULL
  284. AND F2.USERID = F.LOCK_USER_ID
  285. LEFT JOIN CORE_APP_USER F3
  286. ON F.UNLOCK_USER_ID IS NOT NULL
  287. AND F3.USERID = F.UNLOCK_USER_ID
  288. LEFT JOIN COM_BASE_PROCESS F4
  289. ON F4.PROCESS_CODE = 'E', PLN_SALEORD C
  290. WHERE (A.PRO_PLAN_ID IS NOT NULL AND B.PRO_PLAN_ID IS NOT NULL AND
  291. A.PRO_PLAN_ID = B.PRO_PLAN_ID)
  292. AND (A.GX_PLAN_NO IS NOT NULL AND B.GX_PLAN_NO IS NOT NULL AND
  293. A.GX_PLAN_NO = B.GX_PLAN_NO)
  294. AND (C.ORD_LN_DLY_PK IS NOT NULL AND C.ORD_LN_DLY_PK = B.ORD_LN_DLY_PK)
  295. AND E.JUDGE_STOVE_NO = A.JUDGE_STOVE_NO
  296. AND E.JUDGE_STOVE_NO IS NOT NULL
  297. AND A.JUDGE_STOVE_NO IS NOT NULL
  298. AND E.MAT_STATUS IN ('00', '20')
  299. AND ({0} IS NULL OR A.JUDGE_STOVE_NO = {0})
  300. AND ({1} IS NULL OR
  301. C.ORDER_NO IS NOT NULL AND C.ORDER_NO LIKE '%' || UPPER({1}) || '%')
  302. AND ({2} IS NULL OR C.ORDER_SEQ IS NOT NULL AND C.ORDER_SEQ = {2})
  303. AND ((E2.MAT_NO IS NULL OR
  304. E2.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) AND
  305. (E3.MAT_NO IS NULL OR
  306. E3.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) OR
  307. A3.HEAT_PLAN_NO IS NOT NULL AND A4.HEAT_PLAN_NO IS NOT NULL AND
  308. A5.HEAT_PLAN_NO IS NOT NULL)
  309. GROUP BY E.JUDGE_STOVE_NO, E.PHY_BATCH_NO
  310. ]]>
  311. </query>
  312. <query id="JdgQcmJudgeLock.QueryRcl" desc="查询热处理">
  313. <![CDATA[
  314. SELECT MIN(C.ORDER_NO) || '/' || MIN(C.ORDER_SEQ) ORDER_NO,
  315. MIN(A.JUDGE_STOVE_NO) JUDGE_STOVE_NO,
  316. E.PHY_BATCH_NO BATCH_NO,
  317. MIN(C.STEELNAME) STEELNAME,
  318. MIN(B.GRADENAME) GRADENAME,
  319. MIN(C.SPEC_NAME) SPEC_NAME,
  320. SUM(E.ACT_COUNT) ACT_COUNT,
  321. SUM(E.ACT_THEORY_WEIGHT) ACT_WEIGHT,
  322. 'F' PROCESS_CODE,
  323. MIN(F4.PROCESS_DESC) PROCESS_DESC,
  324. MIN(F.LOCK_REASON) LOCK_REASON,
  325. MIN(F.LOCK_PROCESS_CODE) LOCK_PROCESS_CODE,
  326. MIN(F.LOCK_FLAG) LOCK_FLAG,
  327. MIN(F2.USERNAME) LOCK_NAME,
  328. TO_CHAR(MIN(F.LOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') LOCK_TIME,
  329. MIN(F3.USERNAME) UNLOCK_NAME,
  330. TO_CHAR(MIN(F.UNLOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') UNLOCK_TIME,
  331. MIN(F.LOCK_ID) LOCK_ID
  332. FROM PLN_ORDER_RCL_S B, PLN_ZY_RCL_M A
  333. LEFT JOIN PLN_ZY_JGX_M A4
  334. ON A4.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  335. AND A4.PLANSTATUS IN ('20', '30', '40')
  336. AND A.HEAT_PLAN_NO IS NOT NULL
  337. LEFT JOIN PLN_ZY_JG_M A5
  338. ON A5.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  339. AND A5.PLANSTATUS IN ('20', '30', '40')
  340. AND A.HEAT_PLAN_NO IS NOT NULL, PORT_HTT_BATCH_SAMPLE_RESULT E
  341. LEFT JOIN MAT_BC_M E2
  342. ON E2.MAT_NO = E.MAT_NO
  343. AND E2.PROCESS_CDOE = 'F'
  344. AND E.MAT_NO IS NOT NULL
  345. LEFT JOIN MAT_BC_BACKUP E3
  346. ON E3.MAT_NO = E.MAT_NO
  347. AND E3.PROCESS_CDOE = 'F'
  348. AND E.MAT_NO IS NOT NULL
  349. LEFT JOIN QCM_JUDGE_LOCK F
  350. ON F.PROCESS_CODE = 'F'
  351. AND (E.JUDGE_STOVE_NO IS NOT NULL AND
  352. F.JUDGE_STOVE_NO = E.JUDGE_STOVE_NO)
  353. AND F.BATCH_NO = E.PHY_BATCH_NO
  354. LEFT JOIN CORE_APP_USER F2
  355. ON (F.LOCK_USER_ID IS NOT NULL AND F2.USERID = F.LOCK_USER_ID)
  356. LEFT JOIN CORE_APP_USER F3
  357. ON (F.UNLOCK_USER_ID IS NOT NULL AND F3.USERID = F.UNLOCK_USER_ID)
  358. LEFT JOIN COM_BASE_PROCESS F4
  359. ON F4.PROCESS_CODE = 'F', PLN_SALEORD C
  360. WHERE (A.PRO_PLAN_ID IS NOT NULL AND B.PRO_PLAN_ID IS NOT NULL AND
  361. A.PRO_PLAN_ID = B.PRO_PLAN_ID)
  362. AND (A.GX_PLAN_NO IS NOT NULL AND B.GX_PLAN_NO IS NOT NULL AND
  363. A.GX_PLAN_NO = B.GX_PLAN_NO)
  364. AND (C.ORD_LN_DLY_PK IS NOT NULL AND C.ORD_LN_DLY_PK = B.ORD_LN_DLY_PK)
  365. AND E.JUDGE_STOVE_NO = A.JUDGE_STOVE_NO
  366. AND E.JUDGE_STOVE_NO IS NOT NULL
  367. AND A.JUDGE_STOVE_NO IS NOT NULL
  368. AND E.MAT_STATUS IN ('00', '20')
  369. AND ({0} IS NULL OR A.JUDGE_STOVE_NO = {0})
  370. AND ({1} IS NULL OR
  371. C.ORDER_NO IS NOT NULL AND C.ORDER_NO LIKE '%' || UPPER({1}) || '%')
  372. AND ({2} IS NULL OR C.ORDER_SEQ IS NOT NULL AND C.ORDER_SEQ = {2})
  373. AND ((E2.MAT_NO IS NULL OR
  374. E2.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) AND
  375. (E3.MAT_NO IS NULL OR
  376. E3.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) OR
  377. A4.HEAT_PLAN_NO IS NOT NULL AND
  378. A5.HEAT_PLAN_NO IS NOT NULL)
  379. GROUP BY E.JUDGE_STOVE_NO, E.PHY_BATCH_NO
  380. ]]>
  381. </query>
  382. <query id="JdgQcmJudgeLock.QueryJgx" desc="查询加工线">
  383. <![CDATA[
  384. SELECT MIN(C.ORDER_NO) || '/' || MIN(C.ORDER_SEQ) ORDER_NO,
  385. MIN(A.JUDGE_STOVE_NO) JUDGE_STOVE_NO,
  386. E.PHY_BATCH_NO BATCH_NO,
  387. MIN(C.STEELNAME) STEELNAME,
  388. MIN(A.GRADENAME) GRADENAME,
  389. MIN(C.SPEC_NAME) SPEC_NAME,
  390. SUM(E.ACT_COUNT) ACT_COUNT,
  391. SUM(E.ACT_THEORY_WEIGHT) ACT_WEIGHT,
  392. 'G' PROCESS_CODE,
  393. MIN(F4.PROCESS_DESC) PROCESS_DESC,
  394. MIN(F.LOCK_REASON) LOCK_REASON,
  395. MIN(F.LOCK_PROCESS_CODE) LOCK_PROCESS_CODE,
  396. MIN(F.LOCK_FLAG) LOCK_FLAG,
  397. MIN(F2.USERNAME) LOCK_NAME,
  398. TO_CHAR(MIN(F.LOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') LOCK_TIME,
  399. MIN(F3.USERNAME) UNLOCK_NAME,
  400. TO_CHAR(MIN(F.UNLOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') UNLOCK_TIME,
  401. MIN(F.LOCK_ID) LOCK_ID
  402. FROM PLN_ORDER_JGX_S B, PLN_ZY_JGX_M A
  403. LEFT JOIN PLN_ZY_JG_M A5
  404. ON A5.UPPER_HEATPLAN_ID = A.HEAT_PLAN_NO
  405. AND A5.PLANSTATUS IN ('20', '30', '40')
  406. AND A.HEAT_PLAN_NO IS NOT NULL, PORT_MCH_BATCH_SAMPLE_RESULT E
  407. LEFT JOIN MAT_BC_M E2
  408. ON E2.MAT_NO = E.MAT_NO
  409. AND E2.PROCESS_CDOE = 'G'
  410. AND E.MAT_NO IS NOT NULL
  411. LEFT JOIN MAT_BC_BACKUP E3
  412. ON E3.MAT_NO = E.MAT_NO
  413. AND E3.PROCESS_CDOE = 'G'
  414. AND E.MAT_NO IS NOT NULL
  415. LEFT JOIN QCM_JUDGE_LOCK F
  416. ON F.PROCESS_CODE = 'G'
  417. AND (E.JUDGE_STOVE_NO IS NOT NULL AND
  418. F.JUDGE_STOVE_NO = E.JUDGE_STOVE_NO)
  419. AND F.BATCH_NO = E.PHY_BATCH_NO
  420. LEFT JOIN CORE_APP_USER F2
  421. ON (F.LOCK_USER_ID IS NOT NULL AND F2.USERID = F.LOCK_USER_ID)
  422. LEFT JOIN CORE_APP_USER F3
  423. ON (F.UNLOCK_USER_ID IS NOT NULL AND F3.USERID = F.UNLOCK_USER_ID)
  424. LEFT JOIN COM_BASE_PROCESS F4
  425. ON F4.PROCESS_CODE = 'G', PLN_SALEORD C
  426. WHERE (A.PRO_PLAN_ID IS NOT NULL AND B.PRO_PLAN_ID IS NOT NULL AND
  427. A.PRO_PLAN_ID = B.PRO_PLAN_ID)
  428. AND (A.GX_PLAN_NO IS NOT NULL AND B.GX_PLAN_NO IS NOT NULL AND
  429. A.GX_PLAN_NO = B.GX_PLAN_NO)
  430. AND (C.ORD_LN_DLY_PK IS NOT NULL AND C.ORD_LN_DLY_PK = B.ORD_LN_DLY_PK)
  431. AND E.JUDGE_STOVE_NO = A.JUDGE_STOVE_NO
  432. AND E.JUDGE_STOVE_NO IS NOT NULL
  433. AND A.JUDGE_STOVE_NO IS NOT NULL
  434. AND E.MAT_STATUS IN ('00', '20')
  435. AND E.VALIDFLAG = '1'
  436. AND ({0} IS NULL OR A.JUDGE_STOVE_NO = {0})
  437. AND ({1} IS NULL OR
  438. C.ORDER_NO IS NOT NULL AND C.ORDER_NO LIKE '%' || UPPER({1}) || '%')
  439. AND ({2} IS NULL OR C.ORDER_SEQ IS NOT NULL AND C.ORDER_SEQ = {2})
  440. AND ((E2.MAT_NO IS NULL OR
  441. E2.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) AND
  442. (E3.MAT_NO IS NULL OR
  443. E3.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) OR
  444. A5.HEAT_PLAN_NO IS NOT NULL)
  445. GROUP BY E.JUDGE_STOVE_NO, E.PHY_BATCH_NO
  446. ]]>
  447. </query>
  448. <query id="JdgQcmJudgeLock.QueryJg" desc="查询接箍线">
  449. <![CDATA[
  450. SELECT MIN(C.ORDER_NO) || '/' || MIN(C.ORDER_SEQ) ORDER_NO,
  451. MIN(A.JUDGE_STOVE_NO) JUDGE_STOVE_NO,
  452. E.BATCH_NO,
  453. MIN(C.STEELNAME) STEELNAME,
  454. MIN(A.GRADENAME) GRADENAME,
  455. MIN(C.SPEC_NAME) SPEC_NAME,
  456. SUM(E.ACT_COUNT) ACT_COUNT,
  457. SUM(E.ACT_THEORY_WEIGHT) ACT_WEIGHT,
  458. 'H' PROCESS_CODE,
  459. MIN(F4.PROCESS_DESC) PROCESS_DESC,
  460. MIN(F.LOCK_REASON) LOCK_REASON,
  461. MIN(F.LOCK_PROCESS_CODE) LOCK_PROCESS_CODE,
  462. MIN(F.LOCK_FLAG) LOCK_FLAG,
  463. MIN(F2.USERNAME) LOCK_NAME,
  464. TO_CHAR(MIN(F.LOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') LOCK_TIME,
  465. MIN(F3.USERNAME) UNLOCK_NAME,
  466. TO_CHAR(MIN(F.UNLOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') UNLOCK_TIME,
  467. MIN(F.LOCK_ID) LOCK_ID
  468. FROM PLN_GX_JG_PROP_S B, PLN_ZY_JG_M A
  469. LEFT JOIN QCM_JUDGE_LOCK F
  470. ON F.PROCESS_CODE = 'H'
  471. AND (A.JUDGE_STOVE_NO IS NOT NULL AND
  472. F.JUDGE_STOVE_NO = A.JUDGE_STOVE_NO)
  473. LEFT JOIN CORE_APP_USER F2
  474. ON (F.LOCK_USER_ID IS NOT NULL AND F2.USERID = F.LOCK_USER_ID)
  475. LEFT JOIN CORE_APP_USER F3
  476. ON (F.UNLOCK_USER_ID IS NOT NULL AND F3.USERID = F.UNLOCK_USER_ID)
  477. LEFT JOIN COM_BASE_PROCESS F4
  478. ON F4.PROCESS_CODE = 'H', PORT_MCH_BATCH_SAMPLE_RESULT E
  479. LEFT JOIN MAT_BC_M E2
  480. ON E2.MAT_NO = E.MAT_NO
  481. AND E2.PROCESS_CDOE = 'G'
  482. AND E.MAT_NO IS NOT NULL
  483. LEFT JOIN MAT_BC_BACKUP E3
  484. ON E3.MAT_NO = E.MAT_NO
  485. AND E3.PROCESS_CDOE = 'G'
  486. AND E.MAT_NO IS NOT NULL, PLN_SALEORD C
  487. WHERE (A.PRO_PLAN_ID IS NOT NULL AND B.PRO_PLAN_ID IS NOT NULL AND
  488. A.PRO_PLAN_ID = B.PRO_PLAN_ID)
  489. AND (A.GX_PLAN_NO IS NOT NULL AND B.GX_PLAN_NO IS NOT NULL AND
  490. A.GX_PLAN_NO = B.GX_PLAN_NO)
  491. AND (C.ORD_LN_DLY_PK IS NOT NULL AND C.ORD_LN_DLY_PK = B.ORD_LN_DLY_PK)
  492. AND E.JUDGE_STOVE_NO = A.JUDGE_STOVE_NO
  493. AND E.JUDGE_STOVE_NO IS NOT NULL
  494. AND A.JUDGE_STOVE_NO IS NOT NULL
  495. AND E.MAT_STATUS IN ('00', '20')
  496. AND ({0} IS NULL OR A.JUDGE_STOVE_NO = {0})
  497. AND ({1} IS NULL OR
  498. C.ORDER_NO IS NOT NULL AND C.ORDER_NO LIKE '%' || UPPER({1}) || '%')
  499. AND ({2} IS NULL OR C.ORDER_SEQ IS NOT NULL AND C.ORDER_SEQ = {2})
  500. AND ((E2.MAT_NO IS NULL OR
  501. E2.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')) AND
  502. (E3.MAT_NO IS NULL OR
  503. E3.JUDGE_RESULT_CODE NOT IN ('40740701', '40740705')))
  504. GROUP BY E.JUDGE_STOVE_NO, E.BATCH_NO
  505. ]]>
  506. </query>
  507. <query id="JdgQcmJudgeLock.QueryZc" desc="查询成品">
  508. <![CDATA[
  509. SELECT MIN(A5.ORDER_NO) || '/' || MIN(A4.ORDER_SEQ) ORDER_NO,
  510. MIN(A.JUDGE_STOVE_NO) JUDGE_STOVE_NO,
  511. A.BATCH_NO,
  512. MIN(A.STEELNAME) STEELNAME,
  513. MIN(A.GRADENAME) GRADENAME,
  514. MIN(A.SPEC_NAME) SPEC_NAME,
  515. SUM(A.ACT_COUNT) ACT_COUNT,
  516. SUM(A.ACT_WEIGHT) ACT_WEIGHT,
  517. 'ZC' PROCESS_CODE,
  518. '成品' PROCESS_DESC,
  519. MIN(F.LOCK_REASON) LOCK_REASON,
  520. MIN(F.LOCK_PROCESS_CODE) LOCK_PROCESS_CODE,
  521. MIN(F.LOCK_FLAG) LOCK_FLAG,
  522. MIN(F2.USERNAME) LOCK_NAME,
  523. TO_CHAR(MIN(F.LOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') LOCK_TIME,
  524. MIN(F3.USERNAME) UNLOCK_NAME,
  525. TO_CHAR(MIN(F.UNLOCK_TIME), 'YYYY-MM-DD HH24:MI:SS') UNLOCK_TIME,
  526. MIN(F.LOCK_ID) LOCK_ID
  527. FROM QCM_ZG_JUGDE_APPLY A
  528. LEFT JOIN SLM_ORDER_LINE_DELIVERY A3
  529. ON A3.ORD_LN_DLY_PK = A.ORD_LN_DLY_PK
  530. AND A.ORD_LN_DLY_PK IS NOT NULL
  531. LEFT JOIN SLM_ORDER_LINE A4
  532. ON A4.ORD_LN_PK = A3.ORD_LN_PK
  533. AND A3.ORD_LN_PK IS NOT NULL
  534. LEFT JOIN SLM_ORDER_HEAD A5
  535. ON A5.ORD_PK = A4.ORD_PK
  536. AND A4.ORD_PK IS NOT NULL
  537. LEFT JOIN QCM_JUDGE_LOCK F
  538. ON F.PROCESS_CODE = 'ZC'
  539. AND F.JUDGE_STOVE_NO = A.JUDGE_STOVE_NO
  540. AND F.BATCH_NO = A.BATCH_NO
  541. AND A.JUDGE_STOVE_NO IS NOT NULL
  542. AND A.BATCH_NO IS NOT NULL
  543. LEFT JOIN CORE_APP_USER F2
  544. ON F2.USERID = F.LOCK_USER_ID
  545. AND F.LOCK_USER_ID IS NOT NULL
  546. LEFT JOIN CORE_APP_USER F3
  547. ON F3.USERID = F.UNLOCK_USER_ID
  548. AND F.UNLOCK_USER_ID IS NOT NULL
  549. LEFT JOIN COM_BASE_PROCESS F4
  550. ON F4.PROCESS_CODE = A.PROCESS_CODE
  551. AND A.PROCESS_CODE IS NOT NULL
  552. WHERE A.TARGET = 'A'
  553. AND (A.JUDGE_RESULT_CODE = '40740701' AND A.JUDGE_TOLRESULT_CODE IS NULL OR
  554. A.JUDGE_TOLRESULT_CODE <> '40740701')
  555. AND ({0} IS NULL OR A.JUDGE_STOVE_NO = {0})
  556. AND ({1} IS NULL OR A3.ORD_LN_DLY_PK IS NOT NULL AND
  557. A5.ORDER_NO LIKE '%' || UPPER({1}) || '%')
  558. AND ({2} IS NULL OR A3.ORD_LN_DLY_PK IS NOT NULL AND A4.ORDER_SEQ = {2})
  559. GROUP BY A.JUDGE_STOVE_NO, A.BATCH_NO
  560. ]]>
  561. </query>
  562. <query id="JdgQcmJudgeLock.insert" desc="新增">
  563. <![CDATA[
  564. INSERT INTO QCM_JUDGE_LOCK
  565. (LOCK_ID,
  566. PROCESS_CODE,
  567. JUDGE_STOVE_NO,
  568. LOCK_REASON,
  569. LOCK_TIME,
  570. LOCK_USER_ID,
  571. LOCK_PROCESS_CODE,
  572. BATCH_NO,
  573. LOCK_FLAG,
  574. ORDER_NO,
  575. STEELNAME,
  576. GRADENAME,
  577. SPEC_NAME,
  578. ACT_COUNT,
  579. ACT_WEIGHT)
  580. VALUES
  581. ((SELECT NVL(MAX(A.LOCK_ID), 0) + 1 FROM QCM_JUDGE_LOCK A),
  582. '#PROCESS_CODE#',
  583. '#JUDGE_STOVE_NO#',
  584. '#LOCK_REASON#',
  585. SYSDATE,
  586. '#LOCK_USER_ID#',
  587. '#LOCK_PROCESS_CODE#',
  588. '#BATCH_NO#',
  589. '1',
  590. '#ORDER_NO#',
  591. '#STEELNAME#',
  592. '#GRADENAME#',
  593. '#SPEC_NAME#',
  594. '#ACT_COUNT#',
  595. '#ACT_WEIGHT#')
  596. ]]>
  597. </query>
  598. <query id="JdgQcmJudgeLock.Lock" desc="锁定">
  599. <![CDATA[
  600. UPDATE QCM_JUDGE_LOCK T
  601. SET T.LOCK_REASON = '#LOCK_REASON#',
  602. T.LOCK_TIME = SYSDATE,
  603. T.LOCK_USER_ID = '#LOCK_USER_ID#',
  604. T.LOCK_PROCESS_CODE = '#LOCK_PROCESS_CODE#',
  605. T.LOCK_FLAG = '1',
  606. T.ORDER_NO = '#ORDER_NO#',
  607. T.STEELNAME = '#STEELNAME#',
  608. T.GRADENAME = '#GRADENAME#',
  609. T.SPEC_NAME = '#SPEC_NAME#',
  610. T.ACT_COUNT = '#ACT_COUNT#',
  611. T.ACT_WEIGHT = '#ACT_WEIGHT#'
  612. WHERE T.LOCK_ID = '#LOCK_ID#'
  613. ]]>
  614. </query>
  615. <query id="JdgQcmJudgeLock.unlock" desc="解锁">
  616. <![CDATA[
  617. UPDATE QCM_JUDGE_LOCK T
  618. SET T.UNLOCK_TIME = SYSDATE,
  619. T.UNLOCK_USER_ID = '#UNLOCK_USER_ID#',
  620. T.LOCK_FLAG = '0'
  621. WHERE T.LOCK_ID = '#LOCK_ID#'
  622. ]]>
  623. </query>
  624. <query id="JdgQcmJudgeLock.getLockInfo" desc="查询">
  625. <![CDATA[
  626. SELECT T.*, A.USERNAME LOCK_NAME
  627. FROM QCM_JUDGE_LOCK T
  628. LEFT JOIN CORE_APP_USER A
  629. ON A.USERID = T.LOCK_USER_ID
  630. WHERE T.JUDGE_STOVE_NO = {0}
  631. AND (T.BATCH_NO IS NULL OR T.BATCH_NO = {1})
  632. AND T.PROCESS_CODE = {2}
  633. AND T.LOCK_PROCESS_CODE = {3}
  634. AND T.LOCK_FLAG = '1'
  635. ]]>
  636. </query>
  637. <query id="JdgQcmJudgeLock.getLockInfo1" desc="查询">
  638. <![CDATA[
  639. SELECT T.*, A.USERNAME LOCK_NAME
  640. FROM QCM_JUDGE_LOCK T
  641. LEFT JOIN CORE_APP_USER A
  642. ON A.USERID = T.LOCK_USER_ID
  643. WHERE T.JUDGE_STOVE_NO = {0}
  644. --AND (T.BATCH_NO IS NULL OR T.BATCH_NO = {1})
  645. AND T.LOCK_PROCESS_CODE = {1}
  646. AND T.LOCK_FLAG = '1'
  647. ]]>
  648. </query>
  649. <query id="JdgQcmJudgeLock.getLockRecord" desc="查询">
  650. <![CDATA[
  651. SELECT DECODE(T.PROCESS_CODE, 'ZC', '成品', T2.PROCESS_DESC) PROCESS_DESC,
  652. T.JUDGE_STOVE_NO,
  653. T.BATCH_NO,
  654. T.LOCK_FLAG,
  655. T.LOCK_REASON,
  656. TO_CHAR(T.LOCK_TIME, 'YYYY-MM-DD HH24:MI:SS') LOCK_TIME,
  657. T4.USERNAME LOCK_USER,
  658. TO_CHAR(T.UNLOCK_TIME, 'YYYY-MM-DD HH24:MI:SS') UNLOCK_TIME,
  659. T5.USERNAME UNLOCK_USER,
  660. DECODE(T.LOCK_PROCESS_CODE, 'ZC', '成品', T3.PROCESS_DESC) LOCK_PROCESS_DESC,
  661. T.ORDER_NO,
  662. T.STEELNAME,
  663. T.GRADENAME,
  664. T.SPEC_NAME,
  665. T.ACT_COUNT,
  666. T.ACT_WEIGHT,
  667. T.LOCK_ID
  668. FROM QCM_JUDGE_LOCK T
  669. LEFT JOIN COM_BASE_PROCESS T2
  670. ON T2.PROCESS_CODE = T.PROCESS_CODE
  671. LEFT JOIN COM_BASE_PROCESS T3
  672. ON T3.PROCESS_CODE = T.LOCK_PROCESS_CODE
  673. LEFT JOIN CORE.CORE_APP_USER T4
  674. ON T4.USERID = T.LOCK_USER_ID
  675. LEFT JOIN CORE.CORE_APP_USER T5
  676. ON T5.USERID = T.UNLOCK_USER_ID
  677. WHERE ({0} IS NULL OR T.JUDGE_STOVE_NO LIKE '%' || {0} || '%')
  678. AND ({1} IS NULL OR T.LOCK_TIME >= TO_DATE({1}, 'YYYY-MM-DD HH24:MI:SS'))
  679. AND ({1} IS NULL OR T.LOCK_TIME <= TO_DATE({2}, 'YYYY-MM-DD HH24:MI:SS'))
  680. AND ({3} IS NULL OR T4.USERNAME = {3})
  681. AND ({4} IS NULL OR T.ORDER_NO LIKE '%' || {4} || '%')
  682. AND ({5} IS NULL OR T.LOCK_FLAG = {5})
  683. ORDER BY T.LOCK_TIME DESC, T.ORDER_NO, T.PROCESS_CODE, T.JUDGE_STOVE_NO, T.BATCH_NO
  684. ]]>
  685. </query>
  686. </queryMap>