版本更新

This commit is contained in:
Zhang.WH
2025-09-03 15:54:41 +08:00
parent 0b93d16b64
commit 8f82322d10
3290 changed files with 154339 additions and 23829 deletions

View File

@@ -0,0 +1,95 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 文书定义:例如:门诊病历、体温单、患者护理记录单、患者跌倒压疮评估等
*
* @author wanghaiming
* @date 2025-08-14
*/
@Data
@TableName("doc_definition")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DocDefinition extends HisBaseEntity {
/**
* ID
*/
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 文书名称
*/
private String name;
/**
* 文书的版本号
*/
private String version;
/**
* 文书类型 一级菜单 ,从枚举中获取 DocTypeEnum
*/
private Integer primaryMenuEnum;
/**
* 文书类型 二级菜单,自定义
*/
private String subMenu;
/**
* 文书编码 busNo在新建时由系统自动生成
*/
private String busNo;
/**
* vue路由地址
*/
private String vueRouter;
/**
* 医院ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long hospitalId;
/**
* 是否有效 0-有效 1-无效
*/
private Integer isValid;
/**
* 显示顺序
*/
private Integer displayOrder;
/**
* 使用范围 0-暂不使用 1-全院使用 2-指定科室使用
*/
private Integer useRangeEnum;
/**
* 医生权限 DocPermissionEnum
* 文书权限 0-不限制 1-查看 2- 编辑
*/
private Integer doctorPermissionEnum;
/**
* 护士权限 DocPermissionEnum
* 文书权限 0-不限制 1-查看 2- 编辑
*/
private Integer nursingPermissionEnum;
/**
* 医技权限 DocPermissionEnum
* 文书权限 0-不限制 1-查看 2- 编辑
*/
private Integer medicalPermissionEnum;
/**
* 药剂师权限 DocPermissionEnum
* 文书权限 0-不限制 1-查看 2- 编辑
*/
private Integer pharmacistPermissionEnum;
}

View File

@@ -0,0 +1,35 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 科室文书对照表
*
* @author wanghaiming
* @date 2025-08-14
*/
@Data
@TableName("doc_definition_organization")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DocDefinitionOrganization extends HisBaseEntity {
/**
* ID
*/
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
private Long definitionId;
private String busNo;
private Long organizationId;
}

View File

@@ -0,0 +1,58 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 文档记录
*
* @author wanghaiming
* @date 2025-08-14
*/
@Data
@TableName("doc_record")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DocRecord extends HisBaseEntity {
private Long id;
/**
* 文书定义ID
*/
private Long definitionId;
private String definitionBusNo;
/**
* 文档内容 存储为JSON格式
*/
private String contentJson;
/**
* 记录状态 0草稿/暂存 1提交 2归档 3修改 DocStatusEnum 枚举类
* 0草稿/暂存 1提交 2归档 3修改
*/
private Integer statusEnum;
/**
* 记录科室ID
*/
private Long organizationId;
/**
* encounterId 就诊记录ID
*/
private Long encounterId;
/**
* patientId 病人ID
*/
private Long patientId;
private Date recordTime;
/**
* 是否编辑 0未编辑 1已编辑,当前正在编辑中
*/
private Integer isEdit;
}

View File

@@ -0,0 +1,53 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
@Data
@TableName("doc_statistics")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DocStatistics extends HisBaseEntity {
private Long id;
/**
* 记录ID
*/
private Long recordId;
/**
* 统计项定义ID
*/
private Long statisticDefinitionId;
private Long encounterId;
private Long patientId;
/**
* 统计项编码
*/
private String statisticDefinitionCode;
/**
* 记录科室ID
*/
private Long orgnizationId;
/**
* 统计值
*/
private String value;
/**
* 记录日期 yyyy-MM-dd
*/
private Date recordingDate;
/**
* 记录时间 yyyy-MM-dd HH:mm:ss
*/
private Date recordingTime;
/**
* 记录来源
*/
private String source;
}

View File

@@ -0,0 +1,49 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
@Data
@TableName("doc_statistics_definition")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DocStatisticsDefinition extends HisBaseEntity {
private Long id;
/*
属性名称
*/
private String name;
/*
属性类型 Input 、 Date 、 Checkbox 、Radio 、 Select 、 Textarea
*/
private Integer typeEnum;
/*
属性代码
*/
private String code;
/*
是否必填 1必填 0 不必填
*/
private Integer required;
/*
备注
*/
private String remark;
/*
是否统计 0不统计 1统计
*/
private Integer isStatistics;
private Integer displayOrder;
/*
单位
*/
private String unit;
}

View File

@@ -0,0 +1,29 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@Data
@TableName("doc_statistics_definition_option")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DocStatisticsDefinitionOption extends HisBaseEntity {
private Long id;
/*
属性编码
*/
private Long docStatisticsDefinitionId;
/*
当属性类型为Checkbox\Radio\Select
*/
private String option;
/*
显示顺序
*/
private Integer displayOrder;
}

View File

@@ -0,0 +1,53 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 文档模板实体类
**/
@Data
@TableName("doc_template")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DocTemplate extends HisBaseEntity {
private Long id;
/**
* 模板名称
*/
private String name;
/**
* 排序
*/
private Integer displayOrder;
/**
* 模板内容
*/
private String contextJson;
/**
* 文书定义ID
*/
private Long definitionId;
/**
* 使用范围 0-暂不使用 1-全院使用 2-指定科室使用 3-个人使用
*/
private Integer useRange;
/**
* 当useRange=1时指定机构ID
*/
private Long organizationId;
/**
* 当useRange=2时指定用户ID
*/
private Long userId;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,56 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 病历信息Entity实体
*
* @author system
* @date 2025-02-21
*/
@Data
@TableName("doc_emr")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class Emr extends HisBaseEntity {
/** ID */
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 患者ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long patientId;
/** 就诊ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long encounterId;
/** 类别编码 */
private Integer classEnum;
/** 病历信息 */
private String contextJson;
/** 病历状态 */
private String emrEnum;
/** 记录人 */
private Long recordId;
/** 记录时间 */
private Date recordTime;
}

View File

@@ -0,0 +1,40 @@
package com.openhis.document.domain;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 电子病历详情Entity实体
*
* @author system
* @date 2025-02-22
*/
@Data
@TableName("doc_emr_detail")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class EmrDetail extends HisBaseEntity {
/** ID */
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 病历ID */
private Long emrId;
/** 病历内容key */
private String emrKey;
/** 病历内容value */
private String emrValue;
}

View File

@@ -0,0 +1,37 @@
package com.openhis.document.domain;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 电子病历字典Entity实体
*
* @author system
* @date 2025-02-22
*/
@Data
@TableName("doc_emr_dict")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class EmrDict extends HisBaseEntity {
/** ID */
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 病历内容code */
private String emrKey;
/** 病历内容value */
private String emrValue;
}

View File

@@ -0,0 +1,47 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 病历模板Entity实体
*
* @author system
* @date 2025-02-21
*/
@Data
@TableName("doc_emr_template")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class EmrTemplate extends HisBaseEntity {
/** ID */
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 模板名称 */
private String templateName;
/** 模板类型 */
private String templateTypeCode;
/** 使用范围 */
private String useScopeCode;
/** 个人/科室ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long userId;
/** 病历内容 */
private String contextJson;
}

View File

@@ -0,0 +1,76 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 医嘱过程表
*
* @author WangHuan
* @date 2025-09-02
*/
@Data
@TableName("doc_order_process")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class OrderProcess extends HisBaseEntity {
/**
* ID
*/
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 名称
*/
private String name;
/** 就诊id */
private Long encounterId;
/**
* 请求id
*/
private Long requestId;
/**
* 请求表名
*/
private String requestTableName;
/**
* 原科室
*/
private Long originalOrganizationId;
/**
* 目标科室
*/
private Long targetOrganizationId;
/**
* 原病区
*/
private Long originalLocationId;
/**
* 目标病区
*/
private Long targetLocationId;
/**
* 出院方式
*/
private String outWayCode;
}

View File

@@ -0,0 +1,63 @@
package com.openhis.document.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 申请单管理Entity实体
*
* @author system
* @date 2025-02-21
*/
@Data
@TableName("doc_request_form")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class RequestForm extends HisBaseEntity {
/** ID */
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 处方号
*/
private String prescriptionNo;
/**
* 名称
*/
private String name;
/**
* 就诊ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long encounterId;
/**
* 申请人
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long requesterId;
/**
* 描述内容
*/
private String descJson;
/**
* 类型编码
*/
private String typeCode;
}

View File

@@ -0,0 +1,63 @@
package com.openhis.document.domain;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 生命体征管理Entity实体
*
* @author system
* @date 2025-06-03
*/
@Data
@TableName("doc_ital_signs")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class VitalSigns extends HisBaseEntity {
/** ID */
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 患者id */
private Long patientId;
/** 就诊id */
private Long encounterId;
/** 记录日期 */
private Date recordingDate;
/** 记录时间 */
private Date timePoint;
/** 生命体征编码 */
private String vitalSignsCode;
/** 生命体征值 */
private String vitalSignsValues;
/** 单位 */
private String units;
/** 婴儿编号 */
private Integer babyNo;
/** 科室编码 */
private Integer locationId;
/** 记录人员 */
private String recorder;
/** 备注 */
private String remake;
}

View File

@@ -0,0 +1,10 @@
package com.openhis.document.mapper;
import com.openhis.document.domain.DocDefinition;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@Repository
public interface DocDefinitionMapper extends BaseMapper<DocDefinition> {
}

View File

@@ -0,0 +1,10 @@
package com.openhis.document.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.DocDefinition;
import com.openhis.document.domain.DocDefinitionOrganization;
import org.springframework.stereotype.Repository;
@Repository
public interface DocDefinitionOrganizationMapper extends BaseMapper<DocDefinitionOrganization> {
}

View File

@@ -0,0 +1,11 @@
package com.openhis.document.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.DocRecord;
import org.springframework.stereotype.Repository;
@Repository
public interface DocRecordMapper extends BaseMapper<DocRecord> {
}

View File

@@ -0,0 +1,10 @@
package com.openhis.document.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.DocStatisticsDefinition;
import org.springframework.stereotype.Repository;
@Repository
public interface DocStatisticsDefinitionMapper extends BaseMapper<DocStatisticsDefinition> {
}

View File

@@ -0,0 +1,10 @@
package com.openhis.document.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.DocStatisticsDefinitionOption;
import org.springframework.stereotype.Repository;
@Repository
public interface DocStatisticsDefinitionOptionMapper extends BaseMapper<DocStatisticsDefinitionOption> {
}

View File

@@ -0,0 +1,11 @@
package com.openhis.document.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.DocDefinition;
import com.openhis.document.domain.DocStatistics;
import org.springframework.stereotype.Repository;
@Repository
public interface DocStatisticsMapper extends BaseMapper<DocStatistics> {
}

View File

@@ -0,0 +1,11 @@
package com.openhis.document.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.DocRecord;
import com.openhis.document.domain.DocTemplate;
import org.springframework.stereotype.Repository;
@Repository
public interface DocTemplateMapper extends BaseMapper<DocTemplate> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.document.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.EmrDetail;
/**
* 电子病历详情Mapper接口
*
* @author system
* @date 2025-02-22
*/
@Repository
public interface EmrDetailMapper extends BaseMapper<EmrDetail> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.document.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.EmrDict;
/**
* 电子病历字典Mapper接口
*
* @author system
* @date 2025-02-22
*/
@Repository
public interface EmrDictMapper extends BaseMapper<EmrDict> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.document.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.Emr;
/**
* 病历信息Mapper接口
*
* @author system
* @date 2025-02-21
*/
@Repository
public interface EmrMapper extends BaseMapper<Emr> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.document.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.EmrTemplate;
/**
* 病历模板Mapper接口
*
* @author system
* @date 2025-02-21
*/
@Repository
public interface EmrTemplateMapper extends BaseMapper<EmrTemplate> {
}

View File

@@ -0,0 +1,18 @@
package com.openhis.document.mapper;
import com.openhis.document.domain.OrderProcess;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.Emr;
/**
* 医嘱过程Mapper接口
*
* @author system
* @date 2025-02-21
*/
@Repository
public interface OrderProcessMapper extends BaseMapper<OrderProcess> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.document.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.RequestForm;
/**
* 申请单管理Mapper接口
*
* @author system
* @date 2025-02-22
*/
@Repository
public interface RequestFormMapper extends BaseMapper<RequestForm> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.document.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.document.domain.VitalSigns;
/**
* 生命体征管理Mapper接口
*
* @author system
* @date 2025-06-03
*/
@Repository
public interface VitalSignsMapper extends BaseMapper<VitalSigns> {
}

View File

@@ -0,0 +1,15 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.DocDefinition;
import com.openhis.document.domain.DocDefinitionOrganization;
/**
* 病历定义服务接口
*
* @author system
* @date 2025-02-21
*/
public interface IDocDefinitionOrganizationService extends IService<DocDefinitionOrganization> {
}

View File

@@ -0,0 +1,15 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.DocDefinition;
import com.openhis.document.domain.EmrTemplate;
/**
* 病历定义服务接口
*
* @author system
* @date 2025-02-21
*/
public interface IDocDefinitionService extends IService<DocDefinition> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.DocRecord;
/**
* 病历定义服务接口
*
* @author system
* @date 2025-02-21
*/
public interface IDocRecordService extends IService<DocRecord> {
}

View File

@@ -0,0 +1,15 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.DocStatisticsDefinition;
import com.openhis.document.domain.DocStatisticsDefinitionOption;
/**
* 病历定义服务接口
*
* @author system
* @date 2025-02-21
*/
public interface IDocStatisticsDefinitionOptionService extends IService<DocStatisticsDefinitionOption> {
}

View File

@@ -0,0 +1,15 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.DocStatistics;
import com.openhis.document.domain.DocStatisticsDefinition;
/**
* 病历定义服务接口
*
* @author system
* @date 2025-02-21
*/
public interface IDocStatisticsDefinitionService extends IService<DocStatisticsDefinition> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.DocStatistics;
/**
* 病历定义服务接口
*
* @author system
* @date 2025-02-21
*/
public interface IDocStatisticsService extends IService<DocStatistics> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.DocTemplate;
/**
* 病历定义服务接口
*
* @author system
* @date 2025-02-21
*/
public interface IDocTemplateService extends IService<DocTemplate> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.EmrDetail;
/**
* 电子病历详情Service接口
*
* @author system
* @date 2025-02-22
*/
public interface IEmrDetailService extends IService<EmrDetail> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.EmrDict;
/**
* 电子病历字典Service接口
*
* @author system
* @date 2025-02-22
*/
public interface IEmrDictService extends IService<EmrDict> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.Emr;
/**
* 病历信息Service接口
*
* @author system
* @date 2025-02-21
*/
public interface IEmrService extends IService<Emr> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.EmrTemplate;
/**
* 病历模板Service接口
*
* @author system
* @date 2025-02-21
*/
public interface IEmrTemplateService extends IService<EmrTemplate> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.OrderProcess;
/**
* 医嘱过程Service接口
*
* @author system
* @date 2025-02-21
*/
public interface IOrderProcessService extends IService<OrderProcess> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.RequestForm;
/**
* 申请单管理Service接口
*
* @author system
* @date 2025-02-22
*/
public interface IRequestFormService extends IService<RequestForm> {
}

View File

@@ -0,0 +1,56 @@
package com.openhis.document.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.document.domain.VitalSigns;
/**
* 生命体征管理Service接口
*
* @author system
* @date 2025-06-03
*/
public interface IVitalSignsService extends IService<VitalSigns> {
/**
* 查询同个时间点是否存在数据
*
* @param vitalSigns 实体对象
* @return vitalSigns
*/
VitalSigns selectVitalSigns(VitalSigns vitalSigns);
/**
* 查询当前list中的数据是否在表中存在
*
* @param vitalSignsList 实体对象
* @return 是否成功
*/
boolean selectBatchVitalSigns(List<VitalSigns> vitalSignsList);
/**
* 自定义插入或更新方法
*
* @param vitalSigns 实体对象
* @return 是否成功
*/
boolean saveOrUpdateVitalSigns(VitalSigns vitalSigns);
/**
* 批量保存或者更新
*
* @param vitalSignsList 实体对象
* @return 是否成功
*/
boolean saveOrUpdateBatchVitalSigns(List<VitalSigns> vitalSignsList);
/**
* 删除方法
*
* @param vitalSigns 实体对象
* @return 是否成功
*/
boolean deleteVitalSigns(VitalSigns vitalSigns);
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.DocDefinition;
import com.openhis.document.domain.DocDefinitionOrganization;
import com.openhis.document.mapper.DocDefinitionMapper;
import com.openhis.document.mapper.DocDefinitionOrganizationMapper;
import com.openhis.document.service.IDocDefinitionOrganizationService;
import com.openhis.document.service.IDocDefinitionService;
import org.springframework.stereotype.Service;
@Service
public class DocDefinitionOrganizationServiceImpl extends ServiceImpl<DocDefinitionOrganizationMapper, DocDefinitionOrganization> implements IDocDefinitionOrganizationService {
}

View File

@@ -0,0 +1,15 @@
package com.openhis.document.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.DocDefinition;
import com.openhis.document.domain.EmrDetail;
import com.openhis.document.mapper.DocDefinitionMapper;
import com.openhis.document.mapper.EmrDetailMapper;
import com.openhis.document.service.IDocDefinitionService;
import com.openhis.document.service.IEmrDetailService;
import nonapi.io.github.classgraph.json.Id;
import org.springframework.stereotype.Service;
@Service
public class DocDefinitionServiceImpl extends ServiceImpl<DocDefinitionMapper, DocDefinition> implements IDocDefinitionService {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.DocRecord;
import com.openhis.document.domain.DocStatistics;
import com.openhis.document.mapper.DocRecordMapper;
import com.openhis.document.mapper.DocStatisticsMapper;
import com.openhis.document.service.IDocRecordService;
import com.openhis.document.service.IDocStatisticsService;
import org.springframework.stereotype.Service;
@Service
public class DocRecordServiceImpl extends ServiceImpl<DocRecordMapper, DocRecord> implements IDocRecordService {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.DocStatisticsDefinition;
import com.openhis.document.domain.DocStatisticsDefinitionOption;
import com.openhis.document.mapper.DocStatisticsDefinitionMapper;
import com.openhis.document.mapper.DocStatisticsDefinitionOptionMapper;
import com.openhis.document.service.IDocStatisticsDefinitionOptionService;
import com.openhis.document.service.IDocStatisticsDefinitionService;
import org.springframework.stereotype.Service;
@Service
public class DocStatisticsDefinitionOptionServiceImpl extends ServiceImpl<DocStatisticsDefinitionOptionMapper, DocStatisticsDefinitionOption> implements IDocStatisticsDefinitionOptionService {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.DocStatistics;
import com.openhis.document.domain.DocStatisticsDefinition;
import com.openhis.document.mapper.DocStatisticsDefinitionMapper;
import com.openhis.document.mapper.DocStatisticsMapper;
import com.openhis.document.service.IDocStatisticsDefinitionService;
import com.openhis.document.service.IDocStatisticsService;
import org.springframework.stereotype.Service;
@Service
public class DocStatisticsDefinitionServiceImpl extends ServiceImpl<DocStatisticsDefinitionMapper, DocStatisticsDefinition> implements IDocStatisticsDefinitionService {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.document.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.DocDefinition;
import com.openhis.document.domain.DocStatistics;
import com.openhis.document.mapper.DocDefinitionMapper;
import com.openhis.document.mapper.DocStatisticsMapper;
import com.openhis.document.service.IDocDefinitionService;
import com.openhis.document.service.IDocStatisticsService;
import org.springframework.stereotype.Service;
@Service
public class DocStatisticsServiceImpl extends ServiceImpl<DocStatisticsMapper, DocStatistics> implements IDocStatisticsService {
}

View File

@@ -0,0 +1,11 @@
package com.openhis.document.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.DocTemplate;
import com.openhis.document.mapper.DocTemplateMapper;
import com.openhis.document.service.IDocTemplateService;
import org.springframework.stereotype.Service;
@Service
public class DocTemplateServiceImpl extends ServiceImpl<DocTemplateMapper, DocTemplate> implements IDocTemplateService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.document.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.EmrDetail;
import com.openhis.document.mapper.EmrDetailMapper;
import com.openhis.document.service.IEmrDetailService;
/**
* 电子病历详情Service业务层处理
*
* @author system
* @date 2025-02-22
*/
@Service
public class EmrDetailServiceImpl extends ServiceImpl<EmrDetailMapper, EmrDetail> implements IEmrDetailService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.document.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.EmrDict;
import com.openhis.document.mapper.EmrDictMapper;
import com.openhis.document.service.IEmrDictService;
/**
* 电子病历字典Service业务层处理
*
* @author system
* @date 2025-02-22
*/
@Service
public class EmrDictServiceImpl extends ServiceImpl<EmrDictMapper, EmrDict> implements IEmrDictService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.document.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.Emr;
import com.openhis.document.mapper.EmrMapper;
import com.openhis.document.service.IEmrService;
/**
* 病历信息Service业务层处理
*
* @author system
* @date 2025-02-21
*/
@Service
public class EmrServiceImpl extends ServiceImpl<EmrMapper, Emr> implements IEmrService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.document.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.EmrTemplate;
import com.openhis.document.mapper.EmrTemplateMapper;
import com.openhis.document.service.IEmrTemplateService;
/**
* 病历模板Service业务层处理
*
* @author system
* @date 2025-02-21
*/
@Service
public class EmrTemplateServiceImpl extends ServiceImpl<EmrTemplateMapper, EmrTemplate> implements IEmrTemplateService {
}

View File

@@ -0,0 +1,20 @@
package com.openhis.document.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.OrderProcess;
import com.openhis.document.mapper.OrderProcessMapper;
import com.openhis.document.service.IOrderProcessService;
/**
* 医嘱过程Service业务层处理
*
* @author system
* @date 2025-02-21
*/
@Service
public class OrderProcessServiceImpl extends ServiceImpl<OrderProcessMapper, OrderProcess>
implements IOrderProcessService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.document.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.RequestForm;
import com.openhis.document.mapper.RequestFormMapper;
import com.openhis.document.service.IRequestFormService;
/**
* 申请单管理Service业务层处理
*
* @author system
* @date 2025-02-22
*/
@Service
public class RequestFormServiceImpl extends ServiceImpl<RequestFormMapper, RequestForm> implements IRequestFormService {
}

View File

@@ -0,0 +1,138 @@
package com.openhis.document.service.impl;
import java.util.List;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.document.domain.VitalSigns;
import com.openhis.document.mapper.VitalSignsMapper;
import com.openhis.document.service.IVitalSignsService;
/**
* 就诊位置管理Service业务层处理
*
* @author system
* @date 2025-06-03
*/
@Service
public class VitalSignsServiceImpl extends ServiceImpl<VitalSignsMapper, VitalSigns> implements IVitalSignsService {
/**
* 查询同个时间点是否存在数据
*
* @param vitalSigns 实体对象
* @return vitalSigns
*/
public VitalSigns selectVitalSigns(VitalSigns vitalSigns) {
// 查询是否存在记录
return baseMapper.selectOne(this.queryWrapperSet(vitalSigns));
}
/**
* 查询当前list中的数据是否在表中存在
*
* @param vitalSignsList 实体对象
* @return 是否存在
*/
public boolean selectBatchVitalSigns(List<VitalSigns> vitalSignsList) {
boolean exitFlag = false;
for (VitalSigns vitalSigns : vitalSignsList) {
// 查询是否存在记录
long count = baseMapper.selectCount(this.queryWrapperSet(vitalSigns));
// 存在的场合
if (count > 0) {
exitFlag = true;
}
}
return exitFlag;
}
/**
* 自定义插入或更新方法,根据就诊ID记录时间生命体征值,判断是更新还是插入
*
* @param vitalSigns 实体对象
* @return 是否成功
*/
public boolean saveOrUpdateVitalSigns(VitalSigns vitalSigns) {
// 查询是否存在记录
VitalSigns existingRecord = baseMapper.selectOne(this.queryWrapperSet(vitalSigns));
if (existingRecord != null) {
// 如果记录存在,更新记录
vitalSigns.setId(existingRecord.getId());
return baseMapper.updateById(vitalSigns) > 0;
} else {
// 如果记录不存在,插入新记录
return baseMapper.insert(vitalSigns) > 0;
}
}
/**
* 根据就诊ID记录时间生命体征值判断批量保存或者更新
*
* @param vitalSignsList 实体对象
* @return 是否成功
*/
public boolean saveOrUpdateBatchVitalSigns(List<VitalSigns> vitalSignsList) {
boolean saveOrUpdateFlag = false;
for (VitalSigns vitalSigns : vitalSignsList) {
// 判断是更新还是插入
saveOrUpdateFlag = this.saveOrUpdateVitalSigns(vitalSigns);
}
return saveOrUpdateFlag;
}
/**
* 删除方法
*
* @param vitalSigns 实体对象
* @return 是否成功
*/
public boolean deleteVitalSigns(VitalSigns vitalSigns) {
// 查询是否存在记录
VitalSigns existingRecord = baseMapper.selectOne(this.queryWrapperSet(vitalSigns));
if (existingRecord != null) {
// 删除记录
return baseMapper.deleteById(existingRecord) > 0;
} else {
// 如果记录不存在返回false
return false;
}
}
/**
* 检索条件设定
*
* @param vitalSigns 实体对象
* @return 是否成功
*/
private LambdaQueryWrapper queryWrapperSet(VitalSigns vitalSigns) {
// 创建 LambdaQueryWrapper
LambdaQueryWrapper<VitalSigns> queryWrapper = new LambdaQueryWrapper<>();
// 有效性检查
// 患者ID
if (vitalSigns.getPatientId() != null) {
queryWrapper.eq(VitalSigns::getPatientId, vitalSigns.getPatientId());
}
// 就诊ID
if (vitalSigns.getEncounterId() != null) {
queryWrapper.eq(VitalSigns::getEncounterId, vitalSigns.getEncounterId());
}
// 记录日期
if (vitalSigns.getRecordingDate() != null) {
queryWrapper.eq(VitalSigns::getRecordingDate, vitalSigns.getRecordingDate());
}
// 记录时间
if (vitalSigns.getTimePoint() != null) {
queryWrapper.eq(VitalSigns::getTimePoint, vitalSigns.getTimePoint());
}
// 生命体征编码
if (vitalSigns.getVitalSignsCode() != null) {
queryWrapper.eq(VitalSigns::getVitalSignsCode, vitalSigns.getVitalSignsCode());
}
return queryWrapper;
}
}