changed apigw configs, updated db tables
This commit is contained in:
@@ -5,87 +5,156 @@ CREATE SCHEMA IF NOT EXISTS safeqr;
|
||||
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
|
||||
|
||||
-- Create Enum for scan_history status
|
||||
CREATE TYPE scan_status AS ENUM ('active', 'inactive');
|
||||
CREATE TYPE scan_status AS ENUM ('ACTIVE', 'INACTIVE');
|
||||
|
||||
-- safeqr."user" definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr."user";
|
||||
|
||||
-- user table, need "" because user is a reserved word is postgres
|
||||
CREATE TABLE safeqr."user" (
|
||||
id VARCHAR(255) PRIMARY KEY,
|
||||
name VARCHAR(255),
|
||||
email VARCHAR(255),
|
||||
source VARCHAR(255),
|
||||
date_created TIMESTAMPTZ DEFAULT now(),
|
||||
date_updated TIMESTAMPTZ DEFAULT now(),
|
||||
roles TEXT[],
|
||||
status VARCHAR(255) DEFAULT 'ACTIVE'
|
||||
);
|
||||
id varchar(255) NOT NULL,
|
||||
"name" varchar(255) NULL,
|
||||
email varchar(255) NULL,
|
||||
"source" varchar(255) NULL,
|
||||
date_created timestamptz DEFAULT now() NULL,
|
||||
date_updated timestamptz DEFAULT now() NULL,
|
||||
roles _text NULL,
|
||||
status varchar(255) DEFAULT 'ACTIVE'::character varying NULL,
|
||||
gm
|
||||
|
||||
-- safeqr.qr_code_types definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr.qr_code_types;
|
||||
|
||||
-- Create QR_Code_Types table
|
||||
CREATE TABLE safeqr.qr_code_types (
|
||||
id SERIAL PRIMARY KEY,
|
||||
type VARCHAR(100) NOT NULL,
|
||||
description VARCHAR(100),
|
||||
prefix VARCHAR(50),
|
||||
table_name VARCHAR(100)
|
||||
id bigserial NOT NULL,
|
||||
"type" varchar(255) NOT NULL,
|
||||
description varchar(255) NULL,
|
||||
prefix varchar(255) NULL,
|
||||
table_name varchar(255) NULL,
|
||||
CONSTRAINT qr_code_types_pkey PRIMARY KEY (id)
|
||||
);
|
||||
|
||||
-- Create QR_Code table
|
||||
-- Allow for nullable user id for testing KIV
|
||||
-- safeqr.qr_code definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr.qr_code;
|
||||
|
||||
CREATE TABLE safeqr.qr_code (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
qr_code_type_id INT REFERENCES safeqr.qr_code_types(id),
|
||||
user_id VARCHAR(255) REFERENCES safeqr."user"(id) NULL,
|
||||
contents VARCHAR(4096),
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
id uuid DEFAULT safeqr.uuid_generate_v4() NOT NULL,
|
||||
qr_code_type_id int8 NULL,
|
||||
user_id varchar(255) NULL,
|
||||
contents text NULL,
|
||||
created_at timestamptz DEFAULT CURRENT_TIMESTAMP NULL,
|
||||
CONSTRAINT qr_code_pkey PRIMARY KEY (id),
|
||||
CONSTRAINT qr_code_qr_code_type_id_fkey FOREIGN KEY (qr_code_type_id) REFERENCES safeqr.qr_code_types(id),
|
||||
CONSTRAINT qr_code_user_id_fkey FOREIGN KEY (user_id) REFERENCES safeqr."user"(id)
|
||||
);
|
||||
|
||||
-- Create Scan_History table
|
||||
-- safeqr.scan_history definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr.scan_history;
|
||||
|
||||
CREATE TABLE safeqr.scan_history (
|
||||
id SERIAL PRIMARY KEY,
|
||||
qr_code_id UUID REFERENCES safeqr.qr_code(id),
|
||||
user_id VARCHAR(255) REFERENCES safeqr."user"(id),
|
||||
status scan_status DEFAULT 'active'
|
||||
id bigserial NOT NULL,
|
||||
qr_code_id uuid NULL,
|
||||
user_id varchar(255) NULL,
|
||||
status varchar(255) DEFAULT 'ACTIVE'::safeqr.scan_status NULL,
|
||||
date_created timestamptz DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
date_updated timestamptz DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
bookmarked bool DEFAULT false NULL,
|
||||
CONSTRAINT scan_history_pkey PRIMARY KEY (id),
|
||||
CONSTRAINT scan_history_fk FOREIGN KEY (qr_code_id) REFERENCES safeqr.qr_code(id) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- Create Scan_Bookmark table
|
||||
-- safeqr.scan_bookmark definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr.scan_bookmark;
|
||||
|
||||
CREATE TABLE safeqr.scan_bookmark (
|
||||
id SERIAL PRIMARY KEY,
|
||||
qr_code_id UUID REFERENCES safeqr.qr_code(id),
|
||||
user_id VARCHAR(255) REFERENCES safeqr."user"(id),
|
||||
active VARCHAR(7) CHECK (active IN ('ACTIVE', 'DELETED'))
|
||||
id bigserial NOT NULL,
|
||||
qr_code_id uuid NULL,
|
||||
user_id varchar(255) NULL,
|
||||
status varchar(255) DEFAULT 'ACTIVE'::safeqr.bookmark_status NULL,
|
||||
date_created timestamptz DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
date_updated timestamptz DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
CONSTRAINT scan_bookmark_pkey PRIMARY KEY (id),
|
||||
CONSTRAINT scan_bookmark_fk FOREIGN KEY (qr_code_id) REFERENCES safeqr.qr_code(id) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- Create URL table
|
||||
-- safeqr.url definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr.url;
|
||||
|
||||
CREATE TABLE safeqr.url (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
qr_code_id UUID REFERENCES safeqr.qr_code(id),
|
||||
url VARCHAR(2048),
|
||||
query VARCHAR(2048),
|
||||
fragment VARCHAR(2048)
|
||||
id uuid DEFAULT safeqr.uuid_generate_v4() NOT NULL,
|
||||
qr_code_id uuid NULL,
|
||||
"domain" text NULL,
|
||||
subdomain text NULL,
|
||||
top_level_domain text NULL,
|
||||
query text NULL,
|
||||
fragment text NULL,
|
||||
redirect int4 DEFAULT 0 NULL,
|
||||
"path" text NULL,
|
||||
redirect_chain _text NULL,
|
||||
hsts_header _text NULL,
|
||||
ssl_stripping _bool NULL,
|
||||
CONSTRAINT url_pkey PRIMARY KEY (id),
|
||||
CONSTRAINT url_qr_code_id_fkey FOREIGN KEY (qr_code_id) REFERENCES safeqr.qr_code(id)
|
||||
);
|
||||
|
||||
-- Create Text table
|
||||
CREATE TABLE safeqr.text (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
qr_code_id UUID REFERENCES safeqr.qr_code(id),
|
||||
text VARCHAR(2048)
|
||||
-- safeqr."text" definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr."text";
|
||||
|
||||
CREATE TABLE safeqr."text" (
|
||||
id uuid DEFAULT safeqr.uuid_generate_v4() NOT NULL,
|
||||
qr_code_id uuid NULL,
|
||||
"text" varchar(2048) NULL,
|
||||
CONSTRAINT text_pkey PRIMARY KEY (id),
|
||||
CONSTRAINT text_fk FOREIGN KEY (qr_code_id) REFERENCES safeqr.qr_code(id) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- Create Phone table
|
||||
-- safeqr.phone definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr.phone;
|
||||
|
||||
CREATE TABLE safeqr.phone (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
qr_code_id UUID REFERENCES safeqr.qr_code(id),
|
||||
phone VARCHAR(100)
|
||||
id uuid DEFAULT safeqr.uuid_generate_v4() NOT NULL,
|
||||
qr_code_id uuid NULL,
|
||||
phone text NULL,
|
||||
CONSTRAINT phone_pkey PRIMARY KEY (id),
|
||||
CONSTRAINT phone_fk FOREIGN KEY (qr_code_id) REFERENCES safeqr.qr_code(id) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- Create SMS table
|
||||
-- safeqr.sms definition
|
||||
|
||||
-- Drop table
|
||||
|
||||
-- DROP TABLE safeqr.sms;
|
||||
|
||||
CREATE TABLE safeqr.sms (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
qr_code_id UUID REFERENCES safeqr.qr_code(id),
|
||||
phone VARCHAR(100),
|
||||
message VARCHAR(160)
|
||||
id uuid DEFAULT safeqr.uuid_generate_v4() NOT NULL,
|
||||
qr_code_id uuid NULL,
|
||||
phone text NULL,
|
||||
message text NULL,
|
||||
CONSTRAINT sms_pkey PRIMARY KEY (id),
|
||||
CONSTRAINT sms_fk FOREIGN KEY (qr_code_id) REFERENCES safeqr.qr_code(id)
|
||||
);
|
||||
|
||||
-- Create Email table
|
||||
|
||||
Reference in New Issue
Block a user