INSERT INTO sg_app_role (role_id, role_name, description, max_sensitivity_level) VALUES ( #{roleId,jdbcType=NUMERIC}, UPPER(#{roleName,jdbcType=VARCHAR}), #{description,jdbcType=VARCHAR}, #{maxSensitivityLevel,jdbcType=VARCHAR} ) UPDATE sg_app_role SET max_sensitivity_level = #{maxSensitivityLevel,jdbcType=VARCHAR} WHERE role_id = #{roleId,jdbcType=NUMERIC} DELETE FROM sg_app_role WHERE role_id = #{roleId,jdbcType=NUMERIC} INSERT INTO cb_permission (perm_id, role_id, target_name, action_name, permission_effect) SELECT #{permissionId}, #{roleId}, object_name, #{action}, #{permissionEffect} FROM cb_protected_object WHERE object_id = #{objectId} UPDATE cb_permission SET action_name = #{action} WHERE perm_id = #{permissionId} UPDATE cb_permission SET permission_effect = #{permissionEffect} WHERE perm_id = #{permissionId} DELETE FROM cb_permission_rule WHERE perm_id = #{permissionId} INSERT INTO cb_permission_rule (rule_id, perm_id, rule_column, rule_type, rule_value) VALUES ( #{ruleId,jdbcType=NUMERIC}, #{permissionId,jdbcType=NUMERIC}, #{ruleColumn,jdbcType=VARCHAR}, #{ruleType,jdbcType=VARCHAR}, #{ruleValue,jdbcType=VARCHAR} ) DELETE FROM cb_permission_column WHERE permission_id = #{permissionId} INSERT INTO cb_permission_column (permission_id, column_name) VALUES (#{permissionId}, #{columnName}) DELETE FROM cb_permission WHERE perm_id = #{permissionId}