Files
gxtyzx-java/sql/07-approval-receipt.sql
T

28 lines
1.6 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)
-- 执行顺序:01-approval.sql -> 02-approval_menu.sql -> 03-approval_orgs_roles.sql
-- -> 04-approval_role_grants.sql -> 05-approval_phase2.sql -> 07-approval-receipt.sql
--
-- 覆盖 ADR 0014(收据申请单):金额、付款方(检索主语)、事由、收据号(出纳回填)、申请日期;
-- 不设「用途分类」等模板之外的自造字段。1:1 审批实例,业务表不随引擎回滚,
-- 撤回/驳回由单据服务显式清空 receipt_no 并写 approval_field_change。
--
-- 收据号唯一性范围是「同租户 + 同 flow_code + 实例状态非 REJECTED/WITHDRAWN」,
-- 跨表条件无法用唯一索引表达,因此这里只建普通索引供占用查询。
CREATE TABLE IF NOT EXISTS approval_receipt_form (
id BIGINT NOT NULL AUTO_INCREMENT,
tenant_id INT NOT NULL DEFAULT 10150,
instance_id BIGINT NOT NULL,
amount DECIMAL(12,2) NOT NULL COMMENT '金额(元),0~99999999.99',
payer_name VARCHAR(200) NOT NULL COMMENT '付款方,检索主语',
reason VARCHAR(500) NOT NULL COMMENT '事由',
receipt_no VARCHAR(64) DEFAULT NULL COMMENT '收据号,出纳回填;撤回/驳回清空',
apply_date DATE 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 (instance_id),
KEY idx_tenant_receipt_no (tenant_id, receipt_no)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='收据申请单';