FrmMakeCheck.xml 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc = "检验周期抽查">
  3. <query id = "FrmMakeCheck.doQueryData" desc = "查询抽查记录">
  4. select t.*,
  5. DECODE(T.IS_OK, '1', '√') IS_OK_DESC,
  6. DECODE(T.CHECK_TYPE, '0', '自动抽查', '1', '手动抽查') CHECK_TYPE_DESC
  7. from PIPE_CHECKCONSIGN_MAKE_CHECKS t
  8. WHERE T.CHECK_TIME = ?
  9. AND T.DEPT_ID = ?
  10. </query>
  11. <query id = "FrmMakeCheck.selectCheckNoIsOk" desc = "查询是否可以手动抽查">
  12. <![CDATA[
  13. select COUNT(1) acount
  14. from PIPE_CHECKCONSIGN_MAKE_CHECKS t
  15. WHERE T.CHECK_TIME = ?
  16. AND T.DEPT_ID = ?
  17. AND T.CHECK_NO = ?
  18. ]]>
  19. </query>
  20. <query id = "FrmMakeCheck.doQueryAuditData" desc = "查询报出的数据">
  21. select T1.CHECK_NO,
  22. T1.HEAT_NO,
  23. T1.STEEL_GRADE,
  24. T1.STEEL_NO,
  25. T1.DIMATER || '*' || T1.HEIGHT PIPE_SIZE,
  26. DECODE(T1.CRAFT_SOURCE,
  27. '0',
  28. '生产样',
  29. '1',
  30. '首日检',
  31. '2',
  32. '科研样',
  33. '3',
  34. '生产预备样',
  35. '4',
  36. '外购管委托',
  37. '5',
  38. '技术中心内部委托',
  39. '6',
  40. '委外热处理样',
  41. '7',
  42. '生产补样') CRAFT_SOURCE,
  43. DECODE(T1.ISPRODUCER, '0', '不监制', '1', '监制') ISPRODUCER,
  44. MAX(T.LAB_RECEIVE_TIME) LAB_RECEIVE_TIME,
  45. MAX(T.AUDIT_TIME) AUDIT_TIME,
  46. T1.REMARK,
  47. T1.PRODUCT_STD
  48. from PIPE_CHECKCONSIGN_DETAIL t, PIPE_CHECKCONSIGN_BASEINFO T1
  49. WHERE T.FLAG >= 4
  50. AND T.CHECK_NO = T1.CHECK_NO
  51. AND TO_CHAR(T.AUDIT_TIME, 'YYYY-MM-DD') = ?
  52. AND T.DEPT_ID = ?
  53. GROUP BY T1.CHECK_NO,
  54. T1.HEAT_NO,
  55. T1.STEEL_GRADE,
  56. T1.STEEL_NO,
  57. T1.DIMATER,
  58. T1.HEIGHT,
  59. T1.CRAFT_SOURCE,
  60. T1.ISPRODUCER,
  61. T1.REMARK,
  62. T1.PRODUCT_STD
  63. </query>
  64. <query id = "FrmMakeCheck.doQueryCheckCount" desc = "查询发出报告数和抽查报告数">
  65. select COUNT(DISTINCT T.CHECK_NO) sumCount,
  66. CEIL(COUNT(DISTINCT T.CHECK_NO) * 0.05) checkCount
  67. from PIPE_CHECKCONSIGN_DETAIL t
  68. WHERE T.FLAG >= 4
  69. AND TO_CHAR(T.AUDIT_TIME, 'YYYY-MM-DD') = ?
  70. AND T.DEPT_ID = ?
  71. </query>
  72. <query id = "FrmMakeCheck.deleteChechData" desc = "删除抽查记录">
  73. DELETE from PIPE_CHECKCONSIGN_MAKE_CHECKS t
  74. WHERE T.CHECK_TIME = ?
  75. AND T.DEPT_ID = ?
  76. </query>
  77. <query id = "FrmMakeCheck.addChechData" desc = "新增抽查记录">
  78. <![CDATA[
  79. DECLARE
  80. V_CHECK_TIME PIPE_CHECKCONSIGN_MAKE_CHECKS.CHECK_TIME%type := ?;
  81. V_DEPT_ID PIPE_CHECKCONSIGN_MAKE_CHECKS.DEPT_ID%type := ?;
  82. V_CHECK_NAME PIPE_CHECKCONSIGN_MAKE_CHECKS.CHECK_NAME%type := ?;
  83. V_COUNT PIPE_CHECKCONSIGN_BASEINFO.JG_PRINT_COUNT%type := 1;
  84. BEGIN
  85. FOR MYROW IN (select *
  86. from (select T.CHECK_NO,
  87. MAX(T.LAB_RECEIVE_TIME) LAB_RECEIVE_TIME,
  88. MAX(T.AUDIT_TIME) AUDIT_TIME
  89. from PIPE_CHECKCONSIGN_DETAIL t
  90. WHERE T.FLAG >= 4
  91. AND TO_CHAR(T.AUDIT_TIME, 'YYYY-MM-DD') =
  92. V_CHECK_TIME
  93. AND T.DEPT_ID = V_DEPT_ID
  94. GROUP BY T.CHECK_NO
  95. order by dbms_random.random)
  96. where rownum <= ?) LOOP
  97. INSERT INTO PIPE_CHECKCONSIGN_MAKE_CHECKS
  98. (SEQ,
  99. CHECK_NO,
  100. CHECK_TIME,
  101. CHECK_NAME,
  102. DEPT_ID,
  103. LAB_RECEIVE_TIME,
  104. AUDIT_TIME)
  105. VALUES
  106. (V_COUNT,
  107. MYROW.CHECK_NO,
  108. V_CHECK_TIME,
  109. V_CHECK_NAME,
  110. V_DEPT_ID,
  111. MYROW.LAB_RECEIVE_TIME,
  112. MYROW.AUDIT_TIME);
  113. V_COUNT := V_COUNT + 1;
  114. END LOOP;
  115. END;
  116. ]]>
  117. </query>
  118. <query id = "FrmMakeCheck.handCheck" desc = "手动抽查">
  119. <![CDATA[
  120. DECLARE
  121. V_CHECK_TIME PIPE_CHECKCONSIGN_MAKE_CHECKS.CHECK_TIME%type := ?;
  122. V_DEPT_ID PIPE_CHECKCONSIGN_MAKE_CHECKS.DEPT_ID%type := ?;
  123. V_CHECK_NAME PIPE_CHECKCONSIGN_MAKE_CHECKS.CHECK_NAME%type := ?;
  124. V_CHECK_NO PIPE_CHECKCONSIGN_MAKE_CHECKS.CHECK_NO%type := ?;
  125. V_COUNT PIPE_CHECKCONSIGN_BASEINFO.JG_PRINT_COUNT%type := NULL;
  126. BEGIN
  127. SELECT COUNT(1) + 1
  128. INTO V_COUNT
  129. FROM PIPE_CHECKCONSIGN_MAKE_CHECKS T
  130. WHERE T.CHECK_TIME = V_CHECK_TIME
  131. AND T.DEPT_ID = V_DEPT_ID;
  132. FOR MYROW IN (select T.CHECK_NO,
  133. MAX(T.LAB_RECEIVE_TIME) LAB_RECEIVE_TIME,
  134. MAX(T.AUDIT_TIME) AUDIT_TIME
  135. from PIPE_CHECKCONSIGN_DETAIL t
  136. WHERE T.FLAG >= 4
  137. AND TO_CHAR(T.AUDIT_TIME, 'YYYY-MM-DD') = V_CHECK_TIME
  138. AND T.DEPT_ID = V_DEPT_ID
  139. AND T.CHECK_NO = V_CHECK_NO
  140. GROUP BY T.CHECK_NO) LOOP
  141. INSERT INTO PIPE_CHECKCONSIGN_MAKE_CHECKS
  142. (SEQ,
  143. CHECK_NO,
  144. CHECK_TIME,
  145. CHECK_NAME,
  146. DEPT_ID,
  147. LAB_RECEIVE_TIME,
  148. AUDIT_TIME,
  149. CHECK_TYPE)
  150. VALUES
  151. (V_COUNT,
  152. MYROW.CHECK_NO,
  153. V_CHECK_TIME,
  154. V_CHECK_NAME,
  155. V_DEPT_ID,
  156. MYROW.LAB_RECEIVE_TIME,
  157. MYROW.AUDIT_TIME,
  158. '1');
  159. END LOOP;
  160. END;
  161. ]]>
  162. </query>
  163. </queryMap>