解决合并冲突

This commit is contained in:
2025-12-10 14:20:24 +08:00
parent e1385cb3e6
commit 18f6a845e6
804 changed files with 61881 additions and 13577 deletions

View File

@@ -0,0 +1,96 @@
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 lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* 修改价格记录Entity实体
*
* @author system
* @date 2025-10-31
*/
@Data
@TableName("adm_change_price_record")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class ChangePriceRecord extends HisBaseEntity {
/** 本表id */
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 仓库位置 */
private Long locationId;
/** 改价申请人id */
private Long applicantId;
/** 目标枚举 药品、耗材、诊疗、挂号 */
private Integer itemCategoryEnum;
/** 药品ID、耗材ID、诊疗ID、挂号ID */
private Long itemId;
/** 原进货价 */
private BigDecimal originBuyingPrice;
/** 原新价格 */
private BigDecimal originRetailPrice;
/** 审批人ID */
private Long approverId;
/** 审批时间 */
private Date approvalTime;
/** 删除标识 默认 0 未删除 */
private String deleteFlag;
/** 当前品库存量 */
private BigDecimal itemQuantity;
/** 零售价盈负差*/
private BigDecimal differenceRetailPrice;
/**进货价盈负差*/
private BigDecimal differenceBuyingPrice;
/** 当前业务批次号 */
private String busNo;
/** 改价原因 */
private String description;
/** 改价申请时间 */
private Date applicantTime;
/** 业务表名药品、耗材、诊疗、挂号 */
private String itemTable;
/** 新进货价 */
private BigDecimal newBuyingPrice;
/** 新零售价 */
private BigDecimal newRetailPrice;
/** 物品计量单位 */
private String unitCode;
/** 审批状态 */
private Integer statusEnum;
/** 批次号 */
private String lotNumber;
/** 条件理由 */
private String reason;
}

View File

@@ -154,4 +154,10 @@ public class ChargeItem extends HisBaseEntity {
/** 执行id */
private Long procedureId;
/** 发放所在表 */
private String dispenseTable;
/** 发放ID */
private Long dispenseId;
}

View File

@@ -1,6 +1,7 @@
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;

View File

@@ -6,6 +6,7 @@ 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;
@@ -27,6 +28,11 @@ public class HealthcareService extends HisBaseEntity {
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 编码
*/
private String busNo;
/** 活动标记 */
private Integer activeFlag;

View File

@@ -0,0 +1,90 @@
package com.openhis.administration.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-02-20
*/
@Data
@TableName("adm_patient_student")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class PatientStudent extends HisBaseEntity {
/** ID */
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 姓名 */
private String name;
/** 拼音码 */
private String pyStr;
/** 五笔码 */
private String wbStr;
/** 性别 */
private Integer gender;
/** 年龄 */
private Integer age;
/** 学号 */
private String studentId;
/** 身份证号 */
private String idNumber;
/** 电话 */
private String phone;
/** 学院 */
private String college;
/** 专业 */
private String major;
/** 学历层次0预科生1本科生2硕士研究生3博士研究生 */
private Integer educationLevel;
/** 入校时间 */
private Date enrollmentDate;
/** 离校时间 */
private Date graduationDate;
/** 年级 */
private String grade;
/** 学习形式1全日制2非全日制 */
private Integer studyMode;
/** 在校状态0在校1休学2离校 */
private Integer studentStatus;
/** 体检结果0未体检1体检不合格2体检合格 */
private Integer physicalExamResult;
/** 辅导员 */
private String counselor;
/** 辅导员电话 */
private String counselorPhone;
/** 患者ID */
private Long patientId;
}

View File

@@ -1,16 +1,14 @@
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 com.openhis.common.enums.AdministrativeGender;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@@ -90,7 +88,7 @@ public class Practitioner extends HisBaseEntity {
private Long userId;
/** 医生职称 */
private String drProfttlCode ;
private String drProfttlCode;
/** 证件类型 */
private String prscDrCertCode;
@@ -103,4 +101,7 @@ public class Practitioner extends HisBaseEntity {
/** 签名图片 */
private String signature;
/** pos机编号 */
private String posNo;
}

View File

@@ -0,0 +1,96 @@
package com.openhis.administration.dto;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
/**
* @ClassName ChangePricePageDto
* @Description TODO
* @Author raymond
* @Date 2025/10/31 17:35
* @Version 1.0
**/
@Data
public class ChangePriceDataDto {
/** 批次号 */
private String originLotNumber;
/** 改价申请人id */
private Long applicantId;
/** 目标枚举 药品、耗材、诊疗、挂号 */
private Integer itemCategoryEnum;
private String itemCategoryEnum_Text;
/** 药品ID、耗材ID、诊疗ID、挂号ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long itemId;
/**
* 获取名称
*/
private String itemName;
/** 原进货价 */
private BigDecimal originBuyingPrice;
/** 原零售价价格 */
private BigDecimal originRetailPrice;
/** 当前品库存量 */
private BigDecimal itemQuantity;
/** 当前业务批次号 */
private String busNo;
/** 改价申请时间 */
private Date applicantTime;
/** 新进货价 */
private BigDecimal newBuyingPrice;
/** 新零售价 */
private BigDecimal newRetailPrice;
/** 物品计量单位 */
private String unitCode;
/** 审批状态 */
private Integer statusEnum;
private Integer statusEnum_Text;
/** 批次号 */
private String lotNumber;
/** 条件理由 */
private String reason;
/** 零售价盈负差*/
private BigDecimal differenceRetailPrice;
/**进货价盈负差*/
private BigDecimal differenceBuyingPrice;
/**
* 科室名称
*/
private String orgName;
/**
* 价格主表ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long chargeId;
/**
* 调价表ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long changePriceRecordId;
private String label;
/**
* 规格
*/
private String totalVolume;
}

View File

@@ -0,0 +1,24 @@
package com.openhis.administration.dto;
import lombok.Data;
import java.math.BigDecimal;
/**
* @ClassName ChargeItemDefDetailPriceDto
* @Description 获取 药品或耗材 进货价和零售价的DTO
* @Author raymond
* @Date 2025/11/1 21:40
* @Version 1.0
**/
@Data
public class ChargeItemDefDetailPriceDto {
/**
* 进货价或者零售价
*/
private BigDecimal price;
/**
* 拆零比
*/
private BigDecimal partPercent;
}

View File

@@ -0,0 +1,27 @@
package com.openhis.administration.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
/**
* @ClassName EncounterDataDto
* @Description
* @Author raymond
* @Date 2025/10/27 16:01
* @Version 1.0
**/
@Data
public class EncounterDataDto {
/**
* 换着ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long patientId;
/**
* 就诊表ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long encounterId;
}

View File

@@ -0,0 +1,27 @@
package com.openhis.administration.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
/**
* @ClassName EncounterLocationDataDto
* @Description
* @Author raymond
* @Date 2025/10/27 16:01
* @Version 1.0
**/
@Data
public class EncounterLocationDataDto {
/**
* 区域ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long locationId;
/**
* 就诊表ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long encounterId;
}

View File

@@ -0,0 +1,39 @@
package com.openhis.administration.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
/**
* @ClassName HealcareDto
* @Description TODO
* @Author raymond
* @Date 2025/10/18 14:59
* @Version 1.0
**/
@Data
public class HealthcareDto {
private Long itemId;
/**
* 科室id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long orgId;
/**
* 科室名称
*/
private String orgName;
/**
* 项目名称
*/
private String name;
/**
* 分类
*/
private String categoryCode;
/**
* 服务类型
*/
private String typeCode;
}

View File

@@ -0,0 +1,49 @@
package com.openhis.administration.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import java.util.List;
/**
* @ClassName roleDataList
* @Description 权限集合
* @Author raymond
* @Date 2025/10/27 16:01
* @Version 1.0
**/
@Data
public class LocationDataDto {
/**
* 区域ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long locationId;
/**
* 状态
*/
private Integer statusEnum;
/**
* 模式编码
*/
private Integer modeEnum;
/**
* 操作状态
*/
private Integer operationalEnum;
/**
* 岗位类型
*/
private String busNo;
/**
* 区域名称
*/
private String areaName;
/**
* 患者详细信息
*/
private List<PatientBedInfoDto> patientBedInfoDtoList;
}

View File

@@ -0,0 +1,32 @@
package com.openhis.administration.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.openhis.medication.dto.AdjustPriceMedListDto;
import lombok.Data;
import java.util.List;
/**
* @ClassName OrgDataDto
* @Description TODO
* @Author raymond
* @Date 2025/10/22 09:44
* @Version 1.0
**/
@Data
public class OrgDataDto {
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long orgId;
/**
* 科室名称
*/
private String orgName;
/**
* 挂号集合
*/
private List<AdjustPriceMedListDto> healthDataList;
}

View File

@@ -0,0 +1,58 @@
package com.openhis.administration.dto;
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 java.util.Date;
/**
* @ClassName PatientBedInfoDto
* @Description 患者详细信息
* @Author raymond
* @Date 2025/10/30 08:10
* @Version 1.0
**/
@Data
public class PatientBedInfoDto {
/**
* 床位
*/
private String bedName;
/**
* 患者姓名
*/
private String patientName;
/**
* 患者编号ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long patientId;
/**
* 患者性别
*/
private String patientGenderText;
/**
* 患者编号
*/
private String patientNumber;
/**
* 就诊号ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long encounterId;
@JsonSerialize(using = ToStringSerializer.class)
private Long locationId;
/**
* 床位ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long bedLocationId;
/** 生日 */
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date birthDate;
private String patientAgeText;
}

View File

@@ -0,0 +1,26 @@
package com.openhis.administration.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
/**
* @ClassName EncounterDataDto
* @Description
* @Author raymond
* @Date 2025/10/27 16:01
* @Version 1.0
**/
@Data
public class PatientDataDto {
/**
* 换着ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long patientId;
private String patientName;
private Integer gender;
private String idCard;
}

View File

@@ -0,0 +1,39 @@
package com.openhis.administration.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
/**
* @ClassName roleDataList
* @Description 权限集合
* @Author raymond
* @Date 2025/10/27 16:01
* @Version 1.0
**/
@Data
public class RoleDataDto {
/**
* 权限表ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long roleId;
/**
* 科室ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long orgId;
/**
* 区域ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long locationId;
/**
* 专业编码枚举
*/
private Integer specialtyEnum;
/**
* 岗位类型
*/
private String typeCode;
}

View File

@@ -0,0 +1,120 @@
package com.openhis.administration.mapper;
import com.openhis.administration.dto.ChangePriceDataDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.ChangePriceRecord;
import java.util.List;
/**
* 修改价格记录Mapper接口
*
* @author system
* @date 2025-10-15
*/
@Repository
public interface ChangePriceRecordMapper extends BaseMapper<ChangePriceRecord> {
/**
* Desc: 根据条件 查询 药品调价单
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchMedChangePriceByBusNo(@Param("busNo") String busNo,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 药品调价单
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:34 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchMedChangePriceByItemId(@Param("itemId") Long itemId,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 耗材调价单
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchDeviceChangePriceByBusNo(@Param("busNo") String busNo,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 耗材调价单
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:33 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchDeviceChangePriceByItemId(@Param("itemId") Long itemId,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 诊疗调价单
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchActivityChangePriceByBusNo(@Param("busNo") String busNo,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 诊疗调价单
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:32 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchActivityChangePriceByItemId(@Param("itemId") Long itemId,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 挂号调价单
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchHealthChangePriceByBusNo(@Param("busNo") String busNo,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 挂号调价单
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:31 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchHealthChangePriceByItemId(@Param("itemId") Long itemId,@Param("categoryEnum") Integer categoryEnum,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据条件 查询 审批单 审核中的数据
* @param busNo
* @param statusEnum
* @Author raymond
* @Date 10:36 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchChangePriceRecordDataByBusNo(@Param("busNo") String busNo,@Param("statusEnum") Integer statusEnum);
/**
* Desc: 根据编号分组查询 数据
* @param busNo
* @Author raymond
* @Date 09:39 2025/11/5
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceRecord> searchChangePriceDataGroupByBusNo(@Param("busNo") String busNo);
}

View File

@@ -0,0 +1,30 @@
package com.openhis.administration.mapper;
import com.openhis.administration.domain.ChargeItemDefDetail;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/**
* 费用定价管理子Mapper接口
*
* @author system
* @date 2025-02-20
*/
@Repository
public interface ChargeItemDefDetailAppMapper extends BaseMapper<ChargeItemDefDetail> {
/**
* Desc: 根据 参数加载数据
* @param value
* @param code
* @Author raymond
* @Date 08:13 2025/10/29
* @return java.util.List<com.openhis.administration.domain.ChargeItemDefDetail>
**/
List<ChargeItemDefDetail> searchChargeDetailDataByBusNo(@Param("value") String value, @Param("code") String code);
}

View File

@@ -1,9 +1,11 @@
package com.openhis.administration.mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.ChargeItemDefinition;
import com.openhis.administration.dto.ChargeItemDefDetailPriceDto;
/**
* 费用定价管理Mapper接口
@@ -13,5 +15,40 @@ import com.openhis.administration.domain.ChargeItemDefinition;
*/
@Repository
public interface ChargeItemDefinitionMapper extends BaseMapper<ChargeItemDefinition> {
/**
* Desc: 根据 conditionCode 和 药品ID 获取 原价和零售价
*
* @param conditionCode
* @param instanceId
* @Author raymond
* @Date 21:44 2025/11/1
* @return com.openhis.administration.domain.ChargeItemDefinition
**/
ChargeItemDefDetailPriceDto getMedPriceByParam(@Param("conditionCode") String conditionCode,
@Param("instanceId") Long instanceId);
/**
* Desc: 根据 conditionCode 和 耗材ID 获取 原价和零售价
*
* @param conditionCode
* @param instanceId
* @Author raymond
* @Date 07:23 2025/11/4
* @return com.openhis.administration.dto.ChargeItemDefDetailPriceDto
**/
ChargeItemDefDetailPriceDto getDevicePriceByParam(@Param("conditionCode") String conditionCode,
@Param("instanceId") Long instanceId);
/**
* Desc: 根据 状态和货品ID 加载诊疗或挂号的最新零售价
*
* @param statusEnum
* @param instanceId
* @Author raymond
* @Date 22:02 2025/11/1
* @return com.openhis.administration.dto.ChargeItemDefDetailPriceDto
**/
ChargeItemDefDetailPriceDto getProductPrice(@Param("statusEnum") Integer statusEnum,
@Param("instanceId") Long instanceId);
}

View File

@@ -1,10 +1,14 @@
package com.openhis.administration.mapper;
import com.openhis.medication.dto.AdjustPriceMedListDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.DeviceDefinition;
import java.util.List;
/**
* 器材定义管理Mapper接口
*
@@ -13,5 +17,13 @@ import com.openhis.administration.domain.DeviceDefinition;
*/
@Repository
public interface DeviceDefinitionMapper extends BaseMapper<DeviceDefinition> {
/** 根据关键字查询 如果关键字为空查询10条否则返回查询到的所有
* Desc:
* @param keyWord
* @Author raymond
* @Date 20:23 2025/10/21
* @return java.util.List<com.openhis.medication.dto.AdjustPriceMedListDto>
**/
List<AdjustPriceMedListDto> searchDeviceListByKeyWord(@Param("keyWord") String keyWord);
}

View File

@@ -1,9 +1,11 @@
package com.openhis.administration.mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.EncounterLocation;
import com.openhis.administration.dto.PatientBedInfoDto;
/**
* 就诊位置管理Mapper接口
@@ -14,4 +16,17 @@ import com.openhis.administration.domain.EncounterLocation;
@Repository
public interface EncounterLocationMapper extends BaseMapper<EncounterLocation> {
/**
* Desc: 根据区域ID查询所有 就诊信息
*
* @param locationId
* @param statusEnum
* @param formEnum
* @Author raymond
* @Date 12:20 2025/10/28
* @return java.util.List<com.openhis.administration.dto.EncounterDataDto>
**/
PatientBedInfoDto searchEncounterDataByLocationId(@Param("locationId") Long locationId,
@Param("statusEnum") Integer statusEnum,@Param("formEnum") Integer formEnum);
}

View File

@@ -9,6 +9,7 @@ import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.Encounter;
import com.openhis.administration.dto.EncounterAccountDto;
import com.openhis.administration.dto.EncounterDataDto;
/**
* 就诊管理Mapper接口
@@ -28,4 +29,26 @@ public interface EncounterMapper extends BaseMapper<Encounter> {
*/
List<EncounterAccountDto> getEncounterInfoByTime(@Param("startDate") Date startDate,
@Param("endDate") Date endDate);
/**
* Desc: 根据条件查询 encounter 数据
* @param imp
* @param amb
* @param encounterStatus
* @param encounterIds
* @Author raymond
* @Date 12:36 2025/10/28
* @return java.util.List<com.openhis.administration.dto.EncounterDataDto>
**/
List<EncounterDataDto> searchEncounterDataByIds(@Param("imp") Integer imp, @Param("amb") Integer amb,
@Param("encounterStatus") Long encounterStatus, @Param("encounterIds") List<Long> encounterIds);
/**
* Desc: 根据参数加载 患者记录信息
* @param classEnum
* @param encounterId
* @Author raymond
* @Date 12:34 2025/11/3
* @return com.openhis.administration.dto.EncounterDataDto
**/
EncounterDataDto getPatientIdByParam(@Param("classEnum") Integer classEnum,
@Param("encounterId") Long encounterId);
}

View File

@@ -1,9 +1,14 @@
package com.openhis.administration.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.HealthcareService;
import com.openhis.administration.dto.HealthcareDto;
import com.openhis.medication.dto.AdjustPriceMedListDto;
/**
* 服务项目管理Mapper接口
@@ -13,5 +18,22 @@ import com.openhis.administration.domain.HealthcareService;
*/
@Repository
public interface HealthcareServiceMapper extends BaseMapper<HealthcareService> {
/**
* Desc: 根据 项目id数组 加载 挂号数据集合
*
* @param itemIds
* @Author raymond
* @Date 15:36 2025/10/18
* @return java.util.List<com.openhis.administration.dto.HealthcareDto>
**/
List<HealthcareDto> searchHealthByIds(@Param("itemIds") List<Long> itemIds);
/**
* Desc: 查询所有 挂号数据
* @param orgId
* @Author raymond
* @Date 08:32 2025/10/22
* @return java.util.List<com.openhis.medication.dto.AdjustPriceMedListDto>
**/
List<AdjustPriceMedListDto> searchAllHeathData(@Param("orgId") Long orgId,@Param("statusEnum") Integer statusEnum);
}

View File

@@ -1,9 +1,14 @@
package com.openhis.administration.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.Location;
import com.openhis.administration.dto.LocationDataDto;
import com.openhis.administration.dto.PatientBedInfoDto;
/**
* 位置管理Mapper接口
@@ -13,5 +18,22 @@ import com.openhis.administration.domain.Location;
*/
@Repository
public interface LocationMapper extends BaseMapper<Location> {
/**
* Desc: 根据区域id数组查询 区域表
* @param locationIds
* @Author raymond
* @Date 07:46 2025/10/28
* @return java.util.List<com.openhis.administration.dto.LocationDataDto>
**/
List<LocationDataDto> searchLocationDataByIds(@Param("locationIds") List<Long> locationIds);
/**
* Desc: 根据病区bus_no 查询病床
* @param busNo
* @param formEnum
* @Author raymond
* @Date 14:01 2025/10/28
* @return java.util.List<com.openhis.administration.dto.LocationDataDto>
**/
List<PatientBedInfoDto> searchLocationDataByBusNo(@Param("busNo") String busNo, @Param("formEnum") Integer formEnum, @Param("statusEnum") Integer statusEnum);
}

View File

@@ -1,10 +1,13 @@
package com.openhis.administration.mapper;
import com.openhis.administration.dto.OrgDataDto;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.Organization;
import java.util.List;
/**
* 机构管理Mapper接口
*
@@ -13,5 +16,13 @@ import com.openhis.administration.domain.Organization;
*/
@Repository
public interface OrganizationMapper extends BaseMapper<Organization> {
/**
* Desc:
* @param
* @Author raymond
* @Date 09:46 2025/10/22
* @return List<OrgDataDto>
**/
List<OrgDataDto> searchOrgDataByHealth();
}

View File

@@ -1,10 +1,14 @@
package com.openhis.administration.mapper;
import com.openhis.administration.dto.PatientDataDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.Patient;
import java.util.List;
/**
* 患者管理Mapper接口
*
@@ -13,5 +17,14 @@ import com.openhis.administration.domain.Patient;
*/
@Repository
public interface PatientMapper extends BaseMapper<Patient> {
/**
* Desc: 根据属性查询用户信息
* @param patientId
* @param activeFlag
* @Author raymond
* @Date 12:53 2025/10/28
* @return java.util.List<com.openhis.administration.dto.PatientDataDto>
**/
List<PatientDataDto> searchPatientDataByPatientId(@Param("patientId") Long patientId,@Param("activeFlag") Integer activeFlag);
}

View File

@@ -1,17 +1,17 @@
package com.openhis.administration.mapper;
import com.openhis.administration.domain.ChargeItemDefDetail;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.PatientStudent;
/**
* 费用定价管理Mapper接口
* 公费医疗学生名单管理Mapper接口
*
* @author system
* @date 2025-02-20
*/
@Repository
public interface ChargeItemDefAppMapper extends BaseMapper<ChargeItemDefDetail> {
public interface PatientStudentMapper extends BaseMapper<PatientStudent> {
}

View File

@@ -1,9 +1,13 @@
package com.openhis.administration.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.openhis.administration.domain.PractitionerRole;
import com.openhis.administration.dto.RoleDataDto;
/**
* 岗位管理Mapper接口
@@ -13,5 +17,31 @@ import com.openhis.administration.domain.PractitionerRole;
*/
@Repository
public interface PractitionerRoleMapper extends BaseMapper<PractitionerRole> {
/**
* Desc: 根据员工ID 查询
* @param practitionerId
* @param roleCode
* @Author raymond
* @Date 16:43 2025/10/27
* @return java.util.List<com.openhis.administration.dto.RoleDataDto>
**/
List<RoleDataDto> searchPractitionerRoleByPractitionerId(@Param("practitionerId") Long practitionerId,@Param("roleCode") String roleCode);
/**
* Desc: 根据员工ID数组 查询
* @param practitionerIds
* @Author raymond
* @Date 16:49 2025/10/27
* @return java.util.List<com.openhis.administration.dto.RoleDataDto>
**/
List<RoleDataDto> searchPractitionerRoleByPractitionerIds(@Param("practitionerIds") Long practitionerIds);
/**
* Desc: 根据员工ID 查询 locationId数组
* @param practitionerId
* @param roleCode
* @Author raymond
* @Date 16:50 2025/10/27
* @return java.util.List<java.lang.Long>
**/
List<Long> searchPractitionerRoleLocationIds(@Param("practitionerId") Long practitionerId,@Param("roleCode") String roleCode);
}

View File

@@ -84,4 +84,19 @@ public interface IAccountService extends IService<Account> {
*/
List<Account> getAccountListByEncounter(Long encounterId);
/**
* 学生医保转学生自费
*
* @param encounterId 就诊id
* @return 账户id
*/
Long getStudentSelfAccount(Long encounterId);
/**
* 学生自费转学生医保
*
* @param encounterId 就诊id
* @return 账户id
*/
Long getStudentYbAccount(Long encounterId);
}

View File

@@ -0,0 +1,175 @@
package com.openhis.administration.service;
import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.ChangePriceRecord;
import com.openhis.administration.dto.ChangePriceDataDto;
/**
* 修改价格记录Service接口
*
* @author system
* @date 2025-10-15
*/
public interface IChangePriceRecordService extends IService<ChangePriceRecord> {
/**
* Desc: 根据单据号 进行提交审核操作
*
* @param busNo
* @Author raymond
* @Date 23:08 2025/11/1
* @return boolean
**/
boolean submitApproval(String busNo);
/**
* Desc: 根据单据号 查询列表
*
* @param busNo
* @Author raymond
* @Date 08:44 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceRecord> searchChangePriceDataForBusNo(String busNo);
/**
* Desc: 根据条件 查询 药品调价单
*
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchMedChangePriceByBusNo(String busNo, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 根据条件 查询 药品调价单
*
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:34 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchMedChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 根据条件 查询 耗材调价单
*
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchDeviceChangePriceByBusNo(String busNo, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 根据条件 查询 耗材调价单
*
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:33 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchDeviceChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 根据条件 查询 诊疗调价单
*
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchActivityChangePriceByBusNo(String busNo, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 根据条件 查询 诊疗调价单
*
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:32 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchActivityChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 根据条件 查询 挂号调价单
*
* @param busNo
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 09:46 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchHealthChangePriceByBusNo(String busNo, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 根据条件 查询 挂号调价单
*
* @param itemId
* @param categoryEnum
* @param statusEnum
* @Author raymond
* @Date 07:31 2025/11/4
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchHealthChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum);
/**
* Desc: 审核通过操作
*
* @param busNo
* @param now
* @Author raymond
* @Date 10:13 2025/11/2
* @return void
**/
void agreeRequest(String busNo, Date now);
/**
* Desc: 审核驳回操作
*
* @param busNo
* @Author raymond
* @Date 18:43 2025/11/3
* @return boolean
**/
boolean rejectRequest(String busNo);
/**
* Desc: 根据条件 查询 审批单 审核中的数据
*
* @param busNo
* @param statusEnum
* @Author raymond
* @Date 10:36 2025/11/2
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceDataDto> searchChangePriceRecordDataByBusNo(String busNo, Integer statusEnum);
/**
* Desc: 根据编号分组查询 数据
*
* @param busNo
* @Author raymond
* @Date 09:39 2025/11/5
* @return java.util.List<com.openhis.administration.dto.ChangePriceDataDto>
**/
List<ChangePriceRecord> searchChangePriceDataGroupByBusNo(String busNo);
}

View File

@@ -1,5 +1,7 @@
package com.openhis.administration.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.ChargeItemDefDetail;
@@ -34,4 +36,33 @@ public interface IChargeItemDefDetailService extends IService<ChargeItemDefDetai
* @return 新增结果
*/
boolean deleteChargeItemDefApp(Long id);
/**
* Desc: 根据主表ID 数组加载 价格子表
*
* @param chargeItemId
* @Author raymond
* @Date 22:56 2025/10/18
* @return java.util.List<com.openhis.administration.domain.ChargeItemDefDetail>
**/
List<ChargeItemDefDetail> searchChargeItemDefDetailByIds(Long chargeItemId,String code,String lotNumber);
/**
* Desc: 根据 参数加载数据
*
* @param value
* @param code
* @Author raymond
* @Date 08:13 2025/10/29
* @return java.util.List<com.openhis.administration.domain.ChargeItemDefDetail>
**/
List<ChargeItemDefDetail> searchChargeDetailDataByBusNo(String value, String code);
/**
* 根据定价id查询批号售价
*
* @param chargeItemDefIdList 定价ids
* @return 批号售价信息
*/
List<ChargeItemDefDetail> getLotNumberPriceByDefIds(List<Long> chargeItemDefIdList);
}

View File

@@ -1,11 +1,13 @@
package com.openhis.administration.service;
import java.math.BigDecimal;
import java.util.List;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.ChargeItemDefinition;
import com.openhis.administration.domain.HealthcareService;
import com.openhis.administration.dto.ChargeItemDefDetailPriceDto;
/**
* 费用定价管理Service接口
@@ -68,4 +70,59 @@ public interface IChargeItemDefinitionService extends IService<ChargeItemDefinit
void addChargeItemDefinitionAndDetail(String chargeName, String typeCode, String ybCode, String unitCode,
BigDecimal purchasePrice, BigDecimal retailPrice, BigDecimal maximumRetailPrice, Long orgId,
String instanceTable, Long instanceId);
/**
* Desc: 根据 货品ID集合查询 价格主表 集合
*
* @param itemIds
* @Author raymond
* @Date 22:39 2025/10/18
* @return java.util.List<com.openhis.administration.domain.ChargeItemDefinition>
**/
List<ChargeItemDefinition> searchChargeItemDefinitionByMedIds(List<Long> itemIds);
/**
* Desc: 根据参数加载对象
*
* @param instanceId
* @param instanceTable
* @param statusEnum
* @Author raymond
* @Date 11:15 2025/10/30
* @return com.openhis.administration.domain.ChargeItemDefinition
**/
ChargeItemDefinition getChargeItemDefinitionEntity(Long instanceId, String instanceTable, Integer statusEnum);
/**
* Desc: 根据 conditionCode 和 货品ID 获取 原价和零售价
*
* @param conditionCode
* @param instanceId
* @Author raymond
* @Date 21:44 2025/11/1
* @return com.openhis.administration.domain.ChargeItemDefinition
**/
ChargeItemDefDetailPriceDto getMedPriceByParam(String conditionCode, Long instanceId);
/**
* Desc: 根据 conditionCode 和 耗材ID 获取 原价和零售价
*
* @param conditionCode
* @param instanceId
* @Author raymond
* @Date 07:23 2025/11/4
* @return com.openhis.administration.dto.ChargeItemDefDetailPriceDto
**/
ChargeItemDefDetailPriceDto getDevicePriceByParam(String conditionCode, Long instanceId);
/**
* Desc: 根据 状态和货品ID 加载诊疗或挂号的最新零售价
*
* @param statusEnum
* @param instanceId
* @Author raymond
* @Date 22:02 2025/11/1
* @return com.openhis.administration.dto.ChargeItemDefDetailPriceDto
**/
ChargeItemDefDetailPriceDto getProductPrice(Integer statusEnum, Long instanceId);
}

View File

@@ -101,6 +101,14 @@ public interface IChargeItemService extends IService<ChargeItem> {
*/
List<ChargeItemDefInfo> getChargeItemDefInfoByIds(List<Long> chargeItemIds);
/**
* 收费项关联Def项目集合(带组套)
*
* @param chargeItemIds 集合
* @return 集合
*/
List<ChargeItemDefInfo> getChargeItemDefInfoByIdList(List<Long> chargeItemIds);
/**
* 根据执行id查询收费项目信息
*

View File

@@ -1,7 +1,10 @@
package com.openhis.administration.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.DeviceDefinition;
import com.openhis.medication.dto.AdjustPriceMedListDto;
/**
* 器材定义管理Service接口
@@ -26,4 +29,13 @@ public interface IDeviceDefinitionService extends IService<DeviceDefinition> {
* @return
*/
boolean addYbDevice(DeviceDefinition deviceDefinition);
/** 根据关键字查询 如果关键字为空查询10条否则返回查询到的所有
* Desc:
* @param keyWord
* @Author raymond
* @Date 20:23 2025/10/21
* @return java.util.List<com.openhis.medication.dto.AdjustPriceMedListDto>
**/
List<AdjustPriceMedListDto> searchDeviceListByKeyWord(String keyWord);
}

View File

@@ -6,6 +6,8 @@ import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.Encounter;
import com.openhis.administration.dto.EncounterAccountDto;
import com.openhis.administration.dto.EncounterDataDto;
import org.apache.ibatis.annotations.Param;
/**
* 就诊管理Service接口
@@ -69,4 +71,14 @@ public interface IEncounterService extends IService<Encounter> {
* @return 集合
*/
List<EncounterAccountDto> getEncounterInfoByTime(Date startDate, Date endDate);
/**
* Desc: 根据参数加载 患者记录信息
* @param classEnum
* @param encounterId
* @Author raymond
* @Date 12:34 2025/11/3
* @return com.openhis.administration.dto.EncounterDataDto
**/
EncounterDataDto getPatientIdByParam(Integer classEnum,Long encounterId);
}

View File

@@ -2,6 +2,12 @@ package com.openhis.administration.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.HealthcareService;
import com.openhis.administration.dto.HealthcareDto;
import com.openhis.medication.dto.AdjustPriceMedListDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;
import java.util.List;
/**
* 服务项目管理Service接口
@@ -24,5 +30,23 @@ public interface IHealthcareServiceService extends IService<HealthcareService> {
* @return 编辑结果
*/
boolean updateHealthcareService(HealthcareService healthcareService);
/**
* Desc: 根据 项目id数组 加载 挂号数据集合
* @param itemIds
* @Author raymond
* @Date 15:36 2025/10/18
* @return java.util.List<com.openhis.administration.dto.HealthcareDto>
**/
List<HealthcareDto> searchHealthByIds(@Param("itemIds") List<Long> itemIds);
/**
* Desc: 查询所有 挂号数据
* @param
* @Author raymond
* @Date 08:32 2025/10/22
* @return java.util.List<com.openhis.medication.dto.AdjustPriceMedListDto>
**/
List<AdjustPriceMedListDto> searchAllHeathData(Long orgId,Integer statusEnum);
}

View File

@@ -4,6 +4,8 @@ import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.Location;
import com.openhis.administration.dto.LocationDataDto;
import org.apache.ibatis.annotations.Param;
/**
* 位置管理Service接口
@@ -99,4 +101,13 @@ public interface ILocationService extends IService<Location> {
*/
boolean updateStatusById(Long id, Integer status);
/**
* Desc: 根据区域id数组查询 区域表
* @param locationIds
* @Author raymond
* @Date 07:46 2025/10/28
* @return java.util.List<com.openhis.administration.dto.LocationDataDto>
**/
List<LocationDataDto> searchLocationDataByIds(@Param("locationIds") List<Long> locationIds);
}

View File

@@ -3,6 +3,8 @@ package com.openhis.administration.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.OrganizationLocation;
import java.util.List;
/**
* 机构位置关系管理Service接口
*
@@ -28,4 +30,12 @@ public interface IOrganizationLocationService extends IService<OrganizationLocat
*/
OrganizationLocation getOrgLocByOrgIdAndActivityDefinitionId(Long activityDefinitionId);
/**
* 查询诊疗的执行科室列表
*
* @param activityDefinitionId 诊疗定义id
* @return 诊疗的执行科室列表
*/
List<OrganizationLocation> getOrgLocListByOrgIdAndActivityDefinitionId(Long activityDefinitionId);
}

View File

@@ -4,6 +4,7 @@ import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.Organization;
import com.openhis.administration.dto.OrgDataDto;
/**
* 机构管理Service接口
@@ -45,4 +46,13 @@ public interface IOrganizationService extends IService<Organization> {
* @return 科室集合
*/
List<Organization> getOrganizationListById(List<Long> collect);
/**
* Desc:
* @param
* @Author raymond
* @Date 09:46 2025/10/22
* @return List<OrgDataDto>
**/
List<OrgDataDto> searchOrgDataByHealth();
}

View File

@@ -0,0 +1,14 @@
package com.openhis.administration.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.PatientStudent;
/**
* 公费医疗学生名单管理表Service接口
*
* @author system
* @date 2025-02-20
*/
public interface IPatientStudentService extends IService<PatientStudent> {
}

View File

@@ -3,6 +3,8 @@ package com.openhis.administration.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.administration.domain.Practitioner;
import com.openhis.administration.domain.PractitionerRole;
import com.openhis.administration.dto.RoleDataDto;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -54,4 +56,31 @@ public interface IPractitionerRoleService extends IService<PractitionerRole> {
*/
List<PractitionerRole> getNurseList(Long orgId);
/**
* Desc: 根据员工ID 查询
* @param practitionerId
* @param roleCode
* @Author raymond
* @Date 16:43 2025/10/27
* @return java.util.List<com.openhis.administration.dto.RoleDataDto>
**/
List<RoleDataDto> searchPractitionerRoleByPractitionerId(@Param("practitionerId") Long practitionerId, @Param("roleCode") String roleCode);
/**
* Desc: 根据员工ID数组 查询
* @param practitionerIds
* @Author raymond
* @Date 16:49 2025/10/27
* @return java.util.List<com.openhis.administration.dto.RoleDataDto>
**/
List<RoleDataDto> searchPractitionerRoleByPractitionerIds(@Param("practitionerIds") Long practitionerIds);
/**
* Desc: 根据员工ID 查询 locationId数组
* @param practitionerId
* @param roleCode
* @Author raymond
* @Date 16:50 2025/10/27
* @return java.util.List<java.lang.Long>
**/
List<Long> searchPractitionerRoleLocationIds(@Param("practitionerId") Long practitionerId,@Param("roleCode") String roleCode);
}

View File

@@ -69,6 +69,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
.in(Account::getTypeCode, AccountType.MEDICAL_ELECTRONIC_CERTIFICATE.getCode(),
AccountType.ID_CARD.getCode(), AccountType.SOCIAL_SECURITY_CARD.getCode())
.ne(Account::getContractNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)
.ne(Account::getContractNo, CommonConstants.BusinessName.DEFAULT_STUDENT_CONTRACT_NO)
.last(YbCommonConstants.sqlConst.LIMIT1));
if (account != null) {
return account.getId();
@@ -163,4 +164,47 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
public List<Account> getAccountListByEncounter(Long encounterId) {
return baseMapper.selectList(new LambdaQueryWrapper<Account>().eq(Account::getEncounterId, encounterId));
}
/**
* 学生医保转学生自费
*
* @param encounterId 就诊id
* @return 账户id
*/
@Override
public Long getStudentSelfAccount(Long encounterId) {
Account account = baseMapper
.selectOne(new LambdaQueryWrapper<Account>().select(Account::getId).eq(Account::getEncounterId, encounterId)
.in(Account::getTypeCode, AccountType.MEDICAL_ELECTRONIC_CERTIFICATE.getCode(),
AccountType.ID_CARD.getCode(), AccountType.SOCIAL_SECURITY_CARD.getCode())
.ne(Account::getContractNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)
.eq(Account::getContractNo, CommonConstants.BusinessName.DEFAULT_STUDENT_CONTRACT_NO)
.last(YbCommonConstants.sqlConst.LIMIT1));
if (account != null) {
return account.getId();
}
return null;
}
/**
* 学生自费转学生医保
*
* @param encounterId 就诊id
* @return 账户id
*/
@Override
public Long getStudentYbAccount(Long encounterId) {
Account account = baseMapper
.selectOne(new LambdaQueryWrapper<Account>().select(Account::getId).eq(Account::getEncounterId, encounterId)
.in(Account::getTypeCode, AccountType.MEDICAL_ELECTRONIC_CERTIFICATE.getCode(),
AccountType.ID_CARD.getCode(), AccountType.SOCIAL_SECURITY_CARD.getCode())
.ne(Account::getContractNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)
.ne(Account::getContractNo, CommonConstants.BusinessName.DEFAULT_STUDENT_CONTRACT_NO)
.like(Account::getContractNo, CommonConstants.BusinessName.CONTRACT_STUDENT)
.last(YbCommonConstants.sqlConst.LIMIT1));
if (account != null) {
return account.getId();
}
return null;
}
}

View File

@@ -0,0 +1,119 @@
package com.openhis.administration.service.impl;
import java.util.Date;
import java.util.List;
import javax.annotation.Resource;
import com.core.common.core.domain.entity.SysDictData;
import com.openhis.common.constant.CommonConstants;
import com.openhis.workflow.domain.SupplyRequest;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.core.common.utils.DateUtils;
import com.core.common.utils.SecurityUtils;
import com.core.system.mapper.SysDictDataMapper;
import com.openhis.administration.domain.ChangePriceRecord;
import com.openhis.administration.dto.ChangePriceDataDto;
import com.openhis.administration.mapper.ChangePriceRecordMapper;
import com.openhis.administration.service.IChangePriceRecordService;
import com.openhis.common.enums.SupplyStatus;
/**
* 修改价格记录Service业务层处理
*
* @author system
* @date 2025-10-15
*/
@Service
public class ChangePriceRecordServiceImpl extends ServiceImpl<ChangePriceRecordMapper, ChangePriceRecord>
implements IChangePriceRecordService {
@Resource
private SysDictDataMapper sysDictDataMapper;
@Override
public boolean submitApproval(String busNo) {
int updateCount = baseMapper.update(null,
new LambdaUpdateWrapper<ChangePriceRecord>().eq(ChangePriceRecord::getBusNo, busNo)
.set(ChangePriceRecord::getApplicantTime, DateUtils.getNowDate())
.set(ChangePriceRecord::getStatusEnum, SupplyStatus.APPROVAL.getValue()));
return updateCount > 0;
}
@Override
public List<ChangePriceRecord> searchChangePriceDataForBusNo(String busNo) {
return this.baseMapper.selectList(new LambdaUpdateWrapper<ChangePriceRecord>().eq(ChangePriceRecord::getBusNo,busNo));
}
@Override
public List<ChangePriceDataDto> searchMedChangePriceByBusNo(String busNo, Integer categoryEnum,Integer statusEnum) {
return this.baseMapper.searchMedChangePriceByBusNo(busNo, categoryEnum,statusEnum);
}
@Override
public List<ChangePriceDataDto> searchMedChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum) {
return this.baseMapper.searchMedChangePriceByItemId(itemId,categoryEnum,statusEnum);
}
@Override
public List<ChangePriceDataDto> searchDeviceChangePriceByBusNo(String busNo, Integer categoryEnum,Integer statusEnum) {
return this.baseMapper.searchDeviceChangePriceByBusNo(busNo,categoryEnum, statusEnum);
}
@Override
public List<ChangePriceDataDto> searchDeviceChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum) {
return this.baseMapper.searchDeviceChangePriceByItemId(itemId,categoryEnum,statusEnum);
}
@Override
public List<ChangePriceDataDto> searchActivityChangePriceByBusNo(String busNo, Integer categoryEnum,Integer statusEnum) {
return this.baseMapper.searchActivityChangePriceByBusNo(busNo,categoryEnum, statusEnum);
}
@Override
public List<ChangePriceDataDto> searchActivityChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum) {
return this.baseMapper.searchActivityChangePriceByItemId(itemId,categoryEnum,statusEnum);
}
@Override
public List<ChangePriceDataDto> searchHealthChangePriceByBusNo(String busNo, Integer categoryEnum,Integer statusEnum) {
return this.baseMapper.searchHealthChangePriceByBusNo(busNo,categoryEnum,statusEnum);
}
@Override
public List<ChangePriceDataDto> searchHealthChangePriceByItemId(Long itemId, Integer categoryEnum, Integer statusEnum) {
return this.baseMapper.searchHealthChangePriceByItemId(itemId,categoryEnum,statusEnum);
}
@Override
public void agreeRequest(String busNo, Date now) {
baseMapper.update(null,
new LambdaUpdateWrapper<ChangePriceRecord>().eq(ChangePriceRecord::getBusNo, busNo)
.set(ChangePriceRecord::getApprovalTime, now)
.set(ChangePriceRecord::getApproverId, SecurityUtils.getLoginUser().getPractitionerId())
.set(ChangePriceRecord::getStatusEnum, SupplyStatus.AGREE.getValue()));
}
@Override
public boolean rejectRequest(String busNo) {
int updateCount = baseMapper.update(null,
new LambdaUpdateWrapper<ChangePriceRecord>().eq(ChangePriceRecord::getBusNo, busNo)
.set(ChangePriceRecord::getApprovalTime, DateUtils.getNowDate())
.set(ChangePriceRecord::getApproverId, SecurityUtils.getLoginUser().getPractitionerId())
.set(ChangePriceRecord::getStatusEnum, SupplyStatus.REJECT.getValue()));
return updateCount > 0;
}
@Override
public List<ChangePriceDataDto> searchChangePriceRecordDataByBusNo(String busNo, Integer statusEnum) {
return this.baseMapper.searchChangePriceRecordDataByBusNo(busNo,statusEnum);
}
@Override
public List<ChangePriceRecord> searchChangePriceDataGroupByBusNo(String busNo) {
return this.baseMapper.searchChangePriceDataGroupByBusNo(busNo);
}
}

View File

@@ -1,11 +1,16 @@
package com.openhis.administration.service.impl;
import com.openhis.administration.domain.ChargeItemDefDetail;
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.administration.mapper.ChargeItemDefAppMapper;
import com.openhis.administration.domain.ChargeItemDefDetail;
import com.openhis.administration.mapper.ChargeItemDefDetailAppMapper;
import com.openhis.administration.service.IChargeItemDefDetailService;
import com.openhis.common.enums.ConditionCode;
import com.openhis.common.enums.DelFlag;
/**
* 费用定价管理子Service业务层处理
@@ -14,7 +19,7 @@ import com.openhis.administration.service.IChargeItemDefDetailService;
* @date 2025-02-20
*/
@Service
public class ChargeItemDefDetailServiceImpl extends ServiceImpl<ChargeItemDefAppMapper, ChargeItemDefDetail>
public class ChargeItemDefDetailServiceImpl extends ServiceImpl<ChargeItemDefDetailAppMapper, ChargeItemDefDetail>
implements IChargeItemDefDetailService {
/**
@@ -31,7 +36,7 @@ public class ChargeItemDefDetailServiceImpl extends ServiceImpl<ChargeItemDefApp
if (baseMapper.selectById(chargeItemDefDetail.getId()) == null) {
return false;
} else {
//todo deleteFlag=1
// todo deleteFlag=1
return baseMapper.updateById(chargeItemDefDetail) > 0;
}
} else {
@@ -69,4 +74,33 @@ public class ChargeItemDefDetailServiceImpl extends ServiceImpl<ChargeItemDefApp
return baseMapper.deleteById(id) > 0;
}
}
@Override
public List<ChargeItemDefDetail> searchChargeItemDefDetailByIds(Long chargeItemId, String code, String lotNumber) {
LambdaQueryWrapper<ChargeItemDefDetail> queryWrapper = new LambdaQueryWrapper<ChargeItemDefDetail>()
.eq(ChargeItemDefDetail::getDefinitionId, chargeItemId).eq(ChargeItemDefDetail::getConditionCode, code);
if (lotNumber != null) {
queryWrapper.eq(ChargeItemDefDetail::getConditionValue, lotNumber);
}
return baseMapper.selectList(queryWrapper);
}
@Override
public List<ChargeItemDefDetail> searchChargeDetailDataByBusNo(String value, String code) {
return this.baseMapper.searchChargeDetailDataByBusNo(value, code);
}
/**
* 根据定价id查询批号售价
*
* @param chargeItemDefIdList 定价ids
* @return 批号售价信息
*/
@Override
public List<ChargeItemDefDetail> getLotNumberPriceByDefIds(List<Long> chargeItemDefIdList) {
return baseMapper.selectList(
new LambdaQueryWrapper<ChargeItemDefDetail>().in(ChargeItemDefDetail::getDefinitionId, chargeItemDefIdList)
.eq(ChargeItemDefDetail::getConditionCode, ConditionCode.LOT_NUMBER_PRICE.getCode())
.eq(ChargeItemDefDetail::getDeleteFlag, DelFlag.NO.getCode()));
}
}

View File

@@ -14,6 +14,7 @@ import com.core.common.utils.DateUtils;
import com.openhis.administration.domain.ChargeItemDefDetail;
import com.openhis.administration.domain.ChargeItemDefinition;
import com.openhis.administration.domain.HealthcareService;
import com.openhis.administration.dto.ChargeItemDefDetailPriceDto;
import com.openhis.administration.mapper.ChargeItemDefinitionMapper;
import com.openhis.administration.service.IChargeItemDefDetailService;
import com.openhis.administration.service.IChargeItemDefinitionService;
@@ -154,4 +155,34 @@ public class ChargeItemDefinitionServiceImpl extends ServiceImpl<ChargeItemDefin
chargeItemDefDetailService.saveBatch(chargeItemDefDetailList);
}
@Override
public List<ChargeItemDefinition> searchChargeItemDefinitionByMedIds(List<Long> itemIds) {
return baseMapper.selectList(
new LambdaQueryWrapper<ChargeItemDefinition>().in(ChargeItemDefinition::getInstanceId, itemIds));
}
@Override
public ChargeItemDefinition getChargeItemDefinitionEntity(Long instanceId, String instanceTable,
Integer statusEnum) {
return baseMapper.selectOne(
new LambdaQueryWrapper<ChargeItemDefinition>().eq(ChargeItemDefinition::getInstanceId, instanceId)
.eq(ChargeItemDefinition::getInstanceTable, instanceTable)
.eq(ChargeItemDefinition::getStatusEnum, statusEnum));
}
@Override
public ChargeItemDefDetailPriceDto getMedPriceByParam(String conditionCode, Long instanceId) {
return this.baseMapper.getMedPriceByParam(conditionCode, instanceId);
}
@Override
public ChargeItemDefDetailPriceDto getDevicePriceByParam(String conditionCode, Long instanceId) {
return this.baseMapper.getDevicePriceByParam(conditionCode,instanceId);
}
@Override
public ChargeItemDefDetailPriceDto getProductPrice(Integer statusEnum, Long instanceId) {
return this.baseMapper.getProductPrice(statusEnum, instanceId);
}
}

View File

@@ -4,15 +4,22 @@ import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.alibaba.fastjson.JSON;
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.exception.ServiceException;
import com.core.common.utils.SecurityUtils;
import com.core.common.utils.StringUtils;
import com.openhis.administration.domain.ChargeItem;
import com.openhis.administration.domain.ChargeItemDefinition;
import com.openhis.administration.dto.ChargeItemBaseInfoDto;
import com.openhis.administration.dto.ChargeItemDefInfo;
import com.openhis.administration.mapper.ChargeItemDefinitionMapper;
import com.openhis.administration.mapper.ChargeItemMapper;
import com.openhis.administration.service.IChargeItemService;
import com.openhis.common.enums.ChargeItemContext;
@@ -31,6 +38,9 @@ import lombok.AllArgsConstructor;
@AllArgsConstructor
public class ChargeItemServiceImpl extends ServiceImpl<ChargeItemMapper, ChargeItem> implements IChargeItemService {
@Autowired
ChargeItemDefinitionMapper chargeItemDefinitionMapper;
/**
* 创建已计费的采购账单
*
@@ -177,6 +187,47 @@ public class ChargeItemServiceImpl extends ServiceImpl<ChargeItemMapper, ChargeI
return baseMapper.getChargeItemDefInfoByIds(chargeItemIds);
}
/**
* 收费项关联Def项目集合(带组套)
*
* @param chargeItemIds 集合
* @return 集合
*/
@Override
public List<ChargeItemDefInfo> getChargeItemDefInfoByIdList(List<Long> chargeItemIds) {
List<ChargeItemDefInfo> chargeItemDefInfos = baseMapper.getChargeItemDefInfoByIds(chargeItemIds);
List<ChargeItemDefInfo> chargeItemDefInfoChildren = new ArrayList<>();
ChargeItemDefInfo chargeItemDefInfo;
for (ChargeItemDefInfo chargeItemDefInfoById : chargeItemDefInfos) {
if (!StringUtils.isEmpty(chargeItemDefInfoById.getChildrenJson())) {
List<ChargeItem> childrenList =
JSON.parseArray(chargeItemDefInfoById.getChildrenJson(), ChargeItem.class);
for (ChargeItem chargeItem : childrenList) {
ChargeItemDefinition chargeItemDefinition =
chargeItemDefinitionMapper.selectById(chargeItem.getDefinitionId());
if (chargeItemDefinition == null) {
throw new ServiceException("未查询到定价信息!提示信息:" + chargeItemDefInfoById.getChargeName() + "子项信息--"
+ chargeItem.getDefinitionId());
}
chargeItemDefInfo = new ChargeItemDefInfo();
BeanUtils.copyProperties(chargeItem, chargeItemDefInfo);
BeanUtils.copyProperties(chargeItemDefinition, chargeItemDefInfo);
chargeItemDefInfoChildren.add(chargeItemDefInfo);
}
}
}
if (!chargeItemDefInfoChildren.isEmpty()) {
chargeItemDefInfos.addAll(chargeItemDefInfoChildren);
}
return chargeItemDefInfos;
}
/**
* 根据执行id查询收费项目信息
*

View File

@@ -2,6 +2,7 @@ package com.openhis.administration.service.impl;
import java.util.List;
import com.openhis.medication.dto.AdjustPriceMedListDto;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -47,4 +48,9 @@ public class DeviceDefinitionServiceImpl extends ServiceImpl<DeviceDefinitionMap
public boolean addYbDevice(DeviceDefinition deviceDefinition) {
return false;
}
@Override
public List<AdjustPriceMedListDto> searchDeviceListByKeyWord(String keyWord) {
return this.deviceDefinitionMapper.searchDeviceListByKeyWord(keyWord);
}
}

View File

@@ -5,6 +5,7 @@ import java.util.List;
import javax.annotation.Resource;
import com.openhis.administration.dto.EncounterDataDto;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -145,4 +146,9 @@ public class EncounterServiceImpl extends ServiceImpl<EncounterMapper, Encounter
public List<EncounterAccountDto> getEncounterInfoByTime(Date startDate, Date endDate) {
return baseMapper.getEncounterInfoByTime(startDate, endDate);
}
@Override
public EncounterDataDto getPatientIdByParam(Integer classEnum, Long encounterId) {
return this.baseMapper.getPatientIdByParam(classEnum,encounterId);
}
}

View File

@@ -2,11 +2,16 @@ package com.openhis.administration.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.administration.domain.HealthcareService;
import com.openhis.administration.dto.HealthcareDto;
import com.openhis.administration.mapper.HealthcareServiceMapper;
import com.openhis.administration.service.IHealthcareServiceService;
import com.openhis.medication.dto.AdjustPriceMedListDto;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
* 服务项目管理Service业务层处理
*
@@ -14,8 +19,11 @@ import org.springframework.transaction.annotation.Transactional;
* @date 2025-02-20
*/
@Service
@AllArgsConstructor
public class HealthcareServiceServiceImpl extends ServiceImpl<HealthcareServiceMapper, HealthcareService> implements IHealthcareServiceService {
private final HealthcareServiceMapper healthcareServiceMapper;
/**
* 服务管理 新增
@@ -45,4 +53,14 @@ public class HealthcareServiceServiceImpl extends ServiceImpl<HealthcareServiceM
}
}
@Override
public List<HealthcareDto> searchHealthByIds(List<Long> itemIds) {
return this.healthcareServiceMapper.searchHealthByIds(itemIds);
}
@Override
public List<AdjustPriceMedListDto> searchAllHeathData(Long orgId,Integer statusEnum) {
return this.healthcareServiceMapper.searchAllHeathData(orgId,statusEnum);
}
}

View File

@@ -2,6 +2,7 @@ package com.openhis.administration.service.impl;
import java.util.List;
import com.openhis.administration.dto.LocationDataDto;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -14,6 +15,8 @@ import com.openhis.common.enums.DelFlag;
import com.openhis.common.enums.LocationForm;
import com.openhis.common.enums.LocationStatus;
import javax.annotation.Resource;
/**
* 位置管理Service业务层处理
*
@@ -22,6 +25,8 @@ import com.openhis.common.enums.LocationStatus;
*/
@Service
public class LocationServiceImpl extends ServiceImpl<LocationMapper, Location> implements ILocationService {
@Resource
private LocationMapper locationMapper;
/**
* 获取药房列表
@@ -180,4 +185,9 @@ public class LocationServiceImpl extends ServiceImpl<LocationMapper, Location> i
return baseMapper.updateById(location) > 0;
}
@Override
public List<LocationDataDto> searchLocationDataByIds(List<Long> locationIds) {
return this.locationMapper.searchLocationDataByIds(locationIds);
}
}

View File

@@ -1,6 +1,7 @@
package com.openhis.administration.service.impl;
import java.sql.Time;
import java.util.List;
import org.springframework.stereotype.Service;
@@ -50,4 +51,16 @@ public class OrganizationLocationServiceImpl extends ServiceImpl<OrganizationLoc
.lt(OrganizationLocation::getStartTime, time).gt(OrganizationLocation::getEndTime, time));
}
/**
* 查询诊疗的执行科室列表
*
* @param activityDefinitionId 诊疗定义id
* @return 诊疗的执行科室列表
*/
@Override
public List<OrganizationLocation> getOrgLocListByOrgIdAndActivityDefinitionId(Long activityDefinitionId) {
return baseMapper.selectList(new LambdaQueryWrapper<OrganizationLocation>()
.eq(OrganizationLocation::getActivityDefinitionId, activityDefinitionId));
}
}

View File

@@ -3,6 +3,7 @@ package com.openhis.administration.service.impl;
import java.util.List;
import com.openhis.administration.domain.Practitioner;
import com.openhis.administration.dto.OrgDataDto;
import com.openhis.common.enums.DelFlag;
import org.springframework.stereotype.Service;
@@ -14,6 +15,8 @@ import com.openhis.administration.mapper.OrganizationMapper;
import com.openhis.administration.service.IOrganizationService;
import com.openhis.common.enums.AccountStatus;
import javax.annotation.Resource;
/**
* 机构管理Service业务层处理
*
@@ -23,7 +26,8 @@ import com.openhis.common.enums.AccountStatus;
@Service
public class OrganizationServiceImpl extends ServiceImpl<OrganizationMapper, Organization>
implements IOrganizationService {
@Resource
private OrganizationMapper organizationMapper;
/**
* 机构启用
*
@@ -75,4 +79,9 @@ public class OrganizationServiceImpl extends ServiceImpl<OrganizationMapper, Org
return baseMapper.selectList(new LambdaQueryWrapper<Organization>().in(Organization::getId, collect)
.eq(Organization::getDeleteFlag, DelFlag.NO.getCode()));
}
@Override
public List<OrgDataDto> searchOrgDataByHealth() {
return this.organizationMapper.searchOrgDataByHealth();
}
}

View File

@@ -0,0 +1,61 @@
package com.openhis.administration.service.impl;
import java.util.Date;
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.core.common.exception.ServiceException;
import com.openhis.administration.domain.Patient;
import com.openhis.administration.domain.PatientStudent;
import com.openhis.administration.mapper.PatientStudentMapper;
import com.openhis.administration.service.IPatientStudentService;
import com.openhis.common.enums.DelFlag;
import com.openhis.common.enums.PhysicalExamResult;
/**
* 公费医疗学生名单管理表Service业务层处理
*
* @author system
* @date 2025-02-20
*/
@Service
public class PatientStudentServiceImpl extends ServiceImpl<PatientStudentMapper, PatientStudent>
implements IPatientStudentService {
/**
* 校验学生公费资格
*
* @param patient
*/
public void checkStatus(Patient patient) {
String idCard = patient.getIdCard();
Date date = new Date();
List<PatientStudent> patientStudents = baseMapper.selectList(new LambdaQueryWrapper<PatientStudent>()
.eq(PatientStudent::getIdNumber, idCard).eq(PatientStudent::getDeleteFlag, DelFlag.NO.getCode())
.eq(PatientStudent::getPatientId, patient.getId()));
if (patientStudents == null || patientStudents.isEmpty()) {
throw new ServiceException("该患者不是学生,请更换费用性质类型!");
}
PatientStudent patientStudent = null;
for (PatientStudent item : patientStudents) {
if (date.after(item.getEnrollmentDate()) && date.before(item.getGraduationDate())) {
patientStudent = item;
}
}
if (patientStudent == null) {
throw new ServiceException("该患者公费资格未生效或已失效!!不可以享受公费");
}
if (!PhysicalExamResult.EXAMINATION_PASSED.getValue().equals(patientStudent.getPhysicalExamResult())) {
throw new ServiceException("该患者体检不合格不可以享受公费");
}
}
}

View File

@@ -3,6 +3,7 @@ package com.openhis.administration.service.impl;
import java.util.List;
import java.util.stream.Collectors;
import com.openhis.administration.dto.RoleDataDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -113,4 +114,19 @@ public class PractitionerRoleServiceImpl extends ServiceImpl<PractitionerRoleMap
// 身份类型是护士
.eq(PractitionerRole::getRoleCode, PractitionerRoles.NURSE.getCode()));
}
@Override
public List<RoleDataDto> searchPractitionerRoleByPractitionerId(Long practitionerId, String roleCode) {
return this.practitionerRoleMapper.searchPractitionerRoleByPractitionerId(practitionerId,roleCode);
}
@Override
public List<RoleDataDto> searchPractitionerRoleByPractitionerIds(Long practitionerIds) {
return this.practitionerRoleMapper.searchPractitionerRoleByPractitionerIds(practitionerIds);
}
@Override
public List<Long> searchPractitionerRoleLocationIds(Long practitionerId, String roleCode) {
return this.practitionerRoleMapper.searchPractitionerRoleLocationIds(practitionerId,roleCode);
}
}

View File

@@ -2,8 +2,6 @@ package com.openhis.administration.service.impl;
import java.util.List;
import com.openhis.common.enums.DelFlag;
import com.openhis.common.enums.Whether;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -12,7 +10,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.openhis.administration.domain.Supplier;
import com.openhis.administration.mapper.SupplierMapper;
import com.openhis.administration.service.ISupplierService;
import com.openhis.common.enums.DelFlag;
import com.openhis.common.enums.SupplierType;
import com.openhis.common.enums.Whether;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -58,9 +58,10 @@ public class SupplierServiceImpl extends ServiceImpl<SupplierMapper, Supplier> i
*/
@Override
public List<Supplier> getList() {
return baseMapper.selectList(new LambdaQueryWrapper<Supplier>().select(Supplier::getId, Supplier::getName, Supplier::getPhone)
.eq(Supplier::getTypeEnum, SupplierType.ACTIVE.getValue())
.eq(Supplier::getDeleteFlag, DelFlag.NO.getCode()).eq(Supplier::getActiveFlag, Whether.YES.getValue()));
return baseMapper.selectList(
new LambdaQueryWrapper<Supplier>().select(Supplier::getId, Supplier::getName, Supplier::getPhone)
.eq(Supplier::getTypeEnum, SupplierType.SUPPLIER.getValue())
.eq(Supplier::getDeleteFlag, DelFlag.NO.getCode()).eq(Supplier::getActiveFlag, Whether.YES.getValue()));
}
/**