Parcourir la source

项目执行中项目类型调整为非必填

陈长荣 il y a 2 mois
Parent
commit
574ee1f62d

+ 6 - 0
jfcloud-gene-biz/src/main/java/com/github/jfcloud/gene/flow/service/impl/FlowInfoServiceImpl.java

@@ -299,6 +299,12 @@ public class FlowInfoServiceImpl extends ServiceImpl<FlowInfoMapper, FlowInfo> i
         Assert.isTrue(GeneStatusEnum.COMPLETED.getStatus().equals(flowInfo.getStatus()), "基因定制流程非完成状态");
         Assert.isNull(flowInfo.getKyId(), "基因定制流程已执行");
 
+        if (Objects.isNull(vo.getApprovalType())) {
+            String approvalType = systemPropertiesService.getValue("gene.approvalType");
+            Assert.notEmpty(approvalType, "项目类型为空,无法同步");
+            vo.setApprovalType(Long.parseLong(approvalType));
+        }
+
         //推送数据到科研项目,并得到科研项目id
         ProjectFeignDTO projectFeignDTO = new ProjectFeignDTO();
         projectFeignDTO.setName(flowInfo.getProjectName());

+ 3 - 1
jfcloud-gene-biz/src/main/java/com/github/jfcloud/gene/flow/vo/SynProjectVo.java

@@ -11,6 +11,8 @@ public class SynProjectVo implements Serializable {
     @NotNull(message = "请选择项目负责人")
     private Long projectLeader;
 
-    @NotNull(message = "请选择项目类型")
+    /**
+     * 项目类型
+     */
     private Long approvalType;
 }

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

@@ -334,6 +334,12 @@ public class SampleInfoServiceImpl extends ServiceImpl<SampleInfoMapper, SampleI
         Assert.isTrue(GeneStatusEnum.COMPLETED.getStatus().equals(sampleInfo.getStatus()), "样本送检流程非完成状态");
         Assert.isNull(sampleInfo.getKyId(), "样本送检流程已执行");
 
+        if (Objects.isNull(vo.getApprovalType())) {
+            String approvalType = systemPropertiesService.getValue("sample." + sampleInfo.getType() + ".approvalType");
+            Assert.notEmpty(approvalType, "项目类型为空,无法同步");
+            vo.setApprovalType(Long.parseLong(approvalType));
+        }
+
         String projectNo = sampleInfo.getProjectNo();
         if (StrUtil.isBlank(projectNo)) {
             projectNo = sampleInfo.getApprovalNo();

+ 10 - 1
jfcloud-gene-biz/src/main/resources/sql/ddl-20250321.sql

@@ -14,4 +14,13 @@ INSERT INTO jfcloud_gene.system_properties (prop_key,prop_value,remark) VALUES
 INSERT INTO jfcloud_gene.system_properties (prop_key,prop_value,remark) VALUES
     ('sample.sync.ky','true','样本送检科研同步');
 INSERT INTO jfcloud_gene.system_properties (prop_key,prop_value,remark) VALUES
-    ('sample.sync.animal','true','样本送检动物同步');
+    ('sample.sync.animal','true','样本送检动物同步');
+
+INSERT INTO jfcloud_gene.system_properties (prop_key,prop_value,remark) VALUES
+    ('gene.approvalType','128553280451923968','基因定制项目类型');
+INSERT INTO jfcloud_gene.system_properties (prop_key,prop_value,remark) VALUES
+    ('sample.animal.approvalType','140214062520487936','动物样本检测项目类型');
+INSERT INTO jfcloud_gene.system_properties (prop_key,prop_value,remark) VALUES
+    ('sample.pathological.approvalType','139128675031076864','病理样本检测项目类型');
+INSERT INTO jfcloud_gene.system_properties (prop_key,prop_value,remark) VALUES
+    ('sample.animalImage.approvalType','140214120615792640','动物影像检测项目类型');