Bladeren bron

fix: 修复切换【检测围栏外部】偶尔状态对不上问题

louhangfei 1 jaar geleden
bovenliggende
commit
3558ea0b88

+ 5 - 4
src/modules/algo-params-setting-base/components/CameraViewSetting/CameraViewSetting.vue

@@ -168,16 +168,17 @@
     }
   };
 
-  const toggleRange = () => {
+  const toggleRange = (nextStatus: RegionJudge) => {
     const selectedAlgoDetail = cameraAlgoStore.selectedAlgoDetail;
+
     const cameraId = cameraDetailStore.cameraId;
 
     const extraStr = selectedAlgoDetail.extra;
     const extraJSON = JSON.parse(extraStr);
-    const nextRegionJudge =
-      extraJSON.inferParams?.[0]?.regionJudge === RegionJudge.out ? RegionJudge.in : RegionJudge.out;
 
-    extraJSON.inferParams[0].regionJudge = nextRegionJudge;
+    cameraAlgoStore.selectedAlgoDetail.regionJudge = nextStatus;
+
+    extraJSON.inferParams[0].regionJudge = nextStatus;
 
     const newParam = {
       cameraId: cameraId,

+ 3 - 3
src/modules/algo-params-setting-base/components/FenceToolbar/FenceToolbar.vue

@@ -87,7 +87,7 @@
   const { selectedAlgoDetail } = storeToRefs(cameraAlgoStore);
 
   const emits = defineEmits<{
-    (e: 'toggleRange'): unknown;
+    (e: 'toggleRange', nextStatus: RegionJudge): unknown;
     (e: 'remove'): unknown;
     (e: 'cancel'): unknown;
     (e: 'save'): unknown;
@@ -129,8 +129,8 @@
     emits('select', nextFenceId);
   };
 
-  const handleUpdateRegion = (val: string) => {
-    emits('toggleRange');
+  const handleUpdateRegion = (nextStatus: boolean) => {
+    emits('toggleRange', nextStatus ? RegionJudge.out : RegionJudge.in);
   };
 
   const handleEditFenceInfo = (detail) => {

+ 2 - 7
src/modules/algo-params-setting-base/hooks/useParamsSettingFn.ts

@@ -1,11 +1,6 @@
-import {
-  createCameraFence,
-  FENCE_ENBALED_STATUS,
-  updateBatchCameraFenceApi,
-  updateCameraAlgoApi,
-} from '@/api/camera/camera-preview';
+import { FENCE_ENBALED_STATUS, updateCameraAlgoApi } from '@/api/camera/camera-preview';
 import { ElMessage } from 'element-plus';
-import { ServerLineInfo, ServerLineInfos } from '../components/FenceEditor/constants';
+import { ServerLineInfo } from '../components/FenceEditor/constants';
 import { FencePolygonPoints } from '../components/FenceEditorV2/types';
 import useCameraAlgoStore from '../store/useCameraAlgoStore';
 import useCameraDetailStore from '../store/useCameraDetailStore';