docs(release-notes): 添加住院护士站划价功能说明和发版记录

- 新增住院护士站划价服务流程说明文档,详细描述了从参数预处理到结果响应的五大阶段流程
- 包含耗材类医嘱和诊疗活动类医嘱的差异化处理逻辑
- 添加完整的发版内容记录,涵盖新增菜单功能和各模块优化点
- 记录了住院相关功能的新增和门诊业务流程的修复
```
This commit is contained in:
2025-12-25 14:13:14 +08:00
parent 85fcb7c2e2
commit abc0674531
920 changed files with 107068 additions and 14495 deletions

View File

@@ -0,0 +1,61 @@
package com.openhis.lab.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 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-10-10
*/
@Data
@TableName("lab_activity_def_device_def")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class ActivityDefDeviceDef extends HisBaseEntity {
/** $column.columnComment */
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 测试定义ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long activityDefinitionId;
/** 耗材id */
@JsonSerialize(using = ToStringSerializer.class)
private Long deviceDefinitionId;
/** 耗材名称 */
private String deviceDefinitionName;
/** 仪器id */
@JsonSerialize(using = ToStringSerializer.class)
private Long instrumentId;
/** 仪器名称 */
private String instrumentName;
/** 耗材使用数量 */
private Integer deviceQuantity;
/** 删除状态 */
private String deleteFlag;
/** $column.columnComment */
private String activityDefinitionName;
}

View File

@@ -0,0 +1,55 @@
package com.openhis.lab.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 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-10-10
*/
@Data
@TableName("lab_activity_def_observation_def")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class ActivityDefObservationDef extends HisBaseEntity {
/** $column.columnComment */
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Integer id;
/** 活动定义ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long activityDefinitionId;
/** 活动名称 */
private String activityDefinitionName;
/** 观测定义ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long observationDefinitionId;
/** 观测指标名称如ALT、AST等 */
private String observationName;
/** 观测编码如ALT、AST等 */
private String observationCode;
/** 删除状态 */
private String deleteFlag;
}

View File

@@ -0,0 +1,59 @@
package com.openhis.lab.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 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-10-10
*/
@Data
@TableName("lab_activity_def_specimen_def")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class ActivityDefSpecimenDef extends HisBaseEntity {
/** $column.columnComment */
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Integer id;
/** 测试定义ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long activityDefinitionId;
/** $column.columnComment */
private String activityDefinitionName;
/** 测试定义ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long specimenDefinitionId;
/** 样本量 */
private Integer specimenVolume;
/** 样本名称 */
private String specimenName;
/** 样本量单位 */
private String specimenUnit;
/** 采样方法 */
private String samplingMethod;
/** 删除状态N为未删除Y为已删除 */
private String deleteFlag;
}

View File

@@ -0,0 +1,60 @@
package com.openhis.lab.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 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-10-10
*/
@Data
@TableName("lab_observation")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class Observation extends HisBaseEntity {
/** 观察记录的唯一标识符 */
@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;
/** 关联的样本ID */
private Long specimenId;
/** 观察定义ID */
private Long observationDefinitionId;
/** 观察结果,可能是文本描述或数值 */
private String observationResult;
/** 观察的日期和时间 */
private Date observationDate;
/** 执行观察的技术员ID */
private Long technicianId;
/** 删除状态,默认为未删除 */
private String deleteFlag;
}

View File

@@ -0,0 +1,68 @@
package com.openhis.lab.domain;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.*;
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-10-10
*/
@Data
@TableName("lab_specimen")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class Specimen extends HisBaseEntity {
/** 样本的唯一标识符 */
@TableId(type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 与该样本相关的患者ID */
private Long patientId;
/** 与该样本相关的ENCounterID */
@JsonSerialize(using = ToStringSerializer.class)
private Long encounterId;
/** 与该样本相关的申请服务id */
@JsonSerialize(using = ToStringSerializer.class)
private Long serviceId;
/** 样本定义ID对应 adm_specimen_definition 表的 id */
private Long specimenDefinitionId;
@TableField(updateStrategy = FieldStrategy.IGNORED)
/* 样本的采集日期和时间 */
private Date collectionDate;
// private String chargeName; // 项目名称
// private String specimenName; // 样本名称
// private String doctorName; // 开单医生
private Integer specimenVolume; //样本量
private String specimenUnit; //样本单位
/** 样本接收日期 */
@TableField(updateStrategy = FieldStrategy.IGNORED)
private Date receivedDate;
/** 采集状态,默认为待采集 */
private Integer collectionStatusEnum;
}

View File

@@ -0,0 +1,17 @@
package com.openhis.lab.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.lab.domain.ActivityDefDeviceDef;
/**
* 耗材和设备定义Mapper接口
*
* @author system
* @date 2025-10-10
*/
@Repository
public interface ActivityDefDeviceDefMapper extends BaseMapper<ActivityDefDeviceDef> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.lab.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.lab.domain.ActivityDefObservationDef;
/**
* 观测指标定义Mapper接口
*
* @author system
* @date 2025-10-10
*/
@Repository
public interface ActivityDefObservationDefMapper extends BaseMapper<ActivityDefObservationDef> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.lab.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.lab.domain.ActivityDefSpecimenDef;
/**
* 样本定义Mapper接口
*
* @author system
* @date 2025-10-10
*/
@Repository
public interface ActivityDefSpecimenDefMapper extends BaseMapper<ActivityDefSpecimenDef> {
}

View File

@@ -0,0 +1,17 @@
package com.openhis.lab.mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.lab.domain.Observation;
/**
* 【请填写功能名称】Mapper接口
*
* @author system
* @date 2025-10-10
*/
@Repository
public interface ObservationMapper extends BaseMapper<Observation> {
}

View File

@@ -0,0 +1,18 @@
package com.openhis.lab.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.lab.domain.Specimen;
/**
* 【请填写功能名称】Mapper接口
*
* @author system
* @date 2025-10-10
*/
@Mapper
public interface SpecimenMapper extends BaseMapper<Specimen> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.lab.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.lab.domain.ActivityDefDeviceDef;
/**
* 耗材和设备定义Service接口
*
* @author system
* @date 2025-10-10
*/
public interface IActivityDefDeviceDefService extends IService<ActivityDefDeviceDef> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.lab.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.lab.domain.ActivityDefObservationDef;
/**
* 观测指标定义Service接口
*
* @author system
* @date 2025-10-10
*/
public interface IActivityDefObservationDefService extends IService<ActivityDefObservationDef> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.lab.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.lab.domain.ActivityDefSpecimenDef;
/**
* 样本定义Service接口
*
* @author system
* @date 2025-10-10
*/
public interface IActivityDefSpecimenDefService extends IService<ActivityDefSpecimenDef> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.lab.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.lab.domain.Observation;
/**
* 【请填写功能名称】Service接口
*
* @author system
* @date 2025-10-10
*/
public interface IObservationService extends IService<Observation> {
}

View File

@@ -0,0 +1,14 @@
package com.openhis.lab.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.lab.domain.Specimen;
/**
* Service接口
*
* @author system
* @date 2025-10-10
*/
public interface ISpecimenService extends IService<Specimen> {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.lab.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.lab.domain.ActivityDefDeviceDef;
import com.openhis.lab.mapper.ActivityDefDeviceDefMapper;
import com.openhis.lab.service.IActivityDefDeviceDefService;
/**
* 耗材和设备定义Service业务层处理
*
* @author system
* @date 2025-10-10
*/
@Service
public class ActivityDefDeviceDefServiceImpl extends ServiceImpl<ActivityDefDeviceDefMapper, ActivityDefDeviceDef> implements IActivityDefDeviceDefService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.lab.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.lab.domain.ActivityDefObservationDef;
import com.openhis.lab.mapper.ActivityDefObservationDefMapper;
import com.openhis.lab.service.IActivityDefObservationDefService;
/**
* 观测指标定义Service业务层处理
*
* @author system
* @date 2025-10-10
*/
@Service
public class ActivityDefObservationDefServiceImpl extends ServiceImpl<ActivityDefObservationDefMapper, ActivityDefObservationDef> implements IActivityDefObservationDefService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.lab.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.lab.domain.ActivityDefSpecimenDef;
import com.openhis.lab.mapper.ActivityDefSpecimenDefMapper;
import com.openhis.lab.service.IActivityDefSpecimenDefService;
/**
* 样本定义Service业务层处理
*
* @author system
* @date 2025-10-10
*/
@Service
public class ActivityDefSpecimenDefServiceImpl extends ServiceImpl<ActivityDefSpecimenDefMapper, ActivityDefSpecimenDef> implements IActivityDefSpecimenDefService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.lab.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.lab.domain.Observation;
import com.openhis.lab.mapper.ObservationMapper;
import com.openhis.lab.service.IObservationService;
/**
* 【请填写功能名称】Service业务层处理
*
* @author system
* @date 2025-10-10
*/
@Service
public class ObservationServiceImpl extends ServiceImpl<ObservationMapper, Observation> implements IObservationService {
}

View File

@@ -0,0 +1,19 @@
package com.openhis.lab.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.lab.domain.Specimen;
import com.openhis.lab.mapper.SpecimenMapper;
import com.openhis.lab.service.ISpecimenService;
/**
* 【请填写功能名称】Service业务层处理
*
* @author system
* @date 2025-10-10
*/
@Service
public class SpecimenServiceImpl extends ServiceImpl<SpecimenMapper, Specimen> implements ISpecimenService {
}