From d7ac22e54e1407634c6b7ff1d6ae6755f3d0454a Mon Sep 17 00:00:00 2001 From: kashiuno Date: Sun, 16 Feb 2025 16:44:35 +0300 Subject: [PATCH] Update database scheme for new conception --- .../db/changelog/1.0.0/changelog.yml | 135 +++++++++++++----- 1 file changed, 103 insertions(+), 32 deletions(-) diff --git a/src/main/resources/db/changelog/1.0.0/changelog.yml b/src/main/resources/db/changelog/1.0.0/changelog.yml index de47195..0515309 100644 --- a/src/main/resources/db/changelog/1.0.0/changelog.yml +++ b/src/main/resources/db/changelog/1.0.0/changelog.yml @@ -3,6 +3,21 @@ databaseChangeLog: id: create-oauth2-registered-clients author: d.krupin changes: + - createTable: + tableName: partners + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: PK_partners + name: id + type: TEXT + - column: + constraints: + nullable: false + name: name + type: TEXT - createTable: tableName: oauth2_registered_client columns: @@ -80,6 +95,13 @@ databaseChangeLog: defaultValue: TRUE constraints: nullable: false + - column: + name: partner_id + type: TEXT + constraints: + nullable: true + foreignKeyName: FK_units_partners + references: partners(id) - createTable: tableName: doors columns: @@ -105,48 +127,67 @@ databaseChangeLog: type: INT constraints: nullable: false - - createTable: - tableName: qrs - columns: - column: - constraints: - nullable: false - primaryKey: true - primaryKeyName: PK_qrs - name: key_code + name: parent_door_id type: TEXT - - column: constraints: - nullable: false - foreignKeyName: fk_qr_door + nullable: true + foreignKeyName: FK_parent_doors references: doors(id) - name: door_id - type: TEXT - - column: - constraints: - nullable: true - name: start_date_time - type: TIMESTAMP WITH TIME ZONE - - column: - constraints: - nullable: true - name: end_date_time - type: TIMESTAMP WITH TIME ZONE - createTable: - tableName: partners + tableName: rent columns: - column: constraints: nullable: false primaryKey: true - primaryKeyName: PK_partners + primaryKeyName: PK_rent name: id type: TEXT - column: constraints: - nullable: false - name: name + nullable: true + name: start_time + type: TIME WITH TIME ZONE + - column: + constraints: + nullable: true + name: end_time + type: TIME WITH TIME ZONE + - column: + name: client_id type: TEXT + constraints: + nullable: false + foreignKeyName: FK_rent_clients + references: rent(id) + - column: + name: date + type: DATE + constraints: + nullable: true + - column: + name: door_id + type: TEXT + constraints: + nullable: false + foreignKeyName: FK_rent_doors + references: doors(id) + - column: + name: qr_code + type: TEXT + constraints: + nullable: false + - column: + name: payed + type: BOOLEAN + constraints: + nullable: false + - column: + name: date_created + type: TIMESTAMP WITH TIME ZONE + constraints: + nullable: false - createTable: tableName: clients columns: @@ -162,6 +203,11 @@ databaseChangeLog: nullable: false name: email type: TEXT + - column: + constraints: + nullable: false + name: email_is_confirmed + type: BOOLEAN - createTable: tableName: schedule columns: @@ -194,6 +240,31 @@ databaseChangeLog: type: DATE constraints: nullable: false + - createTable: + tableName: email_outbox + columns: + - column: + name: id + type: TEXT + constraints: + nullable: false + primaryKey: true + primaryKeyName: PK_email_outbox + - column: + name: email + type: TEXT + constraints: + nullable: false + - column: + name: template + type: TEXT + constraints: + nullable: false + - column: + name: additional_info + type: JSONB + constraints: + nullable: true - insert: tableName: oauth2_registered_client columns: @@ -217,22 +288,22 @@ databaseChangeLog: value: admin-client - column: name: client_authentication_methods - value: client_secret_post + value: none - column: name: authorization_grant_types value: refresh_token,authorization_code - column: name: redirect_uris - value: 'localhost:8082/units' + value: 'http://localhost:8082/units,https://oauth.pstmn.io/v1/callback' - column: name: post_logout_redirect_uris - value: 'localhost:8082/units' + value: 'http://localhost:8082/units' - column: name: scopes - value: '' + value: 'admin,openid' - column: name: client_settings - value: '{"@class":"java.util.Collections$UnmodifiableMap","settings.client.require-proof-key":false,"settings.client.require-authorization-consent":false}' + value: '{"@class":"java.util.Collections$UnmodifiableMap","settings.client.require-proof-key":true,"settings.client.require-authorization-consent":false}' - column: name: token_settings value: '{"@class":"java.util.Collections$UnmodifiableMap","settings.token.reuse-refresh-tokens":false,"settings.token.x509-certificate-bound-access-tokens":false,"settings.token.id-token-signature-algorithm":["org.springframework.security.oauth2.jose.jws.SignatureAlgorithm","RS256"],"settings.token.access-token-time-to-live":["java.time.Duration",600.000000000],"settings.token.access-token-format":{"@class":"org.springframework.security.oauth2.server.authorization.settings.OAuth2TokenFormat","value":"self-contained"},"settings.token.refresh-token-time-to-live":["java.time.Duration",600.000000000],"settings.token.authorization-code-time-to-live":["java.time.Duration",300.000000000],"settings.token.device-code-time-to-live":["java.time.Duration",300.000000000]}'