فهرست منبع

计算中、计算失败:案件场景列表置灰,融合子列表置灰,模型删除,对应删除融合的标注、测量;计算成功后,案件列表、融合子列表恢复显示。标注、测量需重新添加;(单一场景的视图对应删除)

lyhzzz 2 سال پیش
والد
کامیت
78b1db7dce

+ 1 - 1
src/main/java/com/fdkankan/fusion/service/IFusionNumService.java

@@ -29,7 +29,7 @@ public interface IFusionNumService extends IService<FusionNum> {
 
     void deleteByCaseId(Integer caseId);
 
-    void deleteByNumList(Integer caseId,List<String> updateNumList);
+    void deleteByNumList(Integer caseId,List<String> updateNumList,boolean del);
 
     void deleteByModelId(Integer modelId);
 

+ 1 - 1
src/main/java/com/fdkankan/fusion/service/impl/CaseNumServiceImpl.java

@@ -180,7 +180,7 @@ public class CaseNumServiceImpl extends ServiceImpl<ICaseNumMapper, CaseNumEntit
             wrapper.eq(CaseNumEntity::getCaseId,caseId);
             wrapper.in(CaseNumEntity::getNum,delList);
             this.remove(wrapper);
-            fusionNumService.deleteByNumList(caseId,delList);
+            fusionNumService.deleteByNumList(caseId,delList,true);
         }
     }
 

+ 7 - 0
src/main/java/com/fdkankan/fusion/service/impl/CaseServiceImpl.java

@@ -118,7 +118,14 @@ public class CaseServiceImpl extends ServiceImpl<ICaseMapper, CaseEntity> implem
                     delNumList.add(num);
                 }
             }
+            List<String> delNumList2 = new ArrayList<>();
+            for (SceneVo sceneVo : listAll) {
+                if(sceneVo.getStatus() !=2 && sceneVo.getStatus() !=3){
+                    delNumList2.add(sceneVo.getNum());
+                }
+            }
             caseNumService.deleteByNum(param.getCaseId(),delNumList);
+            fusionNumService.deleteByNumList(param.getCaseId(),delNumList2,false);
         }
 
         //相机解绑,标注,测量隐藏,视图

+ 4 - 2
src/main/java/com/fdkankan/fusion/service/impl/FusionNumServiceImpl.java

@@ -197,7 +197,7 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
      * 删除视图不存在的场景码
      */
     @Override
-    public void deleteByNumList(Integer caseId,List<String> deleteNum) {
+    public void deleteByNumList(Integer caseId,List<String> deleteNum,boolean del) {
         if(deleteNum.size() <=0){
             return;
         }
@@ -223,7 +223,9 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
                 List<Integer> fusionNumIds = list1.parallelStream().map(FusionNum::getFusionNumId).collect(Collectors.toList());
                 fusionMeterService.deleteByFusionNumIds(fusionNumIds);
                 caseTagPointService.deleteByFusionNumIds(fusionNumIds);
-                this.remove(deleteWr);
+                if(del){
+                    this.remove(deleteWr);
+                }
             }
         }
         caseViewService.deleteByNumList(caseId,deleteNum);