diff --git a/src/main/java/digital/laboratory/platform/entrustment/controller/CaseEventController.java b/src/main/java/digital/laboratory/platform/entrustment/controller/CaseEventController.java index 12017fd..3e6aa41 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/controller/CaseEventController.java +++ b/src/main/java/digital/laboratory/platform/entrustment/controller/CaseEventController.java @@ -61,11 +61,17 @@ import java.util.Map; @RequestMapping("/papp/entrustment/case") @Api(tags = "001-案件管理") public class CaseEventController { + private final CaseEventService caseEventService; + private final CaseEvidenceService caseEvidenceService; + private final EntrustmentService entrustmentService; + private final EntrustmentIdentificationMaterialService entrustmentIdentificationMaterialService; + private final RemoteOrgService remoteOrgService; + private final OssFile ossFile; @@ -90,6 +96,7 @@ public class CaseEventController { Entrustment one = entrustmentService.getOne(Wrappers.lambdaQuery().eq(Entrustment::getCaseId, id)); cevo.setEntrustmentType(one.getEntrustmentType()); + cevo.setType(one.getType()); return R.ok(cevo); } @@ -235,6 +242,7 @@ public class CaseEventController { entrustmentService.update(Wrappers.lambdaUpdate() .eq(Entrustment::getId, dto.getEntrustId()) .set(Entrustment::getEntrustmentType, dto.getEntrustmentType()) + .set(StrUtil.isNotBlank(dto.getType()), Entrustment::getType, dto.getType()) ); } return R.ok(caseEvent, "保存案件信息成功"); diff --git a/src/main/java/digital/laboratory/platform/entrustment/dto/ApprovedUpdateEntrustDTO.java b/src/main/java/digital/laboratory/platform/entrustment/dto/ApprovedUpdateEntrustDTO.java index 0458b14..f936ca4 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/dto/ApprovedUpdateEntrustDTO.java +++ b/src/main/java/digital/laboratory/platform/entrustment/dto/ApprovedUpdateEntrustDTO.java @@ -1,5 +1,6 @@ package digital.laboratory.platform.entrustment.dto; +import com.fasterxml.jackson.annotation.JsonFormat; import digital.laboratory.platform.sys.entity.DrugLite; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -7,6 +8,7 @@ import lombok.AllArgsConstructor; import lombok.Data; import javax.validation.constraints.NotBlank; +import java.time.LocalDateTime; import java.util.List; @Data @@ -21,6 +23,10 @@ public class ApprovedUpdateEntrustDTO { @NotBlank(message = "关联的委托id不能为空!") private String entrustId; + @ApiModelProperty(value="委托日期, 鉴定委托书打印日期") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime entrustmentTime; + @ApiModelProperty(value = "案件名称") private String caseName; diff --git a/src/main/java/digital/laboratory/platform/entrustment/dto/UpdateCaseAndEntrustTypeDTO.java b/src/main/java/digital/laboratory/platform/entrustment/dto/UpdateCaseAndEntrustTypeDTO.java index 24b2249..1bb785e 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/dto/UpdateCaseAndEntrustTypeDTO.java +++ b/src/main/java/digital/laboratory/platform/entrustment/dto/UpdateCaseAndEntrustTypeDTO.java @@ -96,4 +96,11 @@ public class UpdateCaseAndEntrustTypeDTO { @ApiModelProperty(value="委托类型: 0=常规毒品, 1=生物样本") private Integer entrustmentType; + + /** + * 20250121 新增的一个委托类型,选择生物样本类型后需要区分是 0 委托、1 初筛、 2 两社人员、 3 其他人员, 常规毒品 0 委托 1 初筛,其他的不需要区分 + * 存字符串,不用code表达 + */ + @ApiModelProperty("新增的一个委托类型,选择生物样本类型后需要区分是 0 委托、1 初筛、 2 两社人员、 3 其他人员, 常规毒品 0 委托 1 初筛,其他的不需要区分") + private String type; } diff --git a/src/main/java/digital/laboratory/platform/entrustment/enums/EntrustBiologyType.java b/src/main/java/digital/laboratory/platform/entrustment/enums/EntrustBiologyType.java new file mode 100644 index 0000000..fbf4fb0 --- /dev/null +++ b/src/main/java/digital/laboratory/platform/entrustment/enums/EntrustBiologyType.java @@ -0,0 +1,43 @@ +package digital.laboratory.platform.entrustment.enums; + +import cn.hutool.core.collection.CollUtil; +import lombok.Getter; + +import java.util.List; + +@Getter +public enum EntrustBiologyType { + + HAIR(0, "毛发", CollUtil.newArrayList("黑色头发", "毛发")), + URINE(1, "尿液", CollUtil.newArrayList("黄色尿液")), + OTHER(2, "其他", CollUtil.newArrayList()), + ; + + private final Integer code; + + private final String desc; + + private final List alias; + + EntrustBiologyType(Integer code, String desc, List alias) { + this.code = code; + this.desc = desc; + this.alias = alias; + } + + // 根据名称或别名判断是否存在对应枚举 + public static EntrustBiologyType isExist(String desc) { + for (EntrustBiologyType entrustStatisticType : values()) { + // 先匹配描述字段 + if (entrustStatisticType.getDesc().equals(desc)) { + return entrustStatisticType; + } + // 然后匹配别名 + if (entrustStatisticType.getAlias().contains(desc)) { + return entrustStatisticType; + } + } + return OTHER; + } + +} diff --git a/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java b/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java index 7a6bae4..6b42a51 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java +++ b/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java @@ -232,7 +232,8 @@ public class EntrustAlterApplyServiceImpl extends ServiceImpllambdaQuery() .eq(EntrustmentIdentificationMaterial::getEntrustmentId, entrustment.getId())); for (EntrustmentIdentificationMaterial identificationMaterial : identificationMaterialList) { + // 先提前根据性状设置生物类型 -》 只正对生物样本数据 + if (identificationMaterial.getTypeName().equals("生物样本") || identificationMaterial.getType().equals("1")) { + identificationMaterial.setBiologyType(EntrustBiologyType.isExist(identificationMaterial.getFormName()).getDesc()); + } if (StringUtils.isNotBlank(identificationMaterial.getId()) && StringUtils.isNotBlank(identificationMaterial.getSample1No())) { identificationMaterial = this.putUpdateById(identificationMaterial, dlpUser); } else { @@ -1266,7 +1271,6 @@ public class EntrustmentIdentificationMaterialServiceImpl extends ServiceImpl