<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                   xsi:schemaLocation="
            http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">

    <changeSet id="01-alter-acm_case_file-for-subject-access-request" author="vladimir.cherepnalkovski"
               dbms="oracle,mssql,postgres"
               logicalFilePath="/ddl/tables/privacy-request-db-tables-1.0.xml">
        <addColumn tableName="acm_case_file">
            <column name="sar_received_date" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_hold_enter_date" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_request_type" type="VARCHAR(512)"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_release_date" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_component_agency" type="VARCHAR(512)"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_return_reason" type="VARCHAR(512)"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_request_source" type="VARCHAR(512)"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_record_search_date_from" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_record_search_date_to" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_delivery_method_of_response" type="VARCHAR(512)"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_request_category" type="VARCHAR(512)"/>
        </addColumn>
    </changeSet>

    <changeSet id="02-alter-acm_case_file-for-subject-access-request" author="vladimir.cherepnalkovski" dbms="mysql"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_case_file">
            <column name="sar_received_date" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_hold_enter_date" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_request_type" type="TEXT"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_release_date" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_component_agency" type="TEXT"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_return_reason" type="TEXT"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_request_source" type="TEXT"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_record_search_date_from" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_record_search_date_to" type="${timestampType}"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_delivery_method_of_response" type="TEXT"/>
        </addColumn>
        <addColumn tableName="acm_case_file">
            <column name="sar_request_category" type="TEXT"/>
        </addColumn>
    </changeSet>

    <changeSet id="03-alter-acm_person_assoc-for-subject-access-request" author="vladimir.cherepnalkovski"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_person_assoc">
            <column name="sar_requester_source" type="varchar(128)"/>
        </addColumn>
    </changeSet>

    <changeSet id="04-acm_person-add-column-sar_position" author="vladimir.cherepnalkovski"
               dbms="oracle,mssql,postgres"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_person">
            <column name="sar_position" type="VARCHAR(512)"/>
        </addColumn>
    </changeSet>

    <changeSet id="05-acm_person-add-column-sar_position" author="vladimir.cherepnalkovski" dbms="mysql"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_person">
            <column name="sar_position" type="TEXT"/>
        </addColumn>
    </changeSet>

    <changeSet id="06-acm_file-add-column-sar_public_flag" author="vladimir.cherepnalkovski"
               dbms="oracle,mssql,postgres"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_file">
            <column name="sar_public_flag" type="VARCHAR(10)"/>
        </addColumn>
    </changeSet>

    <changeSet id="07-acm_file-add-column-sar_public_flag" author="vladimir.cherepnalkovski" dbms="mysql"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_file">
            <column name="sar_public_flag" type="TEXT"/>
        </addColumn>
    </changeSet>

    <changeSet id="08-privacy-file-version-review-status-column" author="vladimir.cherepnalkovski"
               dbms="oracle,mssql,postgres"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_file_version">
            <column name="sar_review_status" type="VARCHAR(512)"/>
        </addColumn>
        <addColumn tableName="acm_file_version">
            <column name="sar_redaction_status" type="VARCHAR(512)"/>
        </addColumn>
    </changeSet>

    <changeSet id="09-privacy-file-version-review-status-column" author="vladimir.cherepnalkovski" dbms="mysql"
               logicalFilePath="/ddl/tables/subject-access-request-db-tables-1.0.xml">
        <addColumn tableName="acm_file_version">
            <column name="sar_review_status" type="TEXT"/>
        </addColumn>
        <addColumn tableName="acm_file_version">
            <column name="sar_redaction_status" type="TEXT"/>
        </addColumn>
    </changeSet>

    <changeSet id="10-alter-acm_case_file-add-sworn-statements" author="vladimir.cherepnalkovski"
               logicalFilePath="/ddl/tables/privacy-request-db-tables-1.0.xml">
        <addColumn tableName="acm_case_file">
            <column name="sar_sworn_statement" type="BOOLEAN" defaultValueBoolean="false">
                <constraints nullable="false"/>
            </column>
            <column name="sar_understand_processing_requirement_statement" type="BOOLEAN" defaultValueBoolean="false">
                <constraints nullable="false"/>
            </column>
            <column name="sar_information_agreement_statement" type="BOOLEAN" defaultValueBoolean="false">
                <constraints nullable="false"/>
            </column>
            <column name="sar_accurate_and_authorized_statement" type="BOOLEAN" defaultValueBoolean="false">
                <constraints nullable="false"/>
            </column>
        </addColumn>
    </changeSet>

    <changeSet id="11-alter-acm_case_file-add-signature" author="vladimir.cherepnalkovski" dbms="oracle,mssql,postgres"
               logicalFilePath="/ddl/tables/privacy-request-db-tables-1.0.xml">
        <addColumn tableName="acm_case_file">
            <column name="sar_signature" type="VARCHAR(512)" defaultValueBoolean="false">
                <constraints nullable="false"/>
            </column>
            <column name="sar_signature_date" type="${timestampType}"/>
        </addColumn>
    </changeSet>

    <changeSet id="12-alter-acm_case_file-add-signature" author="vladimir.cherepnalkovski" dbms="mysql"
               logicalFilePath="/ddl/tables/privacy-request-db-tables-1.0.xml">
        <addColumn tableName="acm_case_file">
            <column name="sar_signature" type="TEXT" defaultValueBoolean="false">
                <constraints nullable="false"/>
            </column>
            <column name="sar_signature_date" type="${timestampType}"/>
        </addColumn>
    </changeSet>

    <changeSet id="13-alter-acm_case_file-remove-signature-not-null-constraint" author="vladimir.cherepnalkovski"
               dbms="oracle,mssql,postgres" logicalFilePath="/ddl/tables/privacy-request-db-tables-1.0.xml">
        <dropNotNullConstraint tableName="acm_case_file" columnName="sar_signature" columnDataType="VARCHAR"/>
    </changeSet>

    <changeSet id="13.1-alter-acm_case_file-remove-signature-not-null-constraint" author="vladimir.cherepnalkovski"
               dbms="mysql" logicalFilePath="/ddl/tables/privacy-request-db-tables-1.0.xml">
        <dropNotNullConstraint tableName="acm_case_file" columnName="sar_signature" columnDataType="TEXT"/>
    </changeSet>

</databaseChangeLog>

