Selaa lähdekoodia

[BCQ] add config for Special Events validation

dmendoza 8 vuotta sitten
vanhempi
sitoutus
d82d2fcb1c

+ 14 - 0
crss-metering/application-oracle-query.yml

@@ -268,3 +268,17 @@ bcq:
           EVENT_ID,
           TRADING_PARTICIPANT)
         VALUES (?, ?)
+    validate: >
+      SELECT DISTINCT
+        ep.trading_participant,
+        etd.trading_date,
+        count(1) OVER (PARTITION BY date_trunc('day', etd.trading_date), ep.trading_participant) AS trading_date_count
+      FROM txn_bcq_special_event se
+      INNER JOIN txn_bcq_event_participant ep
+        ON se.event_id = ep.event_id
+      INNER JOIN txn_bcq_event_trading_date etd
+        ON se.event_id = etd.event_id
+      WHERE se.deadline_date >= :dateToday
+        AND ep.trading_participant IN (:tradingParticipants)
+        AND date_trunc('day', etd.trading_date) IN (:tradingDates)
+      ORDER BY etd.trading_date asc    

+ 15 - 1
crss-metering/application-pg-query.yml

@@ -261,4 +261,18 @@ bcq:
         INSERT INTO TXN_BCQ_EVENT_PARTICIPANT (
           EVENT_ID,
           TRADING_PARTICIPANT)
-        VALUES (?, ?)
+        VALUES (?, ?)
+    validate: >
+      SELECT DISTINCT
+        ep.trading_participant,
+        etd.trading_date,
+        count(1) OVER (PARTITION BY date_trunc('day', etd.trading_date), ep.trading_participant) AS trading_date_count
+      FROM txn_bcq_special_event se
+      INNER JOIN txn_bcq_event_participant ep
+        ON se.event_id = ep.event_id
+      INNER JOIN txn_bcq_event_trading_date etd
+        ON se.event_id = etd.event_id
+      WHERE se.deadline_date >= :dateToday
+        AND ep.trading_participant IN (:tradingParticipants)
+        AND date_trunc('day', etd.trading_date) IN (:tradingDates)
+      ORDER BY etd.trading_date asc