Преглед изворни кода

fix: 重新配置算法预览的后端

kuanghua liu пре 1 година
родитељ
комит
19cd01d900

+ 65 - 0
src/api/algo/algo.ts

@@ -1,5 +1,46 @@
 import { http } from '@/utils/http/axios';
 
+export interface algoQueryModule {
+  pageNumber: number;
+  pageSize: number;
+  queryParam?: { name: string };
+  // updatedAt: string,
+}
+
+export interface algoUpdateModule {
+  id: number;
+  pushStatement: string;
+  pushLinkPrompt: string;
+  // updatedAt: string,
+}
+
+export interface Records {
+  code: string;
+  createdAt: string;
+  extra: string;
+  iconUrl: string;
+  id: number;
+  isDeleted: number;
+  name: string;
+  pushLinkPrompt: string;
+  pushStatement: number;
+  remark: string;
+  showName: string;
+  status: number;
+  updatedAt: string;
+  url: string;
+}
+
+export interface Response<Records> {
+  maxPageSize: number;
+  optimizeCountQuery: boolean;
+  pageNumber: number;
+  pageSize: number;
+  records: Records[];
+  totalPage: number;
+  totalRow: number;
+}
+
 export function getAlgoInfo(page: number, pageSize: number) {
   return http.request({
     url: '/cameraAlgo/getList?pageNumber=' + page + '&pageSize=' + pageSize,
@@ -14,6 +55,22 @@ export function searchAlgoInfo(page: number, keyWord: string) {
   });
 }
 
+export function queryAlgoInfoPage(data: algoQueryModule) {
+  return http.request<Response<Records>>({
+    url: '/admin/algo/queryAlgoInfoPage',
+    method: 'post',
+    data,
+  });
+}
+
+//拉取所有算法列表
+export function queryAlgoInfoAll() {
+  return http.request<Records[]>({
+    url: '/admin/algo/queryAlgoInfo',
+    method: 'get',
+  });
+}
+
 export function algoInfoModify(algoId: number, pushLinkPrompt: string, pushStatement: string) {
   return http.request({
     url: '/cameraAlgo/saveAlgoState',
@@ -25,3 +82,11 @@ export function algoInfoModify(algoId: number, pushLinkPrompt: string, pushState
     },
   });
 }
+
+export function updateAlgoInfo(data: algoUpdateModule) {
+  return http.request({
+    url: '/admin/algo/updateAlgoInfoById',
+    method: 'post',
+    data,
+  });
+}

+ 4 - 3
src/views/cameras/algo-management/algoManagement.vue

@@ -63,8 +63,7 @@
           <div class="details_title" style="margin-bottom: 16px">报警推送编辑</div>
           <el-form :model="alarmConfig" size="default" :rules="rules" ref="ruleFormRef">
             <el-form-item label="语句编辑:" prop="pushStatement">
-              <div class="pushStatement"
-                >condition
+              <div class="pushStatement">
                 <div class="remark">时间:(示例:2023.10.23 10:55:28)</div>
                 <div class="remark">地点:(示例:C919总装车间150A工位)</div>
                 <el-input
@@ -95,7 +94,7 @@
   </PageWrapper>
 </template>
 <script lang="ts" setup>
-  import { onMounted, ref, onUnmounted, reactive, watchEffect } from 'vue';
+  import { onMounted, ref } from 'vue';
   import { PageWrapper } from '../../../components/Page';
   import useAlgo from './useAlgoData';
   import { Search } from '@element-plus/icons-vue';
@@ -169,6 +168,8 @@
     arrRemark.value = currentRow.value.remark.split('\r\n');
     // console.log('arrRemark', arrRemark.value);
 
+    alarmConfig.value.pushLinkPrompt = currentRow.value.pushLinkPrompt;
+    alarmConfig.value.pushStatement = currentRow.value.pushStatement;
     const extra = currentRow.value.extra;
     if (extra) {
       const extraObj = JSON.parse(extra);

+ 13 - 5
src/views/cameras/algo-management/useAlgoData.ts

@@ -1,9 +1,9 @@
-import { getAlgoInfo, searchAlgoInfo, algoInfoModify } from '@/api/algo/algo';
+import { queryAlgoInfoPage, updateAlgoInfo, Records } from '@/api/algo/algo';
 import { ref } from 'vue';
 import { ElMessage } from 'element-plus';
 
 export function useAlgo() {
-  const algoList = ref([]);
+  const algoList = ref<Records[]>();
   const page = ref(1);
   const total = ref(0);
   const pageSize = ref(12);
@@ -14,20 +14,28 @@ export function useAlgo() {
   const pushStatement = ref('');
 
   const getAlgoDatas = () => {
-    return getAlgoInfo(page.value, pageSize.value).then((res) => {
+    return queryAlgoInfoPage({ pageNumber: page.value, pageSize: pageSize.value }).then((res) => {
       algoList.value = res.records;
       total.value = res.totalRow;
     });
   };
 
   const searchAlgoDatas = () => {
-    return searchAlgoInfo(page.value, keyWord.value).then((res) => {
+    return queryAlgoInfoPage({
+      pageNumber: page.value,
+      pageSize: pageSize.value,
+      queryParam: { name: keyWord.value },
+    }).then((res) => {
       algoList.value = res.records;
     });
   };
 
   const modifyAlgoDatas = () => {
-    return algoInfoModify(algoId.value, pushLinkPrompt.value, pushStatement.value)
+    return updateAlgoInfo({
+      id: algoId.value,
+      pushStatement: pushLinkPrompt.value,
+      pushLinkPrompt: pushStatement.value,
+    })
       .then(function () {
         ElMessage({
           message: '算法数据保存成功',