Files
gxtyzx-java/sql/11-approval-facility.sql
T

42 lines
2.2 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- 设施价格表(设施损坏修复与租用价格表)业务表(可重复执行)
-- 目标库:db_gxtyzx(master)
-- 执行顺序:05-approval_phase2.sql -> ... -> 11-approval-facility.sql
--
-- ADR 0012:审批实例即版本,不建独立价格表主数据表。
-- approval_facility_form 每个审批实例一行,业务字段只有生效日期(必填)
-- approval_facility_item 实例的明细行,行即该版本条目,金额服务端重算
--
-- 当前生效版本 = 同租户同 flow_code 下 status=ARCHIVED 且 effective_date <= today
-- 中 effective_date 最大者;历史版本按 effective_date 倒序(查询时算,不落库)。
CREATE TABLE IF NOT EXISTS approval_facility_form (
id BIGINT NOT NULL AUTO_INCREMENT,
tenant_id INT NOT NULL DEFAULT 10150,
instance_id BIGINT NOT NULL,
effective_date DATE NOT NULL COMMENT '生效日期,不允许早于归档日',
create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id),
UNIQUE KEY uk_instance (instance_id),
KEY idx_effective (tenant_id, effective_date)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='设施价格表';
CREATE TABLE IF NOT EXISTS approval_facility_item (
id BIGINT NOT NULL AUTO_INCREMENT,
tenant_id INT NOT NULL DEFAULT 10150,
instance_id BIGINT NOT NULL,
line_no INT NOT NULL COMMENT '行号,按提交顺序 1..N',
item_name VARCHAR(200) NOT NULL COMMENT '名称',
location VARCHAR(200) DEFAULT NULL COMMENT '位置',
unit VARCHAR(20) NOT NULL COMMENT '单位',
quantity DECIMAL(12,3) NOT NULL COMMENT '数量',
unit_price DECIMAL(12,2) NOT NULL COMMENT '单价',
amount DECIMAL(12,2) NOT NULL COMMENT '金额,服务端按 quantity × unit_price 重算',
remark VARCHAR(200) DEFAULT NULL COMMENT '备注',
create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id),
UNIQUE KEY uk_instance_line (instance_id, line_no),
KEY idx_instance (instance_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='设施价格表明细';