```
docs(release-notes): 添加住院护士站划价功能说明和发版记录 - 新增住院护士站划价服务流程说明文档,详细描述了从参数预处理到结果响应的五大阶段流程 - 包含耗材类医嘱和诊疗活动类医嘱的差异化处理逻辑 - 添加完整的发版内容记录,涵盖新增菜单功能和各模块优化点 - 记录了住院相关功能的新增和门诊业务流程的修复 ```
This commit is contained in:
@@ -5,10 +5,8 @@ import java.math.BigDecimal;
|
||||
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.openhis.common.enums.AccountBillingStatus;
|
||||
import com.openhis.common.enums.AccountStatus;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
@@ -66,4 +64,7 @@ public class Account extends HisBaseEntity {
|
||||
/** 是否为就诊登记使用 */
|
||||
private Integer encounterFlag;
|
||||
|
||||
/** 险种类型 */
|
||||
private String insutype;
|
||||
|
||||
}
|
||||
|
||||
@@ -6,9 +6,8 @@ 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.openhis.common.enums.PublicationStatus;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
@@ -67,4 +66,9 @@ public class ChargeItemDefinition extends HisBaseEntity {
|
||||
|
||||
/** 基础价格 */
|
||||
private BigDecimal price;
|
||||
|
||||
/**
|
||||
* 物价编码
|
||||
*/
|
||||
private String priceCode;
|
||||
}
|
||||
|
||||
@@ -1,14 +1,11 @@
|
||||
package com.openhis.administration.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.openhis.common.enums.DeviceCategory;
|
||||
import com.openhis.common.enums.DeviceSafety;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
@@ -70,7 +67,7 @@ public class Device extends HisBaseEntity {
|
||||
private String partNumber;
|
||||
|
||||
/** 器材种类 */
|
||||
private DeviceCategory categoryEnum;
|
||||
private Integer categoryEnum;
|
||||
|
||||
/** 器材类型 */
|
||||
private String typeCode;
|
||||
@@ -93,5 +90,4 @@ public class Device extends HisBaseEntity {
|
||||
/** 器材安全 */
|
||||
private DeviceSafety safetyEnum;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -6,8 +6,8 @@ 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.openhis.common.enums.DeviceCategory;
|
||||
import com.openhis.common.enums.PublicationStatus;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
@@ -27,6 +27,7 @@ public class DeviceDefinition extends HisBaseEntity {
|
||||
|
||||
/** ID */
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
/** 编码 */
|
||||
|
||||
@@ -0,0 +1,113 @@
|
||||
package com.openhis.administration.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.annotation.JsonFormat;
|
||||
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-09-19
|
||||
*/
|
||||
@Data
|
||||
@TableName("adm_instrument")
|
||||
@Accessors(chain = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class Instrument extends HisBaseEntity {
|
||||
|
||||
/** 仪器的唯一标识符,使用自增序列 */
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
/** 仪器编号,唯一且不能为空 */
|
||||
private String instrumentCode;
|
||||
|
||||
/** 仪器名称,必填项 */
|
||||
private String instrumentName;
|
||||
|
||||
/** 仪器主编号 */
|
||||
private String instrumentMainCode;
|
||||
|
||||
/** 仪器类型,选择项 */
|
||||
private Integer instrumentTypeEnum;
|
||||
|
||||
/** 仪器型号 */
|
||||
private String instrumentModel;
|
||||
|
||||
/** 生产厂家 */
|
||||
private String manufacturer;
|
||||
|
||||
/** 仪器序列号 */
|
||||
private String serialNumber;
|
||||
|
||||
/** 购买公司 */
|
||||
private String purchasingCompany;
|
||||
|
||||
/** 联系人员 */
|
||||
private String contactPerson;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
/** 购买日期 */
|
||||
private Date purchaseDate;
|
||||
|
||||
/** 原价格 */
|
||||
private BigDecimal originalPrice;
|
||||
|
||||
/** 成交价格 */
|
||||
private BigDecimal transactionPrice;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
/** 安装日期 */
|
||||
private Date installationDate;
|
||||
|
||||
/** 安装人员 */
|
||||
private String installationPerson;
|
||||
|
||||
/** 维护人员 */
|
||||
private String maintenancePerson;
|
||||
|
||||
/** 使用科室 */
|
||||
private Long orgId;
|
||||
|
||||
/** 鉴定人员 */
|
||||
private String identificationPerson;
|
||||
|
||||
/** 记录温度,选择项 */
|
||||
private String recordedTemperature;
|
||||
|
||||
/** 仪器附件 */
|
||||
private String accessories;
|
||||
|
||||
/** 仪器状态 */
|
||||
private Integer instrumentStatusEnum;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
/** 报损日期 */
|
||||
private Date damageReportDate;
|
||||
|
||||
/** 可复查仪器 是否 */
|
||||
private Integer recheckableInstrumentEnum;
|
||||
|
||||
/** 使用状态,是否 */
|
||||
private Integer usageStatusEnum;
|
||||
|
||||
/** 停用原因 */
|
||||
private String decommissionReason;
|
||||
|
||||
/** 备注 */
|
||||
private String remarks;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package com.openhis.administration.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-09-23
|
||||
*/
|
||||
@Data
|
||||
@TableName("adm_observation_definition")
|
||||
@Accessors(chain = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class ObservationDefinition extends HisBaseEntity {
|
||||
|
||||
/** $column.columnComment */
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
/** 观测名称,用于标识观测的具体名称 */
|
||||
private String name;
|
||||
|
||||
/** 观测代码,用于唯一标识一个观测项 */
|
||||
private String code;
|
||||
|
||||
/** 观测类型,例如:实验室、临床症状等 */
|
||||
private Integer observationTypeEnum;
|
||||
|
||||
/** 参考范围,例如:3.0-6.0 mg/dL,用于指示正常范围 */
|
||||
private String referenceRange;
|
||||
|
||||
/** 观测仪器id */
|
||||
private Long instrumentId;
|
||||
|
||||
/** 状态 */
|
||||
private Integer statusEnum;
|
||||
|
||||
/** 删除状态) */
|
||||
private String deleteFlag;
|
||||
|
||||
}
|
||||
@@ -60,4 +60,9 @@ public class OrganizationLocation extends HisBaseEntity {
|
||||
/** 显示顺序 */
|
||||
private Integer displayOrder;
|
||||
|
||||
/**
|
||||
* 项目编码 | 药品:1 耗材:2
|
||||
*/
|
||||
private String itemCode;
|
||||
|
||||
}
|
||||
@@ -6,13 +6,9 @@ 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 com.openhis.common.enums.ActPriority;
|
||||
import com.openhis.common.enums.PublicationStatus;
|
||||
import com.openhis.common.enums.SupplyCategory;
|
||||
import com.openhis.common.enums.SupplyStatus;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
@@ -132,9 +128,4 @@ public class Patient extends HisBaseEntity {
|
||||
/** 机构Id */
|
||||
private Long organizationId;
|
||||
|
||||
public Patient() {
|
||||
// 活动标识:启用
|
||||
this.activeFlag = PublicationStatus.ACTIVE.getValue();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
package com.openhis.administration.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-09-05
|
||||
*/
|
||||
@Data
|
||||
@TableName("adm_specimen_definition")
|
||||
@Accessors(chain = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class SpecimenDefinition extends HisBaseEntity {
|
||||
|
||||
/** $column.columnComment */
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
|
||||
private Long id;
|
||||
|
||||
/** 样本类型 */
|
||||
private Integer specimenTypeEnum;
|
||||
|
||||
/** 样本名称 */
|
||||
private String specimenName;
|
||||
|
||||
/** 自定义码 */
|
||||
private String customCode;
|
||||
|
||||
/** 类型顺序 */
|
||||
private Integer typeOrder;
|
||||
|
||||
/** 外部代码 */
|
||||
private String externalCode;
|
||||
|
||||
/** 序号 */
|
||||
private Integer serialNumber;
|
||||
|
||||
/** 全网型 */
|
||||
private String globalType;
|
||||
|
||||
/** 拼音 */
|
||||
private String pyStr;
|
||||
|
||||
/** 五笔 */
|
||||
private String wbStr;
|
||||
|
||||
/** 样本类 */
|
||||
private String specimenClass;
|
||||
|
||||
/** 扩展类型 */
|
||||
private String extendedType;
|
||||
|
||||
/** WHONET代码 */
|
||||
private String whonetCode;
|
||||
|
||||
|
||||
/** 状态 */
|
||||
private Integer statusEnum;
|
||||
|
||||
}
|
||||
@@ -61,4 +61,10 @@ public class ChargeItemDefInfo extends ChargeItem {
|
||||
|
||||
/** 基础价格 */
|
||||
private BigDecimal price;
|
||||
|
||||
/** 基础价格 */
|
||||
private BigDecimal manualAdjustedPrice;
|
||||
|
||||
/** 基础价格 */
|
||||
private BigDecimal systemDiscountPrice;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,145 @@
|
||||
package com.openhis.administration.dto;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import com.core.common.annotation.Excel;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* 费用明细Dto
|
||||
*
|
||||
* @author swb
|
||||
* @date 2025-12-16
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class CostDetailDto {
|
||||
/**
|
||||
* 项目名称
|
||||
*/
|
||||
@Excel(name = "项目名称", sort = 2)
|
||||
private String chargeName;
|
||||
|
||||
/**
|
||||
* 费用类型
|
||||
*/
|
||||
private Integer chargeItemEnum;
|
||||
@Excel(name = "费用类型", sort = 3)
|
||||
private String chargeItemEnum_enumText;
|
||||
|
||||
/**
|
||||
* 单价
|
||||
*/
|
||||
@Excel(name = "单价", sort = 4, scale = 2)
|
||||
private BigDecimal unitPrice;
|
||||
|
||||
/**
|
||||
* 数量
|
||||
*/
|
||||
@Excel(name = "数量", sort = 5, scale = 0)
|
||||
private BigDecimal quantityValue;
|
||||
|
||||
/**
|
||||
* 金额
|
||||
*/
|
||||
@Excel(name = "金额", sort = 6, scale = 2)
|
||||
private BigDecimal totalPrice;
|
||||
|
||||
/**
|
||||
* 执行科室
|
||||
*/
|
||||
private Long orgId;
|
||||
@Excel(name = "执行科室", sort = 7)
|
||||
private String orgName;
|
||||
|
||||
/**
|
||||
* 执行人
|
||||
*/
|
||||
@Excel(name = "执行人", sort = 8)
|
||||
private String practitioner;
|
||||
|
||||
/**
|
||||
* 执行日期
|
||||
*/
|
||||
@Excel(name = "执行日期", sort = 9, dateFormat = "yyyy-MM-dd")
|
||||
private Date recordedTime;
|
||||
|
||||
/**
|
||||
* 医保类型
|
||||
*/
|
||||
private Integer chrgitmLv;
|
||||
@Excel(name = "医保类型", sort = 10)
|
||||
private String chrgitmLv_enumText;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Excel(name = "备注", sort = 11)
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 住院患者id
|
||||
*/
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long encounterId;
|
||||
|
||||
/**
|
||||
* 患者id
|
||||
*/
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long patientId;
|
||||
/**
|
||||
* 患者姓名
|
||||
*/
|
||||
private String patientName;
|
||||
|
||||
/**
|
||||
* 生日
|
||||
*/
|
||||
private Date birthDate;
|
||||
|
||||
/**
|
||||
* 年龄
|
||||
*/
|
||||
private String age;
|
||||
|
||||
/**
|
||||
* 性别
|
||||
*/
|
||||
private Integer genderEnum;
|
||||
private String genderEnum_enumText;
|
||||
|
||||
/**
|
||||
* 诊断
|
||||
*/
|
||||
private String conditionNames;
|
||||
/**
|
||||
* 住院医生
|
||||
*/
|
||||
private String admittingDoctorName;
|
||||
|
||||
/**
|
||||
* 余额
|
||||
*/
|
||||
private BigDecimal balanceAmount;
|
||||
|
||||
/**
|
||||
* 住院号
|
||||
*/
|
||||
private String BusNo;
|
||||
|
||||
/**
|
||||
* 床位名称
|
||||
*/
|
||||
private String bedName;
|
||||
|
||||
/**
|
||||
* 费别
|
||||
*/
|
||||
private String contractName;
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.openhis.administration.dto;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* 费用明细查询条件
|
||||
*
|
||||
* @author swb
|
||||
* @date 2025-12-15
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class CostDetailSearchParam {
|
||||
/**
|
||||
* 就诊ID列表
|
||||
*/
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private List<Long> encounterIds;
|
||||
|
||||
/**
|
||||
* 科室ID
|
||||
*/
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long orgId;
|
||||
|
||||
/**
|
||||
* 费用类型ID
|
||||
*/
|
||||
private String chargeItemEnum;
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.openhis.administration.dto;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* 药品追溯患者信息Dto
|
||||
*
|
||||
* @author swb
|
||||
* @date 2025-12-15
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TracePatientInfoDto {
|
||||
/**
|
||||
* 姓名
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 性别
|
||||
*/
|
||||
private Integer genderEnum;
|
||||
private String genderEnum_enumText;
|
||||
|
||||
/**
|
||||
* 生日
|
||||
*/
|
||||
private Date birthDate;
|
||||
/**
|
||||
* 年龄
|
||||
*/
|
||||
private String age;
|
||||
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 挂号时间
|
||||
*/
|
||||
|
||||
private Date registerTime;
|
||||
}
|
||||
@@ -5,10 +5,14 @@ import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.openhis.administration.domain.ChargeItem;
|
||||
import com.openhis.administration.dto.ChargeItemBaseInfoDto;
|
||||
import com.openhis.administration.dto.ChargeItemDefInfo;
|
||||
import com.openhis.administration.dto.CostDetailDto;
|
||||
import com.openhis.administration.dto.CostDetailSearchParam;
|
||||
|
||||
/**
|
||||
* 费用项管理Mapper接口
|
||||
@@ -34,4 +38,22 @@ public interface ChargeItemMapper extends BaseMapper<ChargeItem> {
|
||||
* @return 集合
|
||||
*/
|
||||
List<ChargeItemDefInfo> getChargeItemDefInfoByIds(@Param("chargeItemIds") List<Long> chargeItemIds);
|
||||
|
||||
/**
|
||||
* 查询费用明细
|
||||
*
|
||||
* @param queryWrapper 查询条件
|
||||
* @param billable 待结算
|
||||
* @param billed 已收费
|
||||
* @param refunded 已退费
|
||||
* @param active 使用中
|
||||
* @param bed 床位
|
||||
* @param admittingDoctor 住院医生
|
||||
* @param personalCashAccount 个人现金账户
|
||||
* @return 费用明细分页列表
|
||||
*/
|
||||
List<CostDetailDto> getCostDetails(@Param(Constants.WRAPPER) QueryWrapper<CostDetailSearchParam> queryWrapper,
|
||||
@Param("billable") Integer billable, @Param("billed") Integer billed, @Param("refunded") Integer refunded,
|
||||
@Param("active") Integer active, @Param("bed") Integer bed, @Param("admittingDoctor") String admittingDoctor,
|
||||
@Param("personalCashAccount") String personalCashAccount);
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.openhis.administration.mapper;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.openhis.administration.domain.Instrument;
|
||||
|
||||
/**
|
||||
* 存储各类仪器的信息,包括设备基本信息、状态、维护记录等Mapper接口
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-19
|
||||
*/
|
||||
@Repository
|
||||
public interface InstrumentMapper extends BaseMapper<Instrument> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.openhis.administration.mapper;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.openhis.administration.domain.ObservationDefinition;
|
||||
|
||||
/**
|
||||
* 观测定义Mapper接口
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-23
|
||||
*/
|
||||
@Repository
|
||||
public interface ObservationDefinitionMapper extends BaseMapper<ObservationDefinition> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.openhis.administration.mapper;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.openhis.administration.domain.SpecimenDefinition;
|
||||
|
||||
/**
|
||||
* 样本定义Mapper接口
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-05
|
||||
*/
|
||||
@Repository
|
||||
public interface SpecimenDefinitionMapper extends BaseMapper<SpecimenDefinition> {
|
||||
|
||||
}
|
||||
@@ -7,6 +7,7 @@ import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.openhis.administration.domain.TraceNoManage;
|
||||
import com.openhis.administration.dto.TracePatientInfoDto;
|
||||
|
||||
/**
|
||||
* 【追溯码管理】Mapper接口
|
||||
@@ -28,4 +29,14 @@ public interface TraceNoManageMapper extends BaseMapper<TraceNoManage> {
|
||||
*/
|
||||
List<TraceNoManage> getItemTraceNoInfo(@Param("itemTable") String itemTable, @Param("itemId") Long itemId,
|
||||
@Param("locationId") Long locationId, @Param("lotNumber") String lotNumber);
|
||||
|
||||
/**
|
||||
* 追溯患者信息
|
||||
*
|
||||
* @param medId 药品定义ID
|
||||
* @param dispenseStatus 药品发放状态
|
||||
* @return 患者信息列表
|
||||
*/
|
||||
List<TracePatientInfoDto> tracePatient(@Param("medId") Long medId, @Param("dispenseStatus") Integer dispenseStatus,
|
||||
@Param("traceNo") String traceNo);
|
||||
}
|
||||
@@ -2,10 +2,13 @@ package com.openhis.administration.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.openhis.administration.domain.ChargeItem;
|
||||
import com.openhis.administration.dto.ChargeItemBaseInfoDto;
|
||||
import com.openhis.administration.dto.ChargeItemDefInfo;
|
||||
import com.openhis.administration.dto.CostDetailDto;
|
||||
import com.openhis.administration.dto.CostDetailSearchParam;
|
||||
|
||||
/**
|
||||
* 费用项管理Service接口
|
||||
@@ -124,4 +127,36 @@ public interface IChargeItemService extends IService<ChargeItem> {
|
||||
*/
|
||||
void updatePlannedChargeStatus(List<Long> procedureIdList);
|
||||
|
||||
/**
|
||||
* 根据encounterId查询收费项
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
List<ChargeItem> getChargeItemByEncounterId(Long id);
|
||||
|
||||
/**
|
||||
* 根据encounterId查询收费项
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
List<ChargeItem> getChargeItemByEncounterId(Long id, String tableName, List<Long> serviceId);
|
||||
|
||||
/**
|
||||
* 查询费用明细
|
||||
*
|
||||
* @param queryWrapper 查询条件
|
||||
* @param billable 待结算
|
||||
* @param billed 已收费
|
||||
* @param refunded 已退费
|
||||
* @param active 使用中
|
||||
* @param bed 床位
|
||||
* @param admittingDoctor 住院医生
|
||||
* @param personalCashAccount 个人现金账户
|
||||
* @return 费用明细分页列表
|
||||
*/
|
||||
List<CostDetailDto> getCostDetails(QueryWrapper<CostDetailSearchParam> queryWrapper, Integer billable,
|
||||
Integer billed, Integer refunded, Integer active, Integer bed, String admittingDoctor,
|
||||
String personalCashAccount);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.openhis.administration.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.openhis.administration.domain.Instrument;
|
||||
|
||||
/**
|
||||
* 存储各类仪器的信息,包括设备基本信息、状态、维护记录等Service接口
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-19
|
||||
*/
|
||||
public interface IInstrumentService extends IService<Instrument> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.openhis.administration.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.openhis.administration.domain.ObservationDefinition;
|
||||
|
||||
/**
|
||||
* 观测定义Service接口
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-23
|
||||
*/
|
||||
public interface IObservationDefinitionService extends IService<ObservationDefinition> {
|
||||
|
||||
}
|
||||
@@ -3,6 +3,8 @@ package com.openhis.administration.service;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.openhis.administration.domain.PatientIdentifier;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 患者标识管理Service接口
|
||||
*
|
||||
@@ -16,7 +18,7 @@ public interface IPatientIdentifierService extends IService<PatientIdentifier> {
|
||||
*
|
||||
* @param patientId 患者Id
|
||||
*/
|
||||
PatientIdentifier selectByPatientId(Long patientId);
|
||||
List<PatientIdentifier> selectByPatientId(Long patientId);
|
||||
|
||||
/**
|
||||
* 查询病人标识
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
package com.openhis.administration.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.openhis.administration.domain.Encounter;
|
||||
import com.openhis.administration.domain.Patient;
|
||||
import com.openhis.administration.domain.PatientIdentifier;
|
||||
|
||||
/**
|
||||
* 患者管理Service接口
|
||||
@@ -27,19 +25,4 @@ public interface IPatientService extends IService<Patient> {
|
||||
*/
|
||||
boolean savePatient(Patient patient);
|
||||
|
||||
/**
|
||||
* 添加病人
|
||||
*
|
||||
* @param patient 患者实体
|
||||
*/
|
||||
boolean addPatient(Patient patient);
|
||||
|
||||
/**
|
||||
* 更新病人
|
||||
*
|
||||
* @param patient 患者实体
|
||||
*/
|
||||
boolean updatePatient(Patient patient);
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.openhis.administration.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.core.common.core.domain.R;
|
||||
import com.openhis.administration.domain.SpecimenDefinition;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
/**
|
||||
* 样本定义Service接口
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-05
|
||||
*/
|
||||
public interface ISpecimenDefinitionService extends IService<SpecimenDefinition> {
|
||||
}
|
||||
@@ -9,10 +9,10 @@ import org.springframework.stereotype.Service;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.core.common.enums.DelFlag;
|
||||
import com.openhis.administration.domain.EncounterLocation;
|
||||
import com.openhis.administration.mapper.EncounterLocationMapper;
|
||||
import com.openhis.administration.service.IEncounterLocationService;
|
||||
import com.openhis.common.enums.DelFlag;
|
||||
import com.openhis.common.enums.EncounterActivityStatus;
|
||||
import com.openhis.common.enums.LocationForm;
|
||||
|
||||
@@ -73,7 +73,7 @@ public class EncounterLocationServiceImpl extends ServiceImpl<EncounterLocationM
|
||||
public void creatEncounterLocation(Long encounterId, Date startTime, Long locationId, Integer locationForm) {
|
||||
EncounterLocation encounterLocation = new EncounterLocation();
|
||||
encounterLocation.setEncounterId(encounterId).setStartTime(startTime).setLocationId(locationId)
|
||||
.setFormEnum(locationForm);
|
||||
.setFormEnum(locationForm).setStatusEnum(EncounterActivityStatus.ACTIVE.getValue());
|
||||
baseMapper.insert(encounterLocation);
|
||||
}
|
||||
|
||||
@@ -150,11 +150,11 @@ public class EncounterLocationServiceImpl extends ServiceImpl<EncounterLocationM
|
||||
.eq(EncounterLocation::getDeleteFlag, DelFlag.NO.getCode());
|
||||
|
||||
if (locationForm != null) {
|
||||
queryWrapper.eq(EncounterLocation::getFormEnum, locationForm.getCode());
|
||||
queryWrapper.eq(EncounterLocation::getFormEnum, locationForm.getValue());
|
||||
}
|
||||
|
||||
if (encounterActivityStatus != null) {
|
||||
queryWrapper.eq(EncounterLocation::getStatusEnum, encounterActivityStatus.getCode());
|
||||
queryWrapper.eq(EncounterLocation::getStatusEnum, encounterActivityStatus.getValue());
|
||||
}
|
||||
return baseMapper.selectList(queryWrapper);
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.openhis.administration.domain.EncounterParticipant;
|
||||
import com.openhis.administration.mapper.EncounterParticipantMapper;
|
||||
import com.openhis.administration.service.IEncounterParticipantService;
|
||||
import com.openhis.common.enums.DelFlag;
|
||||
import com.core.common.enums.DelFlag;
|
||||
import com.openhis.common.enums.EncounterActivityStatus;
|
||||
import com.openhis.common.enums.ParticipantType;
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.openhis.administration.service.impl;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.openhis.administration.domain.Instrument;
|
||||
import com.openhis.administration.mapper.InstrumentMapper;
|
||||
import com.openhis.administration.service.IInstrumentService;
|
||||
|
||||
/**
|
||||
* 存储各类仪器的信息,包括设备基本信息、状态、维护记录等Service业务层处理
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-19
|
||||
*/
|
||||
@Service
|
||||
public class InstrumentServiceImpl extends ServiceImpl<InstrumentMapper, Instrument> implements IInstrumentService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.openhis.administration.service.impl;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.openhis.administration.domain.ObservationDefinition;
|
||||
import com.openhis.administration.mapper.ObservationDefinitionMapper;
|
||||
import com.openhis.administration.service.IObservationDefinitionService;
|
||||
|
||||
/**
|
||||
* 观测定义Service业务层处理
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-23
|
||||
*/
|
||||
@Service
|
||||
public class ObservationDefinitionServiceImpl extends ServiceImpl<ObservationDefinitionMapper, ObservationDefinition> implements IObservationDefinitionService {
|
||||
|
||||
}
|
||||
@@ -10,6 +10,8 @@ import com.openhis.administration.domain.PatientIdentifier;
|
||||
import com.openhis.administration.mapper.PatientIdentifierMapper;
|
||||
import com.openhis.administration.service.IPatientIdentifierService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 患者标识管理Service业务层处理
|
||||
*
|
||||
@@ -29,12 +31,11 @@ public class PatientIdentifierServiceImpl extends ServiceImpl<PatientIdentifierM
|
||||
* @param patientId 患者Id
|
||||
*/
|
||||
@Override
|
||||
public PatientIdentifier selectByPatientId(Long patientId) {
|
||||
public List<PatientIdentifier> selectByPatientId(Long patientId) {
|
||||
// 构造查询条件
|
||||
LambdaQueryWrapper<PatientIdentifier> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(PatientIdentifier::getPatientId, patientId);
|
||||
|
||||
return baseMapper.selectOne(queryWrapper);
|
||||
return baseMapper.selectList(queryWrapper);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -123,51 +123,4 @@ public class PatientServiceImpl extends ServiceImpl<PatientMapper, Patient> impl
|
||||
return patientExists;
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加病人
|
||||
*
|
||||
* @param patient 患者实体
|
||||
*/
|
||||
@Override
|
||||
public boolean addPatient(Patient patient) {
|
||||
Long organizationId = SecurityUtils.getLoginUser().getHospitalId();
|
||||
// 设置机构ID
|
||||
patient.setOrganizationId(organizationId);
|
||||
// 设置拼音首拼
|
||||
patient.setPyStr(ChineseConvertUtils.toPinyinFirstLetter(patient.getName()));
|
||||
// 设置五笔首拼
|
||||
patient.setWbStr(ChineseConvertUtils.toWBFirstLetter(patient.getName()));
|
||||
// 不存在重复的证件号,新增患者
|
||||
if (patient.getIdCard() == null || patient.getIdCard().isEmpty() ||idCardExists(patient) == null) {
|
||||
// 添加患者
|
||||
return baseMapper.insert(patient) > 0;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新病人
|
||||
*
|
||||
* @param patient 患者实体
|
||||
*/
|
||||
@Override
|
||||
public boolean updatePatient(Patient patient) {
|
||||
Patient patientExists = idCardExists(patient);
|
||||
Long organizationId = SecurityUtils.getLoginUser().getHospitalId();
|
||||
// 设置机构ID
|
||||
patient.setOrganizationId(organizationId);
|
||||
// 设置拼音首拼
|
||||
patient.setPyStr(ChineseConvertUtils.toPinyinFirstLetter(patient.getName()));
|
||||
// 设置五笔首拼
|
||||
patient.setWbStr(ChineseConvertUtils.toWBFirstLetter(patient.getName()));
|
||||
// 根据证件号查询,不存在重复的证件号
|
||||
if (patientExists == null) {
|
||||
// 患者修改了证件号码且不重复,更新患者
|
||||
return baseMapper.updateById(patient) > 0;
|
||||
} else if (patientExists.getId().compareTo(patient.getId()) == 0) {
|
||||
// 患者未修改证件号码,更新患者
|
||||
return baseMapper.updateById(patient) > 0;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,7 @@ package com.openhis.administration.service.impl;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.openhis.common.enums.DelFlag;
|
||||
import com.core.common.enums.DelFlag;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.openhis.administration.service.impl;
|
||||
|
||||
import com.core.common.core.domain.R;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.openhis.administration.domain.SpecimenDefinition;
|
||||
import com.openhis.administration.mapper.SpecimenDefinitionMapper;
|
||||
import com.openhis.administration.service.ISpecimenDefinitionService;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
/**
|
||||
* 样本定义Service业务层处理
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-09-05
|
||||
*/
|
||||
@Service
|
||||
public class SpecimenDefinitionServiceImpl extends ServiceImpl<SpecimenDefinitionMapper, SpecimenDefinition> implements ISpecimenDefinitionService {
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user