<?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="97" author="rajan-sharma">
        <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
        <![CDATA[
            SET @resourceId = 53;;
            SET @existingPrivilegeId = 300;;
            INSERT INTO orchadmin_privileges (privilege) VALUES ('getvendoridbyupc');;
            SET @priviledgeId = LAST_INSERT_ID();;
            INSERT INTO orchadmin_permissions (orchadmin_resource_id, orchadmin_privilege_id, description)
                VALUES (@resourceId, @priviledgeId, 'Returns Vendor Id as response');;
            SET @permissionId = LAST_INSERT_ID();;
            INSERT INTO orchadmin_role_permissions (orchadmin_permission_id, orchadmin_role_id)
                SELECT @permissionId, orchadmin_role_id FROM orchadmin_role_permissions WHERE orchadmin_permission_id = @existingPrivilegeId;;
          ]]>
        </sql>
        <rollback>
            <sql dbms="mysql" endDelimiter=";;" splitStatements="true" stripComments="true">
            <![CDATA[
                SET @resourceId = 53;;
                SET @priviledgeId = (SELECT orchadmin_privilege_id FROM orchadmin_privileges WHERE privilege = 'getvendoridbyupc');;
                SET @permissionId = (SELECT orchadmin_permission_id FROM orchadmin_permissions WHERE orchadmin_privilege_id = @priviledgeId);;
                DELETE FROM orchadmin_role_permissions WHERE orchadmin_permission_id = @permissionId;;
                DELETE FROM orchadmin_permissions WHERE orchadmin_resource_id = @resourceId AND orchadmin_privilege_id = @priviledgeId;;
                DELETE FROM orchadmin_privileges WHERE orchadmin_privilege_id = @priviledgeId;;

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