소스 검색

动物样本列表,非血清样本送检返回固定1

陈长荣 1 개월 전
부모
커밋
1e8dde7192

+ 4 - 4
jfcloud-gene-biz/src/main/java/com/github/jfcloud/gene/sample/enums/ScientificSampleTypeEnum.java

@@ -10,10 +10,10 @@ import java.util.List;
  * 科研项目送检样本类型
  */
 public enum ScientificSampleTypeEnum {
-    elisa("ELISA样本送检"),
-    urine("尿常规样本送检"),
-    blood("血常规样本送检"),
-    serum("血清样本送检");
+    ELISA("ELISA样本送检"),
+    URINE("尿常规样本送检"),
+    BLOOD("血常规样本送检"),
+    SERUM("血清样本送检");
 
     private final String description;
 

+ 17 - 0
jfcloud-gene-biz/src/main/java/com/github/jfcloud/gene/sample/service/impl/SampleCheckOrderServiceImpl.java

@@ -3,19 +3,36 @@ package com.github.jfcloud.gene.sample.service.impl;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.jfcloud.gene.common.constant.WhetherEnum;
+import com.github.jfcloud.gene.sample.entity.SampleAnimal;
 import com.github.jfcloud.gene.sample.entity.SampleCheckOrder;
+import com.github.jfcloud.gene.sample.enums.ScientificSampleTypeEnum;
 import com.github.jfcloud.gene.sample.mapper.SampleCheckOrderMapper;
 import com.github.jfcloud.gene.sample.service.SampleCheckOrderService;
+import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
 @Slf4j
 @Service
+@RequiredArgsConstructor
 public class SampleCheckOrderServiceImpl extends ServiceImpl<SampleCheckOrderMapper, SampleCheckOrder> implements SampleCheckOrderService {
 
     @Override
     public Long getLisId(Long sampleId) {
+        //查询是否有血清
+        Long count = new LambdaQueryChainWrapper<>(SampleAnimal.class)
+                .eq(SampleAnimal::getSampleId, sampleId)
+                .like(SampleAnimal::getScientificSampleType, ScientificSampleTypeEnum.SERUM.getDescription())
+                .eq(SampleAnimal::getDeleted, WhetherEnum.NO.getCode())
+                .count();
+        if (count < 1) {
+            //没有血清,返回默认id,以便前端不显示同步按钮
+            return 1L;
+        }
+
         String extData = baseMapper.getExtData(sampleId);
         if (StrUtil.isBlank(extData)) {
             return null;