枚举调整

This commit is contained in:
Wang.Huan
2025-03-17 17:02:53 +08:00
parent 8c6be970bb
commit 60bb08925a
13 changed files with 182 additions and 27 deletions

View File

@@ -198,7 +198,7 @@ public class DiagnosisTreatmentController {
for (Long detail : ids) {
ActivityDefinition ActivityDefinition = new ActivityDefinition();
ActivityDefinition.setId(detail);
ActivityDefinition.setStatusEnum(PublicationStatus.RETIRED);
ActivityDefinition.setStatusEnum(PublicationStatus.RETIRED.getValue());
ActivityDefinitionList.add(ActivityDefinition);
}
// 更新诊疗信息
@@ -221,7 +221,7 @@ public class DiagnosisTreatmentController {
for (Long detail : ids) {
ActivityDefinition ActivityDefinition = new ActivityDefinition();
ActivityDefinition.setId(detail);
ActivityDefinition.setStatusEnum(PublicationStatus.ACTIVE);
ActivityDefinition.setStatusEnum(PublicationStatus.ACTIVE.getValue());
ActivityDefinitionList.add(ActivityDefinition);
}
// 更新诊疗信息
@@ -241,7 +241,7 @@ public class DiagnosisTreatmentController {
ActivityDefinition ActivityDefinition = new ActivityDefinition();
BeanUtils.copyProperties(diagnosisTreatmentUpDto, ActivityDefinition);
// 新增外来诊疗目录
ActivityDefinition.setStatusEnum(PublicationStatus.DRAFT);
ActivityDefinition.setStatusEnum(PublicationStatus.DRAFT.getValue());
return iActivityDefinitionService.addDiagnosisTreatment(ActivityDefinition)
? R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00002, new Object[] {"诊疗目录"}))
: R.fail(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00008, null));

View File

@@ -14,7 +14,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.openhis.common.constant.CommonConstants;
import com.openhis.common.enums.ActivityType;
import com.openhis.common.enums.ConditionCode;
import com.openhis.common.utils.EnumUtils;
import com.openhis.common.utils.HisQueryUtils;
import com.openhis.web.doctorstation.appservice.IDoctorStationAdviceAppService;
import com.openhis.web.doctorstation.dto.AdviceBaseDto;
@@ -119,6 +121,8 @@ public class DoctorStationAdviceAppServiceImpl implements IDoctorStationAdviceAp
.collect(Collectors.toList());
// 诊疗-赋值
for (AdviceBaseDto baseDto : activityList) {
// 活动类型
baseDto.setActivityType_enumText(EnumUtils.getInfoByValue(ActivityType.class, baseDto.getActivityType()));
List<AdvicePriceDto> priceList =
mainCharge.stream().filter(e -> baseDto.getChargeItemDefinitionId().equals(e.getDefinitionId()))
.collect(Collectors.toList());

View File

@@ -43,6 +43,12 @@ public class AdviceBaseDto {
/** 商品名称 */
private String productName;
/**
* 活动类型
*/
private Integer activityType;
private String activityType_enumText;
/** 包装单位 */
@Dict(dictCode = "unit_code")
private String unitCode;

View File

@@ -42,9 +42,16 @@ public class AdviceInventoryDto {
/** 产品批号 */
private String lotNumber;
/** 库房id */
@JsonSerialize(using = ToStringSerializer.class)
private Long locationId;
/**
* 库房名称
*/
private String locationName;
/** 采购单价(进价) */
private BigDecimal price;
}

View File

@@ -14,6 +14,7 @@
abi.wb_str,
abi.yb_no,
abi.product_name,
abi.activity_type,
abi.unit_code,
abi.min_unit_code,
abi.volume,
@@ -35,6 +36,7 @@
T1.wb_str AS wb_str,
T1.yb_no AS yb_no,
T1.merchandise_name AS product_name,
0 AS activity_type,
T1.unit_code AS unit_code,
T1.min_unit_code AS min_unit_code,
T2.total_volume AS volume,
@@ -67,6 +69,7 @@
T1.wb_str AS wb_str,
T1.yb_no AS yb_no,
'' AS product_name,
0 AS activity_type,
T1.unit_code AS unit_code,
T1.min_unit_code AS min_unit_code,
T1.SIZE AS volume,
@@ -97,6 +100,7 @@
T1.wb_str AS wb_str,
T1.yb_no AS yb_no,
'' AS product_name,
T1.type_enum AS activity_type,
'' AS unit_code,
'' AS min_unit_code,
'' AS volume,
@@ -125,6 +129,8 @@
T1.min_quantity,
T1.min_unit_code,
T1.lot_number,
T1.price,
T1.location_id,
T2.NAME AS location_name
FROM
wor_inventory_item AS T1
@@ -145,20 +151,26 @@
</select>
<select id="getChildCharge" resultType="com.openhis.web.doctorstation.dto.AdvicePriceDto">
SELECT definition_id,
condition_value,
condition_code,
amount AS price
FROM adm_charge_item_def_detail
WHERE delete_flag = '0'
AND condition_code = #{conditionCode}
SELECT
T1.definition_id,
T2.charge_name,
T1.condition_value,
T1.condition_code,
T1.amount AS price
FROM
adm_charge_item_def_detail AS T1
LEFT JOIN adm_charge_item_definition AS T2 ON T2.ID = T1.definition_id
AND T2.delete_flag = '0'
WHERE
T1.delete_flag = '0'
AND T1.condition_code = #{conditionCode}
<if test="chargeItemDefinitionIdList != null and !chargeItemDefinitionIdList.isEmpty()">
AND definition_id IN
AND T1.definition_id IN
<foreach collection="chargeItemDefinitionIdList" item="itemId" open="(" separator="," close=")">
#{itemId}
</foreach>
</if>
ORDER BY priority DESC
ORDER BY T1.priority DESC
</select>
<select id="getMainCharge" resultType="com.openhis.web.doctorstation.dto.AdvicePriceDto">

View File

@@ -63,6 +63,18 @@ public class DictAspect {
if (dto == null) {
return;
}
// 检查对象是否是 DTO 类(即是否有 @Dict 注解的字段)
boolean isDto = false;
for (Field field : dto.getClass().getDeclaredFields()) {
if (field.isAnnotationPresent(Dict.class)) {
isDto = true;
break;
}
}
// 如果不是 DTO 类,直接返回
if (!isDto) {
return;
}
// 获取 DTO 类的所有字段
for (Field field : dto.getClass().getDeclaredFields()) {
field.setAccessible(true); // 设置字段可访问

View File

@@ -0,0 +1,30 @@
package com.openhis.common.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 活动类型
*/
@Getter
@AllArgsConstructor
public enum ActivityType implements HisEnumInterface {
PROOF(1, "PROOF", "检验"),
TEST(2, "TEST", "检查"),
CARE(3, "CARE", "护理"),
OPERATION(4, "OPERATION", "手术"),
OTHER(5, "OTHER", "其他");
@EnumValue
private final Integer value;
private final String code;
private final String info;
}

View File

@@ -20,7 +20,9 @@ public enum EncounterClass implements HisEnumInterface {
VR(5, "VR", "线上"),
HH(6, "HH", "家庭");
HH(6, "HH", "家庭"),
OTHER(7, "OTHER", "家庭");
@EnumValue
private final Integer value;

View File

@@ -0,0 +1,62 @@
/*
* Copyright ©2023 CJB-CNIT Team. All rights reserved
*/
package com.openhis.common.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 请求状态
*/
@Getter
@AllArgsConstructor
public enum RequestStatus implements HisEnumInterface {
/**
* 待发送
*/
DRAFT(1, "draft", "待发送"),
/**
* 已发送
*/
COMPLETED(2, "completed", "已发送"),
/**
* 暂停
*/
ON_HOLD(3, "on_hold", "暂停"),
/**
* 撤回
*/
CANCELLED(4, "cancelled", "撤回"),
/**
* 停止
*/
STOPPED(5, "stopped", "停止"),
/**
* 不可用
*/
ENDED(6, "ended", "不可用"),
/**
* 未知
*/
UNKNOWN(7, "unknown", "未知"),
/**
* 已汇总
*/
SUMMARIZED(8, "summarized", "已汇总");
@EnumValue
private final Integer value;
private final String code;
private final String info;
}

View File

@@ -0,0 +1,26 @@
package com.openhis.common.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 治疗时长类型
*/
@Getter
@AllArgsConstructor
public enum TherapyTimeType implements HisEnumInterface {
LONG_TERM(1, "LT", "长期"),
TEMPORARY(2, "TEMP", "临时"),
SEASONAL(3, "SS", "季节性");
@EnumValue
private final Integer value;
private final String code;
private final String info;
}

View File

@@ -6,8 +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 lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@@ -73,7 +73,7 @@ public class MedicationRequest extends HisBaseEntity {
/** 是否停止执行 */
private Integer performFlag;
/** 药品编码 */
/** 药品定义id */
private Long medicationId;
/** 患者 */
@@ -166,10 +166,7 @@ public class MedicationRequest extends HisBaseEntity {
/** 每次发药供应天数 */
private Integer dispensePerDuration;
/** 发药人 */
private Long dispenserId;
/** 输液速度 */
private Integer speed;
}

View File

@@ -28,7 +28,7 @@ public class ActivityDefinition extends HisBaseEntity {
private Long id;
/** 目录类别 */
private ActivityDefCategory categoryEnum;
private Integer categoryEnum;
/** 编码 */
private String busNo;
@@ -43,7 +43,7 @@ public class ActivityDefinition extends HisBaseEntity {
private String wbStr;
/** 类型 */
private String typeCode;
private Integer typeEnum;
/** 使用单位 */
private String permittedUnitCode;
@@ -58,7 +58,7 @@ public class ActivityDefinition extends HisBaseEntity {
private Integer ybMatchFlag;
/** 状态 */
private PublicationStatus statusEnum;
private Integer statusEnum;
/** 身体部位 */
private String bodySiteCode;

View File

@@ -64,7 +64,7 @@ public class DeviceRequest extends HisBaseEntity {
/** 产品批号 */
private String lotNumber;
/** 器材编码 */
/** 耗材定义id */
private Long deviceDefId;
/** 请求合计(元) */
@@ -82,7 +82,7 @@ public class DeviceRequest extends HisBaseEntity {
/** 默认器材房 */
private Long locationId;
/** 相关诊疗 */
/** 就诊id */
private Long encounterId;
/** 用药频次 */
@@ -130,7 +130,4 @@ public class DeviceRequest extends HisBaseEntity {
/** 支持用药信息 */
private String supportInfo;
/** 发放编号 */
private Long dispenseId;
}