<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
        xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
        xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.0.xsd
        http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd">
    <changeSet id="CCM-4008-1" author="ggawas">
        <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
            <![CDATA[
                USE ows_timed_release_schedule;;

                DROP TRIGGER IF EXISTS after_insert_timed_release;;
                CREATE DEFINER = 'ows_timerelease_etl'@'%'
                TRIGGER after_insert_timed_release
                AFTER INSERT ON timed_release
                FOR EACH ROW
                BEGIN
                    INSERT INTO ows_timed_release_schedule.timed_release_log SET
                        timed_release_id = NEW.timed_release_id,
                        product_id = NEW.product_id,
                        timing = NEW.timing,
                        store_id = NEW.store_id,
                        sales_date_time = NEW.sales_date_time,
                        source = NEW.source,
                        user_timezone = NEW.user_timezone,
                        created_on = NEW.created_on,
                        created_by = NEW.created_by,
                        updated_on = NEW.updated_on,
                        updated_by = NEW.updated_by,
                        log_created_on = NOW(),
                        log_action = 'insert';
                END;;

                DROP TRIGGER IF EXISTS after_update_timed_release;;
                CREATE DEFINER = 'ows_timerelease_etl'@'%'
                TRIGGER after_update_timed_release
                AFTER UPDATE ON timed_release
                FOR EACH ROW
                BEGIN
                    INSERT INTO ows_timed_release_schedule.timed_release_log SET
                        timed_release_id = NEW.timed_release_id,
                        product_id = NEW.product_id,
                        timing = NEW.timing,
                        store_id = NEW.store_id,
                        sales_date_time = NEW.sales_date_time,
                        source = NEW.source,
                        user_timezone = NEW.user_timezone,
                        created_on = NEW.created_on,
                        created_by = NEW.created_by,
                        updated_on = NEW.updated_on,
                        updated_by = NEW.updated_by,
                        log_created_on = NOW(),
                        log_action = 'update';
                END;;

                DROP TRIGGER IF EXISTS after_delete_timed_release;;
                CREATE DEFINER = 'ows_timerelease_etl'@'%'
                TRIGGER after_delete_timed_release
                AFTER DELETE ON timed_release
                FOR EACH ROW
                BEGIN
                    INSERT INTO ows_timed_release_schedule.timed_release_log SET
                        timed_release_id = OLD.timed_release_id,
                        product_id = OLD.product_id,
                        timing = OLD.timing,
                        store_id = OLD.store_id,
                        sales_date_time = OLD.sales_date_time,
                        source = OLD.source,
                        user_timezone = OLD.user_timezone,
                        created_on = OLD.created_on,
                        created_by = OLD.created_by,
                        updated_on = OLD.updated_on,
                        updated_by = OLD.updated_by,
                        log_created_on = NOW(),
                        log_action = 'delete';
                END;;
            ]]>
        </sql>
        <rollback>
            <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
                <![CDATA[
                    USE ows_timed_release_schedule;;
                    DROP TRIGGER IF EXISTS after_insert_timed_release;;
                    DROP TRIGGER IF EXISTS after_update_timed_release;;
                    DROP TRIGGER IF EXISTS after_delete_timed_release;;
                ]]>
            </sql>
        </rollback>
    </changeSet>
</databaseChangeLog>
