EventSqlDao.sql.stg

141 lines | 2.516 kB Blame History Raw Download
group EventSqlDao;

getEventById(event_id) ::= <<
  select
      id
      , event_id
      , event_type
      , user_type
      , created_dt
      , updated_dt
      , requested_dt
      , effective_dt
      , subscription_id
      , plan_name
      , phase_name
      , plist_name
      , current_version
      , is_active  
  from entitlement_events
  where
      event_id = :event_id
  ;
>>

insertEvent() ::= <<
    insert into entitlement_events (
      event_id
      , event_type
      , user_type
      , created_dt
      , updated_dt
      , requested_dt
      , effective_dt
      , subscription_id
      , plan_name
      , phase_name
      , plist_name
      , current_version
      , is_active
    ) values (
      :event_id
      , :event_type
      , :user_type
      , :created_dt
      , :updated_dt
      , :requested_dt
      , :effective_dt
      , :subscription_id
      , :plan_name
      , :phase_name
      , :plist_name
      , :current_version
      , :is_active
    );   
>>

removeEvents(subscription_id) ::= <<
    delete from entitlement_events
      where
    subscription_id = :subscription_id
    ;
>>

unactiveEvent(event_id, now) ::= <<
    update entitlement_events
    set
      is_active = 0
      , updated_dt = :now
    where
      event_id = :event_id
    ;
>>

reactiveEvent(event_id, now) ::= <<
    update entitlement_events
    set
      is_active = 1
      , updated_dt = :now
    where
      event_id = :event_id
    ;
>>

getFutureActiveEventForSubscription(subscription_id, now) ::= <<
    select 
      id
      , event_id
      , event_type
      , user_type
      , created_dt
      , updated_dt
      , requested_dt
      , effective_dt
      , subscription_id
      , plan_name
      , phase_name
      , plist_name
      , current_version
      , is_active
    from entitlement_events
    where
      subscription_id = :subscription_id
      and is_active = 1
      and effective_dt > :now
    order by
      effective_dt asc
      , created_dt asc
      , requested_dt asc
      , id asc
    ;
>> 

getEventsForSubscription(subscription_id) ::= <<
    select
       id
      , event_id
      , event_type
      , user_type
      , created_dt
      , updated_dt
      , requested_dt
      , effective_dt
      , subscription_id
      , plan_name
      , phase_name
      , plist_name
      , current_version
      , is_active
    from entitlement_events
    where
      subscription_id = :subscription_id
    order by
      effective_dt asc
      , created_dt asc
      , requested_dt asc
      , id asc
    ;      
>>