完善采购审批流程、企业微信通知和采购专用章

This commit is contained in:
reddaniel110
2026-09-16 11:45:21 +08:00
parent 4876d8805d
commit bf952196fa
58 changed files with 3451 additions and 1909 deletions
+109
View File
@@ -0,0 +1,109 @@
CREATE TABLE materials (
id INTEGER NOT NULL,
code VARCHAR(80) NOT NULL,
spec VARCHAR(300),
unit VARCHAR(20),
price FLOAT,
active BOOLEAN,
PRIMARY KEY (id)
)
;
CREATE TABLE suppliers (
id INTEGER NOT NULL,
code VARCHAR(50),
name VARCHAR(200) NOT NULL,
contact VARCHAR(50),
phone VARCHAR(50),
tax_no VARCHAR(80),
bank_name VARCHAR(120),
bank_account VARCHAR(80),
payment_terms VARCHAR(120),
active BOOLEAN,
PRIMARY KEY (id)
)
;
CREATE TABLE users (
id INTEGER NOT NULL,
username VARCHAR(50) NOT NULL,
password_hash VARCHAR(200) NOT NULL,
name VARCHAR(50) NOT NULL,
role VARCHAR(20) NOT NULL,
active BOOLEAN,
created_at DATETIME,
PRIMARY KEY (id),
UNIQUE (username)
)
;
CREATE TABLE orders (
id INTEGER NOT NULL,
order_no VARCHAR(50) NOT NULL,
doc_type VARCHAR(20) NOT NULL,
supplier_name VARCHAR(200),
supplier_contact VARCHAR(50),
supplier_phone VARCHAR(50),
supplier_tax_no VARCHAR(80),
supplier_bank_name VARCHAR(120),
supplier_bank_account VARCHAR(80),
payment_terms VARCHAR(120),
our_company VARCHAR(200),
our_contact VARCHAR(50),
our_phone VARCHAR(50),
our_tax_no VARCHAR(80),
tax_rate VARCHAR(30),
order_date VARCHAR(20),
delivery_place VARCHAR(300),
note TEXT,
total_amount FLOAT,
status VARCHAR(20),
created_by INTEGER,
created_by_name VARCHAR(50),
created_at DATETIME,
submitted_at DATETIME,
reviewed_by VARCHAR(50),
reviewed_at DATETIME,
approved_by VARCHAR(50),
approved_at DATETIME,
reject_reason TEXT,
PRIMARY KEY (id),
FOREIGN KEY(created_by) REFERENCES users (id)
)
;
CREATE TABLE approval_logs (
id INTEGER NOT NULL,
order_id INTEGER,
action VARCHAR(50),
user_name VARCHAR(50),
comment TEXT,
created_at DATETIME,
PRIMARY KEY (id),
FOREIGN KEY(order_id) REFERENCES orders (id)
)
;
CREATE TABLE order_items (
id INTEGER NOT NULL,
order_id INTEGER,
seq INTEGER,
material_code VARCHAR(80),
material_spec VARCHAR(300),
unit VARCHAR(20),
qty FLOAT,
price FLOAT,
amount FLOAT,
delivery_date VARCHAR(30),
remark VARCHAR(200),
PRIMARY KEY (id),
FOREIGN KEY(order_id) REFERENCES orders (id)
)
;