系统SHALL定义HIS接口返回数据与IRIS数据库表字段之间的映射规则,确保数据准确入库。映射规则SHALL覆盖以下数据对象:
患者就诊主信息(result[]中的顶层字段 → DRG_HIS_PatientAdm表):
patID → PatIDadmID → AdmID(主键)patName → PatNamepatSexCode → PatSexCodepatSexDesc → PatSexDescpatNo → PatNopatMedicalNo → PatMedicalNoadmDocDesc → AdmDocDescadmNurDesc → AdmNurDescadmDateTime → AdmDateTimeadmInDays → AdmInDaysadmDiag → AdmDiaginLocDesc → InLocDescinWardDesc → InWardDescDRG分组参数(result[].drgParams.result → DRG_HIS_DRGParams表):
admID → AdmID(外键,关联患者就诊主表)psnNo → PsnNoinsuranceAreaCode → InsuranceAreaCodemdtrtareaAreaCode → MdtrtareaAreaCodeinsuType → InsuTypemainDiagnosisCode → MainDiagnosisCodemainOperationCode → MainOperationCodesex → Sexage → AgetotalCost → TotalCost手术信息(result[].drgParams.result.oprnInfo[] → DRG_HIS_OprnInfo表):
admID + oprnSn → 联合主键mainFlag → MainFlagoprnCode → OprnCodeoprnName → OprnNameoprnDate → OprnDatepatID、admID、drgParams等所有字段)DRG_HIS_PatientAdm表,将drgParams.result字段写入DRG_HIS_DRGParams表,将drgParams.result.oprnInfo数组逐条写入DRG_HIS_OprnInfo表drgParams.errorCode不为"0"(如errorCode: "1", errorMessage: "该患者无医保信息")DRG_HIS_PatientAdm),但DRG_HIS_DRGParams表中该admID的记录留空或标记DrgParamsStatus: "error",不影响主表数据入库系统SHALL在映射过程中自动处理HIS接口返回数据类型与IRIS表字段类型之间的差异:
"2026-06-11 09:22")转换为IRIS %TimeStamp类型"5999886")转换为IRIS %Integer类型"1146.96")转换为IRIS %Numeric类型admDateTime: "2026-06-11 09:22"%TimeStamp格式(2026-06-11 09:22:00)后存入数据库drgParams.result.totalCost: 1146.96(JSON数字类型)%Numeric类型存入DRG_HIS_DRGParams.TotalCost字段系统SHALL对以下关键字段进行非空校验,若校验失败则记录错误并跳过该条数据:
admID(就诊ID):不能为空,作为唯一键patID(患者ID):不能为空patMedicalNo(病案号):不能为空admID字段或admID为null"admID为空,跳过该条数据"),不影响其他数据的同步admID、patID、patMedicalNo均非空