init
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
CREATE TABLE company (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(255) NOT NULL,
|
||||
active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
CREATE TABLE employee (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
company_id BIGINT NOT NULL,
|
||||
first_name VARCHAR(255) NOT NULL,
|
||||
last_name VARCHAR(255) NOT NULL,
|
||||
active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT fk_employee_company FOREIGN KEY (company_id) REFERENCES company(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
CREATE TABLE product (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(255) NOT NULL,
|
||||
price_cents INT NOT NULL DEFAULT 0,
|
||||
icon_placeholder VARCHAR(50) DEFAULT 'coffee',
|
||||
active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
CREATE TABLE tally_entry (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
employee_id BIGINT NOT NULL,
|
||||
product_id BIGINT NOT NULL,
|
||||
month_key VARCHAR(7) NOT NULL,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT fk_tally_employee FOREIGN KEY (employee_id) REFERENCES employee(id),
|
||||
CONSTRAINT fk_tally_product FOREIGN KEY (product_id) REFERENCES product(id),
|
||||
INDEX idx_tally_month (month_key),
|
||||
INDEX idx_tally_employee_month (employee_id, month_key)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
CREATE TABLE access_link (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
token VARCHAR(64) NOT NULL UNIQUE,
|
||||
role VARCHAR(20) NOT NULL,
|
||||
company_id BIGINT,
|
||||
description VARCHAR(255),
|
||||
active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT fk_access_link_company FOREIGN KEY (company_id) REFERENCES company(id),
|
||||
CONSTRAINT chk_role CHECK (role IN ('COMPANY_ADMIN', 'PROVIDER_ADMIN'))
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
Reference in New Issue
Block a user