feat(db): add biz_sample_storage_cert_qc for storage-cert QC payload.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
zlwuandCursor committed 2026-10-09 12:31:13 +08:00
1 parent 55ed0d8929
commit fac7b87728
2 files changed
+54 -1

No files matched your search

+30 -1
View File
@@ -334,6 +334,10 @@ class BizCustomer(Base):
sex = Column(CHAR(1), nullable=True, default="2", comment="性别(0男1女2未知)")
id_card_no = Column(String(32), nullable=True, comment="身份证号")
age = Column(Integer, nullable=True, comment="年龄")
birth_ym = Column(CHAR(6), nullable=True, comment="出生年月YYYYMM")
ethnic = Column(String(32), nullable=True, comment="民族")
email = Column(String(128), nullable=True, comment="邮箱")
address = Column(String(512), nullable=True, comment="家庭住址")
phone_no = Column(String(32), nullable=True, comment="联系电话")
customer_tags = Column(String(512), nullable=True, comment="客户标签,逗号分隔")
tenant_no = Column(String(64), nullable=False, default="zkxw", comment="租户编号")
@@ -1496,7 +1500,8 @@ class BizProtocolCollectionInfo(Base):
region_id = Column(String(64), nullable=True, comment="区域ID")
hospital_id = Column(String(64), nullable=True, comment="医院ID")
medical_staff = Column(String(200), nullable=True, comment="医护人员")
sales_user_id = Column(String(64), nullable=True, comment="销售人员用户ID")
sales_user_id = Column(String(64), nullable=True, comment="市场专员用户ID")
region_manager_user_id = Column(String(64), nullable=True, comment="地区经理用户ID")
sample_collect_time = Column(DateTime, nullable=True, comment="样本采集时间")
maternal_blood_collect_time = Column(DateTime, nullable=True, comment="母血采集时间")
tenant_no = Column(String(64), nullable=False, default="zkxw", comment="租户编号")
@@ -1577,6 +1582,7 @@ class BizSampleFreight(Base):
__tablename__ = "biz_sample_freight"
id = Column(String(64), primary_key=True, comment="主键ID")
freight_no = Column(String(32), nullable=False, default="", comment="运费批次号 YF+YYYYMMDD+序号")
transport_mode = Column(String(100), nullable=False, default="", comment="运输方式字典值")
freight_amount = Column(Numeric(18, 2), nullable=False, default=0, comment="运费(元)")
tenant_no = Column(String(64), nullable=False, default="zkxw", comment="租户编号")
@@ -1659,6 +1665,29 @@ class BizProtocolStorageCert(Base):
del_flag = Column(SmallInteger, nullable=False, default=0, comment="删除标记")
class BizSampleStorageCertQc(Base):
"""样本储存证质检信息 biz_sample_storage_cert_qc"""
__tablename__ = "biz_sample_storage_cert_qc"
id = Column(String(64), primary_key=True, comment="主键ID")
sample_code = Column(String(32), nullable=False, comment="样本编码")
collection_protocol_id = Column(String(64), nullable=True, comment="采集协议单ID冗余")
qc_work_order_id = Column(String(64), nullable=True, comment="最近填写来源工单ID")
sample_type_key = Column(String(32), nullable=False, comment="perinatal_hsc|uc_msc")
payload = Column(Text, nullable=False, comment="业务字段 JSON")
filled_flag = Column(CHAR(1), nullable=False, default="0", comment="是否已保存过 0否1是")
tenant_no = Column(String(64), nullable=False, default="zkxw", comment="租户编号")
order_num = Column(Integer, nullable=True, comment="排序号")
remark = Column(String(512), nullable=True, comment="备注")
create_by = Column(String(64), nullable=True, comment="创建人id")
create_dept_id = Column(String(64), nullable=False, default="", comment="创建人部门ID")
create_time = Column(DateTime, nullable=False, default=datetime.now, comment="创建时间")
update_by = Column(String(64), nullable=True, comment="更新人id")
update_time = Column(DateTime, nullable=False, default=datetime.now, onupdate=datetime.now, comment="更新时间")
del_flag = Column(SmallInteger, nullable=False, default=0, comment="删除标记")
class BizSampleReceptionCheckItem(Base):
"""样本接收检查项配置 biz_sample_reception_check_item"""
@@ -0,0 +1,24 @@
-- 样本级储存证质检信息(2026-10-09)
-- 对齐 docs/superpowers/specs/2026-10-09-storage-cert-qc-info-design.md
CREATE TABLE IF NOT EXISTS biz_sample_storage_cert_qc (
id VARCHAR(64) NOT NULL COMMENT '主键ID',
sample_code VARCHAR(32) NOT NULL COMMENT '样本编码',
collection_protocol_id VARCHAR(64) DEFAULT NULL COMMENT '采集协议单ID冗余',
qc_work_order_id VARCHAR(64) DEFAULT NULL COMMENT '最近填写来源工单ID',
sample_type_key VARCHAR(32) NOT NULL COMMENT 'perinatal_hsc|uc_msc',
payload TEXT NOT NULL COMMENT '业务字段 JSON',
filled_flag CHAR(1) NOT NULL DEFAULT '0' COMMENT '是否已保存过 0否1是',
tenant_no VARCHAR(64) NOT NULL DEFAULT 'zkxw' COMMENT '租户编号',
order_num INT DEFAULT NULL COMMENT '排序号',
remark VARCHAR(512) DEFAULT NULL COMMENT '备注',
create_by VARCHAR(64) DEFAULT NULL COMMENT '创建人id',
create_dept_id VARCHAR(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
create_time DATETIME NOT NULL COMMENT '创建时间',
update_by VARCHAR(64) DEFAULT NULL COMMENT '更新人id',
update_time DATETIME NOT NULL COMMENT '更新时间',
del_flag SMALLINT NOT NULL DEFAULT 0 COMMENT '删除标记',
PRIMARY KEY (id),
UNIQUE KEY uk_storage_cert_qc_tenant_sample (tenant_no, sample_code),
KEY idx_storage_cert_qc_protocol (tenant_no, collection_protocol_id, del_flag)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='样本储存证质检信息';