application-pg-query.yml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. mq:
  2. manifest:
  3. header:
  4. insert: >
  5. INSERT INTO TXN_MQ_MANIFEST_HEADER
  6. (
  7. HEADER_ID, TRANSACTION_ID, FILE_COUNT, NOTIFICATION_SENT, TAIL_RECEIVED, CATEGORY, UPLOAD_BY, UPLOAD_DATETIME
  8. )
  9. VALUES (
  10. NEXTVAL('MQ_MANIFEST_HEADER_SEQ'), :transactionID, :fileCount, 'N', 'N', :category, :uploadedBy, :uploadDateTime
  11. )
  12. query: >
  13. SELECT HEADER_ID AS headerID, TRANSACTION_ID AS transactionID, FILE_COUNT AS fileCount,
  14. CATEGORY AS category, NOTIFICATION_SENT AS notificationSent, NOTIFICATION_DATETIME AS notificationDateTime,
  15. TAIL_RECEIVED AS tailReceived, UPLOAD_BY AS uploadedBy, UPLOAD_DATETIME AS UploadDateTime
  16. FROM TXN_MQ_MANIFEST_HEADER
  17. WHERE HEADER_ID = :headerID
  18. count: >
  19. SELECT COUNT(*) FROM TXN_MQ_MANIFEST_HEADER WHERE TAIL_RECEIVED = 'N' AND HEADER_ID = :headerID
  20. trailer:
  21. update: >
  22. UPDATE TXN_MQ_MANIFEST_HEADER SET TAIL_RECEIVED = 'Y' WHERE HEADER_ID = :headerID
  23. file:
  24. insert: >
  25. INSERT INTO TXN_MQ_MANIFEST_FILE (file_id, header_id, transaction_id, filename, filetype, filesize, checksum, upload_datetime)
  26. VALUES (
  27. NEXTVAL('MQ_MANIFEST_FILE_SEQ'), :headerID, :transactionID, :fileName, :fileType, :fileSize, :checksum, :uploadDateTime
  28. )
  29. status: >
  30. SELECT FILE_ID AS fileID,
  31. HEADER_ID AS headerID,
  32. TRANSACTION_ID AS transactionID,
  33. FILENAME,
  34. PROCESS_FLAG AS processFlag,
  35. STATUS,
  36. ERROR_DETAILS AS errorDetails
  37. FROM TXN_MQ_MANIFEST_FILE
  38. WHERE HEADER_ID = :headerID
  39. AND PROCESS_FLAG = 'Y'
  40. query: >
  41. SELECT A.FILE_ID as fileID,
  42. A.HEADER_ID AS headerID,
  43. A.TRANSACTION_ID AS transactionID,
  44. A.FILENAME,
  45. A.FILETYPE,
  46. A.FILESIZE,
  47. A.CHECKSUM,
  48. A.UPLOAD_DATETIME AS uploadDateTime,
  49. A.PROCESS_FLAG AS processFlag,
  50. A.STATUS,
  51. A.ERROR_DETAILS AS errorDetails
  52. FROM TXN_MQ_MANIFEST_FILE A INNER JOIN TXN_MQ_MANIFEST_HEADER B ON A.HEADER_ID = B.HEADER_ID
  53. WHERE B.HEADER_ID = :headerID
  54. unprocessed: >
  55. SELECT A.FILE_COUNT - COUNT(B.HEADER_ID) AS UNPROCESSED_COUNT
  56. FROM TXN_MQ_MANIFEST_HEADER A
  57. INNER JOIN TXN_MQ_MANIFEST_FILE B ON A.HEADER_ID = B.HEADER_ID
  58. WHERE A.HEADER_ID = :headerID
  59. GROUP BY A.HEADER_ID
  60. status: >
  61. UPDATE TXN_MQ_MANIFEST_FILE SET PROCESS_FLAG = 'Y', STATUS = :status, ERROR_DETAILS = :errorDetail, PROCESS_DATETIME = :processDateTime
  62. WHERE FILE_ID = :fileID
  63. upload:
  64. status: >
  65. select count(*) from txn_mq_manifest_header h
  66. where
  67. file_count=(
  68. select count(*) from txn_mq_manifest_file
  69. where header_id=h.header_id and process_flag='Y')
  70. and header_id=:headerID
  71. report: >
  72. select h.header_id as headerID, h.upload_by as uploadedBy, h.upload_datetime as uploadDateTime,
  73. sum(case when status='ACCEPTED' then 1 else 0 end) as acceptedFileCount,
  74. sum(case when status='REJECTED' then 1 else 0 end) as rejectedFileCount
  75. from
  76. txn_mq_manifest_header h, txn_mq_manifest_file f
  77. where
  78. f.header_id = h.header_id and h.header_id=:headerID
  79. GROUP BY h.header_id, h.upload_datetime
  80. notif.status: >
  81. UPDATE TXN_MQ_MANIFEST_HEADER SET NOTIFICATION_SENT = 'Y', NOTIFICATION_DATETIME = :dateTime WHERE HEADER_ID = :headerID
  82. notif.stale: >
  83. SELECT HEADER_ID FROM TXN_MQ_MANIFEST_HEADER WHERE NOTIFICATION_SENT = 'N' AND UPLOAD_DATETIME < CURRENT_DATE
  84. notif.target.department: MSP,METERING
  85. filter-by.status: >
  86. select * from txn_mq_manifest_file where status=:status and header_id=:headerID
  87. meter:
  88. daily:
  89. insert: >
  90. INSERT INTO TXN_METER_DATA_DAILY (
  91. METER_DATA_ID, FILE_ID, SEIN, INTERVAL, READING_DATETIME,
  92. KWD, KWD_CHANNEL_STATUS, KWD_INTERVAL_STATUS,
  93. KWHD, KWHD_CHANNEL_STATUS, KWHD_INTERVAL_STATUS,
  94. KVARHD, KVARHD_CHANNEL_STATUS, KVARHD_INTERVAL_STATUS,
  95. KWR, KWR_CHANNEL_STATUS, KWR_INTERVAL_STATUS,
  96. KWHR, KWHR_CHANNEL_STATUS, KWHR_INTERVAL_STATUS,
  97. KVARHR, KVARHR_CHANNEL_STATUS, KVARHR_INTERVAL_STATUS,
  98. VAN, VAN_CHANNEL_STATUS, VAN_INTERVAL_STATUS,
  99. VBN, VBN_CHANNEL_STATUS, VBN_INTERVAL_STATUS,
  100. VCN, VCN_CHANNEL_STATUS, VCN_INTERVAL_STATUS,
  101. IAN, IAN_CHANNEL_STATUS, IAN_INTERVAL_STATUS,
  102. IBN, IBN_CHANNEL_STATUS, IBN_INTERVAL_STATUS,
  103. ICN, ICN_CHANNEL_STATUS, ICN_INTERVAL_STATUS,
  104. PF, PF_CHANNEL_STATUS, PF_INTERVAL_STATUS,
  105. ESTIMATION_FLAG, MSP_SHORTNAME, CATEGORY, CREATED_DATE_TIME)
  106. VALUES (
  107. NEXTVAL('MQ_DATA_DAILY_SEQ'), :fileID, :sein, :interval, :readingDateTime,
  108. :kwd, :kwdChannelStatus, :kwdIntervalStatus,
  109. :kwhd, :kwhdChannelStatus, :kwhdIntervalStatus,
  110. :kvarhd, :kvarhdChannelStatus, :kvarhdIntervalStatus,
  111. :kwr, :kwrChannelStatus, :kwrIntervalStatus,
  112. :kwhr, :kwhrChannelStatus, :kwhrIntervalStatus,
  113. :kvarhr, :kvarhrChannelStatus, :kvarhrIntervalStatus,
  114. :van, :vanChannelStatus, :vanIntervalStatus,
  115. :vbn, :vbnChannelStatus, :vbnIntervalStatus,
  116. :vcn, :vcnChannelStatus, :vcnIntervalStatus,
  117. :ian, :ianChannelStatus, :ianIntervalStatus,
  118. :ibn, :ibnChannelStatus, :ibnIntervalStatus,
  119. :icn, :icnChannelStatus, :icnIntervalStatus,
  120. :pf, :pfChannelStatus, :pfIntervalStatus,
  121. :estimationFlag, :mspShortName, :uploadType, :createdDateTime)
  122. monthly:
  123. insert: >
  124. INSERT INTO TXN_METER_DATA_MONTHLY (
  125. METER_DATA_ID, FILE_ID, SEIN, INTERVAL, READING_DATETIME,
  126. KWD, KWD_CHANNEL_STATUS, KWD_INTERVAL_STATUS,
  127. KWHD, KWHD_CHANNEL_STATUS, KWHD_INTERVAL_STATUS,
  128. KVARHD, KVARHD_CHANNEL_STATUS, KVARHD_INTERVAL_STATUS,
  129. KWR, KWR_CHANNEL_STATUS, KWR_INTERVAL_STATUS,
  130. KWHR, KWHR_CHANNEL_STATUS, KWHR_INTERVAL_STATUS,
  131. KVARHR, KVARHR_CHANNEL_STATUS, KVARHR_INTERVAL_STATUS,
  132. VAN, VAN_CHANNEL_STATUS, VAN_INTERVAL_STATUS,
  133. VBN, VBN_CHANNEL_STATUS, VBN_INTERVAL_STATUS,
  134. VCN, VCN_CHANNEL_STATUS, VCN_INTERVAL_STATUS,
  135. IAN, IAN_CHANNEL_STATUS, IAN_INTERVAL_STATUS,
  136. IBN, IBN_CHANNEL_STATUS, IBN_INTERVAL_STATUS,
  137. ICN, ICN_CHANNEL_STATUS, ICN_INTERVAL_STATUS,
  138. PF, PF_CHANNEL_STATUS, PF_INTERVAL_STATUS,
  139. ESTIMATION_FLAG, MSP_SHORTNAME, CATEGORY, CREATED_DATE_TIME)
  140. VALUES (
  141. NEXTVAL('MQ_DATA_MONTHLY_SEQ'), :fileID, :sein, :interval, :readingDateTime,
  142. :kwd, :kwdChannelStatus, :kwdIntervalStatus,
  143. :kwhd, :kwhdChannelStatus, :kwhdIntervalStatus,
  144. :kvarhd, :kvarhdChannelStatus, :kvarhdIntervalStatus,
  145. :kwr, :kwrChannelStatus, :kwrIntervalStatus,
  146. :kwhr, :kwhrChannelStatus, :kwhrIntervalStatus,
  147. :kvarhr, :kvarhrChannelStatus, :kvarhrIntervalStatus,
  148. :van, :vanChannelStatus, :vanIntervalStatus,
  149. :vbn, :vbnChannelStatus, :vbnIntervalStatus,
  150. :vcn, :vcnChannelStatus, :vcnIntervalStatus,
  151. :ian, :ianChannelStatus, :ianIntervalStatus,
  152. :ibn, :ibnChannelStatus, :ibnIntervalStatus,
  153. :icn, :icnChannelStatus, :icnIntervalStatus,
  154. :pf, :pfChannelStatus, :pfIntervalStatus,
  155. :estimationFlag, :mspShortName, :uploadType, :createdDateTime)
  156. bcq:
  157. manifest: >
  158. INSERT INTO TXN_BCQ_UPLOAD_FILE (
  159. FILE_ID,
  160. TRANSACTION_ID,
  161. FILE_NAME,
  162. FILE_SIZE,
  163. SUBMITTED_DATE,
  164. VALIDATION_STATUS)
  165. VALUES (NEXTVAL('HIBERNATE_SEQUENCE'), ?, ?, ?, ?, ?)
  166. header:
  167. insert: >
  168. INSERT INTO TXN_BCQ_HEADER (
  169. BCQ_HEADER_ID,
  170. FILE_ID,
  171. SELLING_MTN,
  172. BILLING_ID,
  173. BUYING_PARTICIPANT_USER_ID,
  174. BUYING_PARTICIPANT_NAME,
  175. BUYING_PARTICIPANT_SHORT_NAME,
  176. SELLING_PARTICIPANT_USER_ID,
  177. SELLING_PARTICIPANT_NAME,
  178. SELLING_PARTICIPANT_SHORT_NAME,
  179. STATUS,
  180. TRADING_DATE,
  181. DEADLINE_DATE,
  182. UPDATED_VIA)
  183. VALUES (NEXTVAL('HIBERNATE_SEQUENCE'), ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
  184. update: >
  185. UPDATE TXN_BCQ_HEADER SET
  186. FILE_ID = ?,
  187. STATUS = ?,
  188. UPDATED_VIA = ?
  189. WHERE SELLING_MTN = ? AND BILLING_ID = ? AND TRADING_DATE = ? AND SELLING_PARTICIPANT_SHORT_NAME = ?
  190. count: >
  191. SELECT COUNT(*) FROM TXN_BCQ_HEADER
  192. WHERE SELLING_MTN = ? AND BILLING_ID = ? AND TRADING_DATE = ? AND SELLING_PARTICIPANT_SHORT_NAME = ?
  193. id: >
  194. SELECT BCQ_HEADER_ID FROM TXN_BCQ_HEADER
  195. WHERE SELLING_MTN = ? AND BILLING_ID = ? AND TRADING_DATE = ? AND SELLING_PARTICIPANT_SHORT_NAME = ?
  196. status: >
  197. UPDATE TXN_BCQ_HEADER SET STATUS = ? WHERE BCQ_HEADER_ID = ?
  198. status.settlement: >
  199. UPDATE TXN_BCQ_HEADER SET STATUS = ?, UPDATED_VIA = ? WHERE BCQ_HEADER_ID = ?
  200. data:
  201. insert: >
  202. INSERT INTO TXN_BCQ_DATA (
  203. BCQ_DATA_ID,
  204. BCQ_HEADER_ID,
  205. REFERENCE_MTN,
  206. START_TIME,
  207. END_TIME,
  208. BCQ)
  209. VALUES (NEXTVAL('HIBERNATE_SEQUENCE'), ?, ?, ?, ?, ?)
  210. update: >
  211. UPDATE TXN_BCQ_DATA SET
  212. REFERENCE_MTN = ?,
  213. BCQ = ?
  214. WHERE END_TIME = ? AND BCQ_HEADER_ID = ?
  215. details: >
  216. SELECT
  217. REFERENCE_MTN,
  218. END_TIME,
  219. BCQ
  220. FROM TXN_BCQ_DATA
  221. WHERE BCQ_HEADER_ID = ?
  222. display:
  223. data: >
  224. SELECT
  225. BCQ_HEADER_ID,
  226. SELLING_MTN,
  227. BILLING_ID,
  228. BUYING_PARTICIPANT_USER_ID,
  229. BUYING_PARTICIPANT_NAME,
  230. BUYING_PARTICIPANT_SHORT_NAME,
  231. SELLING_PARTICIPANT_USER_ID,
  232. SELLING_PARTICIPANT_NAME,
  233. SELLING_PARTICIPANT_SHORT_NAME,
  234. TRADING_DATE,
  235. DEADLINE_DATE,
  236. TRANSACTION_ID,
  237. SUBMITTED_DATE,
  238. STATUS,
  239. UPDATED_VIA
  240. FROM TXN_BCQ_HEADER A INNER JOIN TXN_BCQ_UPLOAD_FILE B ON A.FILE_ID = B.FILE_ID
  241. count: >
  242. SELECT COUNT(*)
  243. FROM TXN_BCQ_HEADER A INNER JOIN TXN_BCQ_UPLOAD_FILE B ON A.FILE_ID = B.FILE_ID
  244. paginate: >
  245. {SELECT_QUERY} LIMIT ({PAGE_NO} + 1) * {PAGE_SIZE} OFFSET {PAGE_NO} * {PAGE_SIZE}
  246. event:
  247. insert: >
  248. INSERT INTO TXN_BCQ_SPECIAL_EVENT (
  249. EVENT_ID,
  250. DEADLINE_DATE,
  251. REMARKS)
  252. VALUES (NEXTVAL('HIBERNATE_SEQUENCE'), ?, ?)
  253. trading-date:
  254. insert: >
  255. INSERT INTO TXN_BCQ_EVENT_TRADING_DATE (
  256. EVENT_ID,
  257. TRADING_DATE)
  258. VALUES (?, ?)
  259. participant:
  260. insert: >
  261. INSERT INTO TXN_BCQ_EVENT_PARTICIPANT (
  262. EVENT_ID,
  263. TRADING_PARTICIPANT)
  264. VALUES (?, ?)