mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-20 21:41:55 +00:00
feat(BE-115,116,117): implement chickin CRUD, approve logic, and stock availabilit
This commit is contained in:
@@ -1,18 +0,0 @@
|
||||
CREATE TABLE project_chick_ins (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
project_floc_id BIGINT NOT NULL REFERENCES project_flocs (id),
|
||||
product_warehouse_id BIGINT NOT NULL REFERENCES product_warehouses (id),
|
||||
chick_in_date DATE NOT NULL,
|
||||
quantity NUMERIC(15, 3) NOT NULL CHECK (quantity > 0),
|
||||
note TEXT,
|
||||
created_by BIGINT NOT NULL REFERENCES users (id),
|
||||
created_at TIMESTAMPTZ DEFAULT now(),
|
||||
updated_at TIMESTAMPTZ DEFAULT now(),
|
||||
deleted_at TIMESTAMPTZ
|
||||
);
|
||||
|
||||
CREATE INDEX idx_project_chick_ins_project_floc_id ON project_chick_ins (project_floc_id);
|
||||
|
||||
CREATE INDEX idx_project_chick_ins_product_warehouse_id ON project_chick_ins (product_warehouse_id);
|
||||
|
||||
CREATE INDEX idx_project_chick_ins_created_by ON project_chick_ins (created_by);
|
||||
@@ -1 +0,0 @@
|
||||
DROP TABLE IF EXISTS project_chick_ins;
|
||||
@@ -0,0 +1 @@
|
||||
DROP TABLE IF EXISTS project_chickins;
|
||||
@@ -0,0 +1,21 @@
|
||||
CREATE TABLE project_chickins (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
project_floc_id BIGINT NOT NULL,
|
||||
chick_in_date DATE NOT NULL,
|
||||
quantity NUMERIC(15, 3) NOT NULL,
|
||||
note TEXT,
|
||||
created_by BIGINT NOT NULL,
|
||||
created_at TIMESTAMPTZ DEFAULT now(),
|
||||
updated_at TIMESTAMPTZ DEFAULT now(),
|
||||
deleted_at TIMESTAMPTZ
|
||||
);
|
||||
|
||||
CREATE INDEX idx_project_chickins_project_floc_id ON project_chickins (project_floc_id);
|
||||
|
||||
CREATE INDEX idx_project_chickins_created_by ON project_chickins (created_by);
|
||||
|
||||
ALTER TABLE project_chickins
|
||||
ADD CONSTRAINT fk_project_floc_id FOREIGN KEY (project_floc_id) REFERENCES project_flocks (id);
|
||||
|
||||
ALTER TABLE project_chickins
|
||||
ADD CONSTRAINT fk_created_by FOREIGN KEY (created_by) REFERENCES users (id);
|
||||
@@ -0,0 +1 @@
|
||||
DROP TABLE IF EXISTS stock_availabilities;
|
||||
@@ -0,0 +1,15 @@
|
||||
CREATE TABLE stock_availabilities (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
entity_type VARCHAR(50) NOT NULL,
|
||||
entity_id BIGINT NOT NULL,
|
||||
product_id BIGINT,
|
||||
quantity NUMERIC(15, 3) NOT NULL DEFAULT 0,
|
||||
reserved_quantity NUMERIC(15, 3) NOT NULL DEFAULT 0,
|
||||
unit VARCHAR(20),
|
||||
last_updated TIMESTAMPTZ DEFAULT now(),
|
||||
created_at TIMESTAMPTZ DEFAULT now(),
|
||||
deleted_at TIMESTAMPTZ
|
||||
);
|
||||
|
||||
ALTER TABLE stock_availabilities
|
||||
ADD CONSTRAINT fk_product_id FOREIGN KEY (product_id) REFERENCES products (id);
|
||||
@@ -0,0 +1 @@
|
||||
DROP TABLE IF EXISTS audit_logs;
|
||||
@@ -0,0 +1,13 @@
|
||||
CREATE TABLE audit_logs (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
table_name VARCHAR(100) NOT NULL,
|
||||
record_id BIGINT NOT NULL,
|
||||
action VARCHAR(30) NOT NULL,
|
||||
before_data JSONB,
|
||||
after_data JSONB,
|
||||
changed_by BIGINT,
|
||||
created_at TIMESTAMPTZ DEFAULT now()
|
||||
);
|
||||
|
||||
ALTER TABLE audit_logs
|
||||
ADD CONSTRAINT fk_changed_by FOREIGN KEY (changed_by) REFERENCES users (id);
|
||||
Reference in New Issue
Block a user