Skip to content

Commit

Permalink
Update
Browse files Browse the repository at this point in the history
  • Loading branch information
Portals committed Jun 8, 2024
1 parent dceb0cf commit 7e23745
Show file tree
Hide file tree
Showing 4 changed files with 497 additions and 433 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
@Service
public class UserCreationFacade extends Facade {

private static final String MAIL_POSTFIX = "student.chalmers.se";
private static final String MAIL_POSTFIX = "chalmers.se";
private static final Logger LOGGER = LoggerFactory.getLogger(UserCreationFacade.class);
private final MailService mailService;
private final UserActivationRepository userActivationRepository;
Expand Down
99 changes: 87 additions & 12 deletions app/src/main/resources/db/migration/V1__BASE.sql
Original file line number Diff line number Diff line change
@@ -1,3 +1,76 @@
-- g_ = gamma prefix to prevent using reserved names
CREATE TABLE g_text
(
text_id UUID PRIMARY KEY,
sv VARCHAR(2048) NOT NULL,
en VARCHAR(2048) NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE g_user
(
user_id UUID PRIMARY KEY,
cid VARCHAR(12) NOT NULL UNIQUE,
password VARCHAR(255) CHECK (password IS NULL OR password LIKE '{bcrypt}$%'),
nick VARCHAR(50) NOT NULL,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL UNIQUE,
LANGUAGE VARCHAR(15) NULL,
user_agreement_accepted TIMESTAMP NOT NULL DEFAULT NOW(),
acceptance_year INTEGER,
version INT,
locked BOOLEAN DEFAULT FALSE,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP NOT NULL
);

CREATE TABLE g_user_avatar_uri
(
avatar_uri VARCHAR(255) NOT NULL,
version INT,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP NOT NULL,
user_id UUID REFERENCES g_user ON DELETE CASCADE
);

CREATE TABLE g_admin_user
(
created_at TIMESTAMP NOT NULL,
user_id UUID PRIMARY KEY REFERENCES g_user (user_id) ON DELETE CASCADE
);

CREATE TABLE g_gdpr_trained
(
created_at TIMESTAMP NOT NULL,
user_id UUID PRIMARY KEY REFERENCES g_user (user_id) ON DELETE CASCADE
);

CREATE TABLE g_password_reset
(
token VARCHAR(100) UNIQUE,
user_id UUID PRIMARY KEY REFERENCES g_user ON DELETE CASCADE,
created_at TIMESTAMP NOT NULL
);

CREATE TABLE g_super_group_type
(
super_group_type_name VARCHAR(30) PRIMARY KEY,
created_at TIMESTAMP NOT NULL
);

CREATE TABLE g_super_group
(
super_group_id UUID PRIMARY KEY,
e_name VARCHAR(50) NOT NULL UNIQUE,
pretty_name VARCHAR(50) NOT NULL,
super_group_type_name VARCHAR(30) NOT NULL REFERENCES g_super_group_type,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP NOT NULL,
description UUID REFERENCES g_text ON DELETE CASCADE,
version INT
);

CREATE TABLE g_group
(
group_id UUID PRIMARY KEY,
Expand Down Expand Up @@ -26,7 +99,7 @@ CREATE TABLE g_membership
group_id UUID REFERENCES g_group ON DELETE CASCADE,
post_id UUID REFERENCES g_post ON DELETE CASCADE,
unofficial_post_name VARCHAR(50),
PRIMARY KEY (user_id, group_id, post_id)
PRIMARY KEY (user_id,group_id,post_id)
);

CREATE TABLE g_allow_list
Expand Down Expand Up @@ -54,24 +127,26 @@ CREATE TABLE g_client
official BOOLEAN NOT NULL,
created_by UUID REFERENCES g_user (user_id) ON DELETE CASCADE,
CHECK (
(official = TRUE AND created_by IS NULL) OR (official = FALSE AND created_by IS NOT NULL)
)
(official = TRUE AND created_by IS NULL)
OR
(official = FALSE AND created_by IS NOT NULL)
)
);

CREATE TABLE g_client_scope
(
client_uid UUID REFERENCES g_client,
SCOPE VARCHAR(30) NOT NULL,
created_at TIMESTAMP NOT NULL,
PRIMARY KEY (client_uid, SCOPE)
PRIMARY KEY (client_uid,SCOPE)
);

CREATE TABLE g_user_approval
(
created_at TIMESTAMP NOT NULL,
user_id UUID REFERENCES g_user ON DELETE CASCADE,
client_uid UUID REFERENCES g_client ON DELETE CASCADE,
PRIMARY KEY (user_id, client_uid)
PRIMARY KEY (user_id,client_uid)
);

CREATE TABLE g_group_images_uri
Expand Down Expand Up @@ -110,7 +185,7 @@ CREATE TABLE g_api_key_to_super_group_type
settings_id UUID REFERENCES g_api_key_settings (settings_id),
created_at TIMESTAMP NOT NULL,
super_group_type_name VARCHAR(30) REFERENCES g_super_group_type,
PRIMARY KEY (settings_id, super_group_type_name)
PRIMARY KEY (settings_id,super_group_type_name)
);

CREATE TABLE g_client_api_key
Expand All @@ -125,7 +200,7 @@ CREATE TABLE g_client_authority
created_at TIMESTAMP NOT NULL,
client_uid UUID REFERENCES g_client (client_uid) ON DELETE CASCADE,
authority_name VARCHAR(30),
PRIMARY KEY (client_uid, authority_name)
PRIMARY KEY (client_uid,authority_name)
);

CREATE TABLE g_client_authority_super_group
Expand All @@ -134,8 +209,8 @@ CREATE TABLE g_client_authority_super_group
super_group_id UUID REFERENCES g_super_group,
client_uid UUID,
authority_name VARCHAR(30),
PRIMARY KEY (super_group_id, client_uid, authority_name),
FOREIGN KEY (client_uid, authority_name) REFERENCES g_client_authority (client_uid, authority_name) ON DELETE CASCADE
PRIMARY KEY (super_group_id,client_uid,authority_name),
FOREIGN KEY (client_uid,authority_name) REFERENCES g_client_authority (client_uid,authority_name) ON DELETE CASCADE
);

CREATE TABLE g_client_authority_user
Expand All @@ -144,8 +219,8 @@ CREATE TABLE g_client_authority_user
user_id UUID REFERENCES g_user ON DELETE CASCADE,
client_uid UUID,
authority_name VARCHAR(30),
PRIMARY KEY (user_id, client_uid, authority_name),
FOREIGN KEY (client_uid, authority_name) REFERENCES g_client_authority (client_uid, authority_name) ON DELETE CASCADE
PRIMARY KEY (user_id,client_uid,authority_name),
FOREIGN KEY (client_uid,authority_name) REFERENCES g_client_authority (client_uid,authority_name) ON DELETE CASCADE
);

CREATE TABLE g_client_restriction
Expand All @@ -161,5 +236,5 @@ CREATE TABLE g_client_restriction_super_group
created_at TIMESTAMP NOT NULL,
super_group_id UUID REFERENCES g_super_group ON DELETE CASCADE,
restriction_id UUID REFERENCES g_client_restriction ON DELETE CASCADE,
PRIMARY KEY (super_group_id, restriction_id)
PRIMARY KEY (super_group_id,restriction_id)
);
89 changes: 0 additions & 89 deletions app/src/main/resources/mock/README.md

This file was deleted.

Loading

0 comments on commit 7e23745

Please sign in to comment.