diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/config/TreatmentPlanManageController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/config/TreatmentPlanManageController.java
index 02652f01..b31d886c 100644
--- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/config/TreatmentPlanManageController.java
+++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/config/TreatmentPlanManageController.java
@@ -30,14 +30,14 @@ public class TreatmentPlanManageController {
 
     }
 
-  /*  @ApiOperation("查询一级处置计划")
+    @ApiOperation("查询一级处置计划")
     @GetMapping("/queryFirstMeasures")
     public List<ConfigTreatmentPlan> queryFirstMeasures(@ApiParam("处置方式")@RequestParam(required = false) Integer disposalMethod,
                                                           @ApiParam("处置计划id")@RequestParam(required = false) String disposalPlanId) {
 
-        return configTreatmentPlanManageService.queryFirstMeasures(disposalMethod);
+        return configTreatmentPlanManageService.queryFirstMeasures(disposalMethod,disposalPlanId);
 
-    }*/
+    }
 
 
     @ApiOperation("根据id查询处置计划详情")
diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java
index 90f89ebe..bf791799 100644
--- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java
+++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java
@@ -27,6 +27,7 @@ public class DiseaseTreatmentPlanManageController {
     @PostMapping("/save")
     public String saveTreatmentPlan(@RequestBody DiseaseTreatmentPlanReqVo diseaseTreatmentPlan) {
 
+        diseaseTreatmentPlan.setTreatmentPlanId(diseaseTreatmentPlan.getFirstMeasuresId());
         DiseaseTreatmentPlan result = diseaseTreatmentPlanManageService.saveTreatmentPlan(diseaseTreatmentPlan);
         return result.getId();
     }
@@ -44,7 +45,11 @@ public class DiseaseTreatmentPlanManageController {
     @GetMapping("/queryListByDiseaseId")
     public List<DiseaseTreatmentPlanResVo> queryListByDiseaseId(String diseaseId) {
 
-        return diseaseTreatmentPlanManageService.queryListByDiseaseId(diseaseId);
+        List<DiseaseTreatmentPlanResVo> diseaseTreatmentPlanResVos = diseaseTreatmentPlanManageService.queryListByDiseaseId(diseaseId);
+        // 前端大哥强烈要求把treatmentPlanId 转换为 firstMeasuresId
+        diseaseTreatmentPlanResVos.forEach(vo -> vo.setFirstMeasuresId(vo.getTreatmentPlanId()));
+
+        return diseaseTreatmentPlanResVos;
 
     }
 
diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/ConfigTreatmentPlanManageService.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/ConfigTreatmentPlanManageService.java
index 992aee5f..c2a64d6b 100644
--- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/ConfigTreatmentPlanManageService.java
+++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/ConfigTreatmentPlanManageService.java
@@ -14,9 +14,11 @@ public interface ConfigTreatmentPlanManageService {
 
     IPage<? extends ConfigTreatmentPlan> queryPageList(Integer pageNum, Integer pageSize, Integer disposalMethod);
 
-    ConfigTreatmentPlan saveTreatmentPlan(ConfigTreatmentPlan configDrug);
+    ConfigTreatmentPlan saveTreatmentPlan(ConfigTreatmentPlan configTreatmentPlan);
 
     boolean deleteTreatmentPlan(String id);
 
     boolean updateTreatmentPlan(ConfigTreatmentPlan configDrug);
+
+    List<ConfigTreatmentPlan> queryFirstMeasures(Integer disposalMethod,String disposalPlanId);
 }
diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/ConfigTreatmentPlanManageServiceImpl.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/ConfigTreatmentPlanManageServiceImpl.java
index f45cac8c..2ec55d99 100644
--- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/ConfigTreatmentPlanManageServiceImpl.java
+++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/ConfigTreatmentPlanManageServiceImpl.java
@@ -1,5 +1,6 @@
 package com.supervision.manage.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.lang.Assert;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -17,6 +18,10 @@ import org.springframework.stereotype.Service;
 
 import java.util.List;
 import java.util.Objects;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.function.Function;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
 
 @Service
 @RequiredArgsConstructor
@@ -45,19 +50,19 @@ public class ConfigTreatmentPlanManageServiceImpl implements ConfigTreatmentPlan
     public IPage<? extends ConfigTreatmentPlan> queryPageList(Integer pageNum, Integer pageSize, Integer disposalMethod) {
         LambdaQueryChainWrapper<ConfigTreatmentPlan> wrapper = configTreatmentPlanService.lambdaQuery()
                 .eq(Objects.nonNull(disposalMethod), ConfigTreatmentPlan::getDisposalMethod, disposalMethod)
-                .orderByAsc(ConfigTreatmentPlan::getCreateTime);
+                .orderByDesc(ConfigTreatmentPlan::getCreateTime);
 
         return configTreatmentPlanService.page(new Page<>(pageNum, pageSize), wrapper.getWrapper());
     }
 
     @Override
-    public ConfigTreatmentPlan saveTreatmentPlan(ConfigTreatmentPlan treatmentPlan) {
+    public ConfigTreatmentPlan saveTreatmentPlan(ConfigTreatmentPlan configTreatmentPlan) {
 
-        saveAssert(treatmentPlan);
+        saveAssert(configTreatmentPlan);
 
-        configTreatmentPlanService.save(treatmentPlan);
+        configTreatmentPlanService.save(configTreatmentPlan);
 
-        return treatmentPlan;
+        return configTreatmentPlan;
     }
 
     @Override
@@ -88,6 +93,27 @@ public class ConfigTreatmentPlanManageServiceImpl implements ConfigTreatmentPlan
         return configTreatmentPlanService.updateById(configDrug);
     }
 
+    @Override
+    public List<ConfigTreatmentPlan> queryFirstMeasures(Integer disposalMethod,String disposalPlanId) {
+        List<ConfigTreatmentPlan> list = configTreatmentPlanService.lambdaQuery()
+                .eq(Objects.nonNull(disposalMethod), ConfigTreatmentPlan::getDisposalMethod, disposalMethod)
+                .eq(StrUtil.isNotEmpty(disposalPlanId), ConfigTreatmentPlan::getDisposalPlanId, disposalPlanId)
+                .list();
+        if (CollectionUtil.isEmpty(list)){
+            return list;
+        }
+
+        return list.stream().filter(distinctPredicate(item->StrUtil.join(",",
+                                item.getDisposalMethod(),item.getDisposalPlanId(),item.getFirstMeasuresId())))
+                .collect(Collectors.toList());
+    }
+
+    public static  <K> Predicate<K> distinctPredicate(Function<K,Object> function){
+        ConcurrentHashMap<Object, Boolean> map = new ConcurrentHashMap<>();
+        return (t)-> null == map.putIfAbsent(function.apply(t),true);
+
+    }
+
     public void saveAssert(ConfigTreatmentPlan configDrug){
         Assert.isTrue(StrUtil.isEmpty(configDrug.getId()),"id 不为空");
         Assert.notNull(configDrug.getDisposalMethod(),"处置方式不允许为空");
diff --git a/virtual-patient-model/src/main/java/com/supervision/model/ConfigTreatmentPlan.java b/virtual-patient-model/src/main/java/com/supervision/model/ConfigTreatmentPlan.java
index 6cda54e0..61740c3f 100644
--- a/virtual-patient-model/src/main/java/com/supervision/model/ConfigTreatmentPlan.java
+++ b/virtual-patient-model/src/main/java/com/supervision/model/ConfigTreatmentPlan.java
@@ -72,6 +72,7 @@ public class ConfigTreatmentPlan implements Serializable {
     /**
      * 创建时间
      */
+    @TableField
     private Date createTime;
 
     /**
@@ -82,6 +83,7 @@ public class ConfigTreatmentPlan implements Serializable {
     /**
      * 更新时间
      */
+    @TableField
     private Date updateTime;
 
     @TableField(exist = false)
diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/ConfigConfigTreatmentPlanServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/ConfigConfigTreatmentPlanServiceImpl.java
index 005354c6..c6c4dbbf 100644
--- a/virtual-patient-model/src/main/java/com/supervision/service/impl/ConfigConfigTreatmentPlanServiceImpl.java
+++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/ConfigConfigTreatmentPlanServiceImpl.java
@@ -50,7 +50,7 @@ public class ConfigConfigTreatmentPlanServiceImpl extends ServiceImpl<ConfigTrea
                 root.getOrDefaultChild().add(disposalPlanNode);
             }
 
-            // 二级节点
+            // 二级节点 todo:需要新增药物节点
             if (StrUtil.isEmpty(firstMeasuresId)){
                 continue;
             }
diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/manage/DiseaseTreatmentPlanReqVo.java b/virtual-patient-model/src/main/java/com/supervision/vo/manage/DiseaseTreatmentPlanReqVo.java
index 90a43cc8..b1047b46 100644
--- a/virtual-patient-model/src/main/java/com/supervision/vo/manage/DiseaseTreatmentPlanReqVo.java
+++ b/virtual-patient-model/src/main/java/com/supervision/vo/manage/DiseaseTreatmentPlanReqVo.java
@@ -13,4 +13,7 @@ public class DiseaseTreatmentPlanReqVo extends DiseaseTreatmentPlan {
 
     @ApiModelProperty("药物列表")
     private List<String> drugIds;
+
+    @ApiModelProperty("一级措施id")
+    private String firstMeasuresId;
 }