Преглед на файлове

fix: 区分算法编辑接口和算法启停接口(系统日志区分)

sunhongyao341504 преди 1 година
родител
ревизия
09ede5e7bf

+ 9 - 0
src/api/camera/camera-preview.ts

@@ -173,6 +173,15 @@ export const updateCameraAlgoApi = (param: SaveCameraAlgoParam & { id: number })
   });
 };
 
+/** 开启/关闭相机的某个算法(为日志区分而新增的接口) */
+export const updateCameraAlgoStatusApi = (param: SaveCameraAlgoParam & { id: number }) => {
+  return http.request({
+    url: '/admin/algo/updateCameraAlgoRelStatus',
+    data: param,
+    method: 'put',
+  });
+};
+
 /** 删除相机的某个算法 */
 export const deleteCameraAlgoApi = (params: { cameraId: number; algoId: number }) => {
   const paramString = qs.stringify(params);

+ 4 - 3
src/views/cameras/preview/components/AlgorithmsSetting/AlgoSettingCard.vue

@@ -167,7 +167,7 @@
       </div>
       <div style="display: flex; justify-content: flex-end">
         <ElButton size="small" :disabled="!selectedAlgoId" @click="handleRemoveAlgo">取消</ElButton>
-        <ElButton size="small" type="primary" @click="handleSave" :disabled="!selectedAlgoId"
+        <ElButton size="small" type="primary" @click="handleSave(false)" :disabled="!selectedAlgoId"
           >保存</ElButton
         >
       </div>
@@ -272,7 +272,7 @@
   };
 
   const handleAlgoEnable = () => {
-    handleSave();
+    handleSave(true);
   };
 
   const checkFrequencyValid = () => {
@@ -305,7 +305,7 @@
     selectedAlgoDetail.value.timeWindow = Math.ceil(selectedAlgoDetail.value.timeWindow || 1);
   };
 
-  const handleSave = async () => {
+  const handleSave = async (isSwitch: boolean) => {
     //判断时间段是否合格
     if (markedTimeRangeIds.value.length > 0) {
       ElMessage.error('请正确填写检测时间段');
@@ -393,6 +393,7 @@
     });
     const param = {
       id: detail.id,
+      isSwitch,
       inferCode: detail.inferCode,
       algoId: detail.algoId,
       detectionFrequency: detail.detectionFrequency,

+ 16 - 6
src/views/cameras/preview/components/AlgorithmsSetting/AlgorithmsSetting.vue

@@ -49,6 +49,7 @@
     updateCameraAlgoApi,
     FENCE_ENBALED_STATUS,
     CameraAlgoItem,
+    updateCameraAlgoStatusApi,
   } from '@/api/camera/camera-preview';
   import { ElMessage, ElMessageBox } from 'element-plus';
   import AlgoSwitchCard from '../AlgoSwitchCard/AlgoSwitchCard.vue';
@@ -273,12 +274,21 @@
       extra: JSON.stringify(extraValue),
     };
     if (param.id) {
-      updateCameraAlgoApi({ ...newParam, id: param.id }).then(() => {
-        ElMessage.success('更新成功');
-        getCameraAlgoList(cameraId);
-        selectedAlgoId.value = undefined;
-        algoSettingIsOpen.value = false;
-      });
+      if (param.isSwitch) {
+        updateCameraAlgoStatusApi({ ...newParam, id: param.id }).then(() => {
+          ElMessage.success('更新成功');
+          getCameraAlgoList(cameraId);
+          selectedAlgoId.value = undefined;
+          algoSettingIsOpen.value = false;
+        });
+      } else {
+        updateCameraAlgoApi({ ...newParam, id: param.id }).then(() => {
+          ElMessage.success('更新成功');
+          getCameraAlgoList(cameraId);
+          selectedAlgoId.value = undefined;
+          algoSettingIsOpen.value = false;
+        });
+      }
     }
   };