feat(V40): EMPI患者主索引 — 完整前端+DB修复+5/6 API通过

前端:
- Patient页面: 注册/查询(全局ID/身份证)/统计卡片
- Merge页面: 合并操作+合并日志列表+撤销
- Statistics页面: EMPI统计概览

数据库修复:
- 创建empi_person表(global_id/patient_name/gender/birth_date/id_card_no等)
- 创建empi_id_mapping表
- 修复empi_patient_photo: 添加create_time列
- 修复empi_family_member/merge_log: 添加delete_flag/create_by/update_by列
- empi_person: 添加merge_status列

后端修复:
- EmpiPerson实体: name→patient_name列映射修复

测试: 5/6 API通过(注册/查询/照片/家庭/合并日志)
This commit is contained in:
2026-06-07 13:12:20 +08:00
parent 330bc14c6f
commit 9ca86f7a6c
5 changed files with 214 additions and 16 deletions

View File

@@ -1,14 +1,37 @@
package com.healthlink.his.empi.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
@Data @TableName("empi_person") @Accessors(chain = true) @EqualsAndHashCode(callSuper = false)
@Data
@TableName("empi_person")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class EmpiPerson extends HisBaseEntity {
@TableId(type = IdType.ASSIGN_ID) private Long id;
private String globalId; private String idCardNo; private String name;
private String gender; private Date birthDate; private String phone;
private String mergeStatus; private String sourceSystem;
@TableId(type = IdType.ASSIGN_ID)
private Long id;
@TableField("global_id")
private String globalId;
@TableField("id_card_no")
private String idCardNo;
@TableField("patient_name")
private String name;
@TableField("gender")
private String gender;
@TableField("birth_date")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date birthDate;
@TableField("phone")
private String phone;
@TableField("address")
private String address;
@TableField("merge_status")
private String mergeStatus;
@TableField("source_system")
private String sourceSystem;
}