- 后端:新增aiot模块(bean/dao/service/controller),支持ROI区域CRUD、 算法注册表管理、ROI-算法绑定、配置推送到FastAPI边缘端、变更日志 - 前端:新增摄像头配置页(列表+ROI子页面)、算法配置页、Canvas绘图组件 (矩形/多边形)、动态算法参数编辑器、ZLM截图作为ROI编辑背景 - 数据库:新建4张表(wvp_ai_roi/algorithm/roi_algo_bind/config_log) 字段与FastAPI端SQLite兼容,含2个预置算法 - 路由裁剪:隐藏无关菜单(地图/部标/推流/录制计划等) - 修复cameraId含/导致REST路径解析错误(改用query参数) - 新增ai.service配置项(边缘端地址/超时/开关) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
94 lines
2.0 KiB
JavaScript
94 lines
2.0 KiB
JavaScript
import {
|
|
queryRoiList,
|
|
queryRoiDetail,
|
|
queryRoiByCameraId,
|
|
saveRoi,
|
|
deleteRoi,
|
|
bindAlgo,
|
|
unbindAlgo,
|
|
updateAlgoParams
|
|
} from '@/api/aiRoi'
|
|
|
|
const actions = {
|
|
queryRoiList({ commit }, params) {
|
|
return new Promise((resolve, reject) => {
|
|
queryRoiList(params).then(response => {
|
|
const { data } = response
|
|
resolve(data)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
},
|
|
queryRoiDetail({ commit }, id) {
|
|
return new Promise((resolve, reject) => {
|
|
queryRoiDetail(id).then(response => {
|
|
const { data } = response
|
|
resolve(data)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
},
|
|
queryRoiByCameraId({ commit }, cameraId) {
|
|
return new Promise((resolve, reject) => {
|
|
queryRoiByCameraId(cameraId).then(response => {
|
|
const { data } = response
|
|
resolve(data)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
},
|
|
saveRoi({ commit }, data) {
|
|
return new Promise((resolve, reject) => {
|
|
saveRoi(data).then(response => {
|
|
resolve(response)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
},
|
|
deleteRoi({ commit }, roiId) {
|
|
return new Promise((resolve, reject) => {
|
|
deleteRoi(roiId).then(response => {
|
|
resolve(response)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
},
|
|
bindAlgo({ commit }, data) {
|
|
return new Promise((resolve, reject) => {
|
|
bindAlgo(data).then(response => {
|
|
resolve(response)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
},
|
|
unbindAlgo({ commit }, bindId) {
|
|
return new Promise((resolve, reject) => {
|
|
unbindAlgo(bindId).then(response => {
|
|
resolve(response)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
},
|
|
updateAlgoParams({ commit }, data) {
|
|
return new Promise((resolve, reject) => {
|
|
updateAlgoParams(data).then(response => {
|
|
resolve(response)
|
|
}).catch(error => {
|
|
reject(error)
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
export default {
|
|
namespaced: true,
|
|
actions
|
|
}
|