diff --git a/src/main/java/com/supervision/police/controller/ModelCaseController.java b/src/main/java/com/supervision/police/controller/ModelCaseController.java
index 0652a3b..1ae93ad 100644
--- a/src/main/java/com/supervision/police/controller/ModelCaseController.java
+++ b/src/main/java/com/supervision/police/controller/ModelCaseController.java
@@ -7,6 +7,7 @@ import com.supervision.police.domain.ModelCase;
 import com.supervision.police.dto.ModelCaseDTO;
 import com.supervision.police.service.ModelCaseService;
 import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -44,8 +45,9 @@ public class ModelCaseController {
      * @return
      */
     @GetMapping("/checkCaseNo")
-    public R<?> checkCaseNo(@RequestParam String caseNo) {
-        return modelCaseService.checkCaseNo(caseNo);
+    public R<?> checkCaseNo(@RequestParam @Parameter(name = "caseNo",description = "案件编号") String caseNo,
+                            @RequestParam @Parameter(name = "caseId",description = "案件id") String caseId) {
+        return modelCaseService.checkCaseNo(caseNo,caseId);
     }
 
     /**
diff --git a/src/main/java/com/supervision/police/mapper/ModelCaseMapper.java b/src/main/java/com/supervision/police/mapper/ModelCaseMapper.java
index e0734eb..9ec79b4 100644
--- a/src/main/java/com/supervision/police/mapper/ModelCaseMapper.java
+++ b/src/main/java/com/supervision/police/mapper/ModelCaseMapper.java
@@ -3,7 +3,6 @@ package com.supervision.police.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.supervision.police.domain.ModelCase;
-import com.supervision.police.domain.ModelRecordType;
 import com.supervision.police.dto.AtomicIndexDTO;
 import com.supervision.police.dto.IndexDetail;
 import org.apache.ibatis.annotations.Param;
@@ -22,9 +21,27 @@ public interface ModelCaseMapper extends BaseMapper<ModelCase> {
 
     int selectMaxIndex();
 
+    /**
+     * 查询案件指标详情
+     * @param iPage 分页参数
+     * @param caseId 指标id
+     * @param indexType 指标类型
+     * @return 通过指标数据和指标结果进行关联,然后进行过滤查询
+     */
+    IPage<IndexDetail> getCaseIndexDetail(IPage<IndexDetail> iPage,
+                                          @Param("caseId") String caseId,
+                                          @Param("indexType") String indexType);
+
+    /**
+     * 查询指标详情
+     * @param iPage 分页参数
+     * @param caseId 案件id 必填
+     * @param indexType 指标类型 必填
+     * @return 以指标数据为基础 拼接指标结果数据
+     */
     IPage<IndexDetail> getIndexDetail(IPage<IndexDetail> iPage,
-                                      @Param("caseId") String caseId,
-                                      @Param("indexType") String indexType);
+                                          @Param("caseId") String caseId,
+                                          @Param("indexType") String indexType);
 
     List<AtomicIndexDTO> getAtomicDetail(@Param("caseId") String caseId,
                                          @Param("atomicIds") List<String> atomicIds);
diff --git a/src/main/java/com/supervision/police/service/ModelCaseService.java b/src/main/java/com/supervision/police/service/ModelCaseService.java
index bdd112f..27e45c3 100644
--- a/src/main/java/com/supervision/police/service/ModelCaseService.java
+++ b/src/main/java/com/supervision/police/service/ModelCaseService.java
@@ -20,7 +20,7 @@ public interface ModelCaseService extends IService<ModelCase> {
 
     IPage<ModelCaseDTO> queryList(ModelCase modelCase, Integer page, Integer size);
 
-    R<?> checkCaseNo(String caseNo);
+    R<?> checkCaseNo(String caseNo,String caseId);
 
     R<?> addOrUpd(ModelCase modelCase);
 
diff --git a/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java b/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java
index eb1a12d..67f8a08 100644
--- a/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java
+++ b/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java
@@ -17,7 +17,6 @@ import com.supervision.common.utils.IPages;
 import com.supervision.common.utils.StringUtils;
 import com.supervision.police.domain.CasePerson;
 import com.supervision.police.domain.ComDictionary;
-import com.supervision.police.domain.ModelAtomicIndex;
 import com.supervision.police.dto.AtomicIndexDTO;
 import com.supervision.police.dto.IndexDetail;
 import com.supervision.police.dto.ModelCaseDTO;
@@ -105,12 +104,12 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase
     record lawActorPartyPair(String lawActor, String lawParty){}
 
     @Override
-    public R<?> checkCaseNo(String caseNo) {
-        LambdaQueryWrapper<ModelCase> wrapper = Wrappers.lambdaQuery();
-        wrapper.eq(ModelCase::getCaseNo, caseNo)
-                .eq(ModelCase::getDataStatus, "1");
-        ModelCase modelCase = modelCaseMapper.selectOne(wrapper);
-        if (modelCase == null) {
+    public R<?> checkCaseNo(String caseNo,String caseId) {
+        Long count = modelCaseMapper.selectCount(new LambdaQueryWrapper<ModelCase>()
+                .eq(ModelCase::getCaseNo, caseNo)
+                .eq(ModelCase::getDataStatus, "1")
+                .ne(StrUtil.isNotEmpty(caseId), ModelCase::getId, caseId));
+        if (count == 0) {
             return R.ok(caseNo);
         } else {
             return R.okMsg("案件编号已存在,请勿重复添加");
diff --git a/src/main/resources/mapper/ModelCaseMapper.xml b/src/main/resources/mapper/ModelCaseMapper.xml
index 37fb2e3..2ba3cfc 100644
--- a/src/main/resources/mapper/ModelCaseMapper.xml
+++ b/src/main/resources/mapper/ModelCaseMapper.xml
@@ -37,7 +37,7 @@
         from model_case
         where data_status = '1'
     </select>
-    <select id="getIndexDetail" resultType="com.supervision.police.dto.IndexDetail">
+    <select id="getCaseIndexDetail" resultType="com.supervision.police.dto.IndexDetail">
         select mi.name as indexName, mi.index_score as score, mir.index_result, mir.atomic_ids
         from model_index mi
                  left join model_index_result mir on mi.id = mir.index_id
@@ -57,4 +57,11 @@
             #{item}
         </foreach>
     </select>
+    <select id="getIndexDetail" resultType="com.supervision.police.dto.IndexDetail">
+        select mi.name as indexName, mi.index_score as score, mir.index_result, mir.atomic_ids
+        from model_index mi
+                 left join model_index_result mir on ( mi.id = mir.index_id and  mir.case_id = #{caseId} )
+        WHERE mi.data_status = '1'
+          and mi.index_type = #{indexType}
+    </select>
 </mapper>
\ No newline at end of file