201 lines
13 KiB
Python
201 lines
13 KiB
Python
"""科研捐赠管理 — 数据模型"""
|
|
from datetime import datetime
|
|
|
|
from sqlalchemy import Column, DateTime, Integer, Numeric, SmallInteger, String
|
|
|
|
from app.models.base import Base
|
|
|
|
|
|
class BizResearchDonation(Base):
|
|
"""科研捐赠主表 biz_research_donation"""
|
|
|
|
__tablename__ = "biz_research_donation"
|
|
|
|
id = Column(String(64), primary_key=True, comment="主键ID")
|
|
donation_no = Column(String(64), nullable=False, comment="捐赠协议编号")
|
|
donation_status = Column(String(16), nullable=False, default="dsx", comment="状态 dsx/sxz/ygq/yzf/zckc")
|
|
donation_date = Column(String(8), nullable=True, comment="捐赠日期YYYYMMDD")
|
|
source_type = Column(String(20), nullable=False, default="direct", comment="来源类型 direct/from_storage")
|
|
source_protocol_id = Column(String(64), nullable=True, comment="来源协议ID")
|
|
consent_form_urls = Column(String(4000), nullable=True, comment="知情同意书附件URL(逗号分隔)")
|
|
attachment_urls = Column(String(4000), nullable=True, comment="其他附件URL(逗号分隔)")
|
|
collector_user_id = Column(String(64), nullable=True, comment="采集专员用户ID")
|
|
effective_time = Column(DateTime, nullable=True, comment="生效时间")
|
|
effective_desc = Column(String(512), nullable=True, comment="生效描述")
|
|
expire_time = Column(DateTime, nullable=True, comment="过期时间")
|
|
expire_desc = Column(String(512), nullable=True, comment="过期描述")
|
|
void_time = Column(DateTime, nullable=True, comment="作废时间")
|
|
void_desc = Column(String(512), nullable=True, comment="作废描述")
|
|
to_storage_time = Column(DateTime, nullable=True, comment="转存储时间")
|
|
to_storage_desc = Column(String(512), nullable=True, comment="转存储描述")
|
|
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 BizResearchDonationAudit(Base):
|
|
"""科研捐赠审核记录 biz_research_donation_audit"""
|
|
|
|
__tablename__ = "biz_research_donation_audit"
|
|
|
|
id = Column(String(64), primary_key=True, comment="主键ID")
|
|
research_donation_id = Column(String(64), nullable=False, comment="科研捐赠ID")
|
|
auditor_user_id = Column(String(64), nullable=True, comment="审核人")
|
|
audit_remark = Column(String(1000), nullable=True, comment="审核备注")
|
|
audit_status = Column(String(16), nullable=False, comment="审核状态 shtg/shth")
|
|
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 BizResearchDonationParty(Base):
|
|
"""科研捐赠当事人信息 biz_research_donation_party"""
|
|
|
|
__tablename__ = "biz_research_donation_party"
|
|
|
|
id = Column(String(64), primary_key=True, comment="主键ID")
|
|
research_donation_id = Column(String(64), nullable=False, comment="科研捐赠ID")
|
|
customer_id = Column(String(64), nullable=True, comment="客户ID")
|
|
mother_name = Column(String(100), nullable=True, comment="母亲姓名")
|
|
mother_phone = Column(String(32), nullable=True, comment="母亲电话")
|
|
mother_id_card = Column(String(32), nullable=True, comment="母亲身份证号")
|
|
mother_birth_ym = Column(String(6), nullable=True, comment="母亲出生年月YYYYMM")
|
|
mother_ethnic = Column(String(32), nullable=True, comment="母亲民族")
|
|
mother_address = Column(String(512), nullable=True, comment="母亲地址")
|
|
father_name = Column(String(100), nullable=True, comment="父亲姓名")
|
|
father_phone = Column(String(32), nullable=True, comment="父亲电话")
|
|
father_id_card = Column(String(32), nullable=True, comment="父亲身份证号")
|
|
newborn_name = Column(String(100), nullable=True, comment="新生儿姓名")
|
|
newborn_id_card = Column(String(32), nullable=True, comment="新生儿身份证号")
|
|
newborn_delivery_time = Column(DateTime, nullable=True, comment="新生儿分娩时间")
|
|
newborn_sex = Column(String(1), nullable=True, comment="新生儿性别")
|
|
delivery_mode = Column(String(16), nullable=True, comment="分娩方式")
|
|
birth_order = Column(Integer, nullable=True, comment="出生顺序")
|
|
newborn_weight_gram = Column(Integer, nullable=True, comment="新生儿体重(克)")
|
|
apgar_1min = Column(Numeric(4, 1), nullable=True, comment="Apgar 1分钟评分")
|
|
apgar_5min = Column(Numeric(4, 1), nullable=True, comment="Apgar 5分钟评分")
|
|
collector_user_id = Column(String(64), nullable=True, comment="采集专员用户ID")
|
|
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 BizResearchDonationCollection(Base):
|
|
"""科研捐赠采集信息 biz_research_donation_collection"""
|
|
|
|
__tablename__ = "biz_research_donation_collection"
|
|
|
|
id = Column(String(64), primary_key=True, comment="主键ID")
|
|
research_donation_id = Column(String(64), nullable=False, comment="科研捐赠ID")
|
|
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")
|
|
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="租户编号")
|
|
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 BizResearchDonationSample(Base):
|
|
"""科研捐赠样本信息 biz_research_donation_sample(无金额字段)"""
|
|
|
|
__tablename__ = "biz_research_donation_sample"
|
|
|
|
id = Column(String(64), primary_key=True, comment="主键ID")
|
|
research_donation_id = Column(String(64), nullable=False, comment="科研捐赠ID")
|
|
sample_type_id = Column(String(64), nullable=True, comment="样本类型ID")
|
|
sample_code_id = Column(String(64), nullable=True, comment="样本编码ID")
|
|
sample_code = Column(String(32), nullable=True, comment="样本编码")
|
|
collect_amount = Column(Numeric(18, 4), nullable=True, comment="采集量")
|
|
unit_id = Column(String(64), nullable=True, comment="单位ID")
|
|
storage_years = Column(Integer, nullable=True, comment="存储年限")
|
|
sample_status = Column(String(16), nullable=True, comment="样本状态")
|
|
storage_in_date = Column(String(8), nullable=True, comment="入库日期YYYYMMDD")
|
|
detect_start_date = Column(String(8), nullable=True, comment="检测开始日期YYYYMMDD")
|
|
void_date = Column(String(8), nullable=True, comment="作废日期YYYYMMDD")
|
|
storage_expire_date = Column(String(8), nullable=True, comment="存储到期日期YYYYMMDD")
|
|
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 BizResearchDonationSampleTransport(Base):
|
|
"""科研捐赠样本运输 biz_research_donation_sample_transport"""
|
|
|
|
__tablename__ = "biz_research_donation_sample_transport"
|
|
|
|
id = Column(String(64), primary_key=True, comment="主键ID")
|
|
research_donation_id = Column(String(64), nullable=False, comment="科研捐赠ID")
|
|
sample_id = Column(String(64), nullable=False, comment="样本ID")
|
|
sample_code = Column(String(32), nullable=True, comment="样本编码快照")
|
|
transport_type = Column(String(16), nullable=False, comment="kdys快递运输 ryxd人员携带")
|
|
express_company_id = Column(String(64), nullable=True, comment="快递公司ID")
|
|
waybill_no = Column(String(128), nullable=True, comment="快递单号")
|
|
dest_site_id = Column(String(64), nullable=True, comment="目的站点ID")
|
|
express_fee = Column(Numeric(18, 2), nullable=True, comment="快递费用(元)")
|
|
eta_time = Column(DateTime, nullable=True, comment="预计到达时间")
|
|
carrier_name = Column(String(100), nullable=True, comment="携带人员姓名")
|
|
carrier_phone = Column(String(32), nullable=True, comment="携带人员联系电话")
|
|
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 BizProtocolDonationConvert(Base):
|
|
"""细胞存储协议与科研捐赠转移关联 biz_protocol_donation_convert"""
|
|
|
|
__tablename__ = "biz_protocol_donation_convert"
|
|
|
|
id = Column(String(64), primary_key=True, comment="主键ID")
|
|
convert_type = Column(String(32), nullable=False, comment="storage_to_research/research_to_storage")
|
|
protocol_id = Column(String(64), nullable=False, comment="采集协议单ID")
|
|
research_donation_id = Column(String(64), nullable=False, comment="科研捐赠单ID")
|
|
biz_no = Column(String(64), nullable=False, comment="转移完成时共用编号快照")
|
|
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="删除标记")
|