diff --git a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationLabApplyServiceImpl.java b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationLabApplyServiceImpl.java index aee6e3f33..740fea3f5 100755 --- a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationLabApplyServiceImpl.java +++ b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationLabApplyServiceImpl.java @@ -461,7 +461,7 @@ public class DoctorStationLabApplyServiceImpl implements IDoctorStationInspectio // feePackageId 在保存时已存储,直接使用 itemDto.setFeePackageId(item.getFeePackageId()); // 判断是否是套餐项目(根据 feePackageId 是否存在) - itemDto.setIsPackage(item.getFeePackageId() != null); + itemDto.setIsPackage(String.valueOf(item.getFeePackageId() != null)); // 从批量查询结果中获取关联信息 if (item.getItemCode() != null && !item.getItemCode().isEmpty()) { diff --git a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/DoctorStationLabApplyItemDto.java b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/DoctorStationLabApplyItemDto.java index 8e31869ca..3216194aa 100755 --- a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/DoctorStationLabApplyItemDto.java +++ b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/DoctorStationLabApplyItemDto.java @@ -1,5 +1,6 @@ package com.healthlink.his.web.doctorstation.dto; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; @@ -15,6 +16,7 @@ import java.math.BigDecimal; */ @Data @Accessors(chain = true) +@JsonIgnoreProperties(ignoreUnknown = true) public class DoctorStationLabApplyItemDto { /** * 申请单号 @@ -29,7 +31,6 @@ public class DoctorStationLabApplyItemDto { /** * 项目代码 */ -// @NotBlank(message = "项目代码不能为空") @Size(max = 30, message = "项目代码长度不能超过30个字符") private String itemCode; /** @@ -46,7 +47,6 @@ public class DoctorStationLabApplyItemDto { /** * 执行科室代码 */ -// @NotBlank(message = "执行科室代码不能为空") @Size(max = 20, message = "执行科室代码长度不能超过20个字符") private String performDeptCode; /** @@ -74,22 +74,30 @@ public class DoctorStationLabApplyItemDto { /** * 活动定义ID(检验项目定义ID) - * 用于回充时关联到原始检验项目定义 */ @JsonSerialize(using = ToStringSerializer.class) private Long activityId; /** - * 套餐ID(如果该项目是套餐,则关联套餐表) - * 对应 InspectionPackage.basicInformationId + * 套餐ID */ @JsonSerialize(using = ToStringSerializer.class) private Long feePackageId; /** * 是否是套餐项目 + * Bug #632: 改为 String 类型,兼容前端传 Boolean/String/项目名 + * 保存时由 Service 层转为 Boolean 写入数据库 */ - private Boolean isPackage; + private String isPackage; + + /** + * 判断是否是套餐项目 + */ + public Boolean getIsPackageBoolean() { + if (isPackage == null) return false; + return "true".equalsIgnoreCase(isPackage) || "1".equals(isPackage); + } /** * 样本类型 @@ -102,8 +110,7 @@ public class DoctorStationLabApplyItemDto { private String unit; /** - * 检验类型ID(关联 inspection_type 大类) - * 用于前端自动设置执行科室 + * 检验类型ID */ @JsonSerialize(using = ToStringSerializer.class) private Long inspectionTypeId;