<?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="1" author="dratanghayra">
        <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
            USE `art_relations`;;

            DROP PROCEDURE IF EXISTS `sp_insert_product_physical_reports_change_history`;;

            CREATE DEFINER=`theorchard`@`10.10.%` PROCEDURE sp_insert_product_physical_reports_change_history(
                IN product_id INT,
                IN field_name VARCHAR(100)
            )
            BEGIN
                DECLARE release_status VARCHAR(50);
                SET release_status = (SELECT r.release_status FROM product_physical p 
                    INNER JOIN releases r ON r.release_id = p.release_id
                    WHERE p.release_id = product_id);
                IF (release_status = 'in_content') THEN
                    INSERT INTO product_physical_reports_change_history SET
                        product_id = product_id,
                        field_name = field_name,
                        date_changed = now(); 
                END IF;
            END;;

        </sql>
        <rollback>
            <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
                USE `art_relations`;;

                DROP PROCEDURE IF EXISTS `sp_insert_product_physical_reports_change_history`;;

            </sql>
        </rollback>
    </changeSet>
    <changeSet id="2" author="jchung">
        <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
            USE `art_relations`;;

            DROP PROCEDURE IF EXISTS `sp_insert_product_physical_reports_change_history`;;

            CREATE DEFINER=`theorchard`@`10.10.%` PROCEDURE sp_insert_product_physical_reports_change_history(
                IN product_id INT,
                IN field_name VARCHAR(100)
            )
            BEGIN
                DECLARE release_status VARCHAR(50);
                SET release_status = (SELECT r.release_status FROM product_physical p 
                    INNER JOIN releases r ON r.release_id = p.release_id
                    WHERE p.release_id = product_id LIMIT 1);
                IF (release_status = 'in_content') THEN
                    INSERT INTO product_physical_reports_change_history SET
                        product_id = product_id,
                        field_name = field_name,
                        date_changed = now(); 
                END IF;
            END;;

        </sql>
        <rollback>
            <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
                USE `art_relations`;;

                DROP PROCEDURE IF EXISTS `sp_insert_product_physical_reports_change_history`;;

            CREATE DEFINER=`theorchard`@`10.10.%` PROCEDURE sp_insert_product_physical_reports_change_history(
                IN product_id INT,
                IN field_name VARCHAR(100)
            )
            BEGIN
                DECLARE release_status VARCHAR(50);
                SET release_status = (SELECT r.release_status FROM product_physical p 
                    INNER JOIN releases r ON r.release_id = p.release_id
                    WHERE p.release_id = product_id);
                IF (release_status = 'in_content') THEN
                    INSERT INTO product_physical_reports_change_history SET
                        product_id = product_id,
                        field_name = field_name,
                        date_changed = now(); 
                END IF;
            END;;

            </sql>
        </rollback>
    </changeSet>
</databaseChangeLog>
