From e950b3aab9c413d2e6898b583d3c4d1b1eca1e1f Mon Sep 17 00:00:00 2001 From: yanchouchou <1742922980@qq.com> Date: Mon, 7 Oct 2024 10:29:44 +0800 Subject: [PATCH] =?UTF-8?q?feat():=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + src/api/car/car.js | 44 ++ src/api/car/message/template.js | 36 ++ src/api/electronic/index.js | 128 +++++ src/api/manage/fenceAPI.js | 5 + src/api/platform/logs.js | 44 ++ src/api/platform/rule.js | 44 ++ src/api/platform/strategy.js | 60 +++ src/router/index.js | 15 + src/views/car/car/index.vue | 539 ++++++++++++++++++++++ src/views/car/message/index.vue | 313 +++++++++++++ src/views/carFence/fence/MapContainer.vue | 397 ++++++++++++++++ src/views/carFence/fence/fenceGroups.vue | 366 +++++++++++++++ src/views/carFence/fence/index.vue | 202 ++++++++ vue.config.js | 2 +- 15 files changed, 2195 insertions(+), 1 deletion(-) create mode 100644 src/api/car/car.js create mode 100644 src/api/car/message/template.js create mode 100644 src/api/electronic/index.js create mode 100644 src/api/manage/fenceAPI.js create mode 100644 src/api/platform/logs.js create mode 100644 src/api/platform/rule.js create mode 100644 src/api/platform/strategy.js create mode 100644 src/views/car/car/index.vue create mode 100644 src/views/car/message/index.vue create mode 100644 src/views/carFence/fence/MapContainer.vue create mode 100644 src/views/carFence/fence/fenceGroups.vue create mode 100644 src/views/carFence/fence/index.vue diff --git a/package.json b/package.json index 1aa9f70..5e1eb88 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "url": "https://gitee.com/y_project/MuYu-Cloud.git" }, "dependencies": { + "@amap/amap-jsapi-loader": "^1.0.1", "@riophae/vue-treeselect": "0.4.0", "axios": "0.24.0", "clipboard": "2.0.8", diff --git a/src/api/car/car.js b/src/api/car/car.js new file mode 100644 index 0000000..72fa67b --- /dev/null +++ b/src/api/car/car.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询车辆基础信息列表 +export function listCar(query) { + return request({ + url: '/saas/car/list', + method: 'get', + params: query + }) +} + +// 查询车辆基础信息详细 +export function getCar(id) { + return request({ + url: '/saas/car/' + id, + method: 'get' + }) +} + +// 新增车辆基础信息 +export function addCar(data) { + return request({ + url: '/saas/car', + method: 'post', + data: data + }) +} + +// 修改车辆基础信息 +export function updateCar(data) { + return request({ + url: '/saas/car', + method: 'put', + data: data + }) +} + +// 删除车辆基础信息 +export function delCar(id) { + return request({ + url: '/saas/car/' + id, + method: 'delete' + }) +} diff --git a/src/api/car/message/template.js b/src/api/car/message/template.js new file mode 100644 index 0000000..b3dfab4 --- /dev/null +++ b/src/api/car/message/template.js @@ -0,0 +1,36 @@ +import request from '@/utils/request' + +// 报文模版列表 +export function templateList() { + return request({ + url: 'saas/messageTemplate/list', + method: 'POST', + }) +} + +//添加报文模版 +export function addTemplate(data) { + return request({ + url: 'saas/messageTemplate/', + method: 'POST', + data: data + }) +} + +// 报文数据列表 +export function valueList(data) { + return request({ + url: 'saas/messageValue/list', + method: 'POST', + data: data + }) +} + +// 添加报文数据 +export function addValue(data) { + return request({ + url: 'saas/messageValue/', + method: 'POST', + data: data + }) +} diff --git a/src/api/electronic/index.js b/src/api/electronic/index.js new file mode 100644 index 0000000..4bed4fd --- /dev/null +++ b/src/api/electronic/index.js @@ -0,0 +1,128 @@ +import request from '@/utils/request' + +// liebiao +export function selectCarFenceList(data) { + return request({ + url: '/saas/carFence/selectConnect', + method: 'post', + data:data + }) +} +//添加围栏 +export function addCarFence(data) { + return request({ + url: '/saas/carFence/addCarFence', + method: 'post', + data + }) +} +// 添加多对多 +export function addFenceGroupMidddle(fenceGroupId,carFence) { + return request({ + url: '/saas/middle/addCarFence', + method: 'post', + params:{fenceGroupId}, + data:carFence, + }) +} +// 添加中间 +export function addMiddle(data) { + return request({ + url: '/saas/middle/addMiddle', + method: 'post', + data:data + }) +} + +// 刷新方法 +export function clazzList() { + return request({ + url: '/saas/carFenceClazz/selectClazz', + method: 'post', + }) +} + +// 刷新方法 +export function typeList(data) { + return request({ + url: '/saas/carFenceType/selectType', + method: 'post', + }) +} +// 刷新方法 +export function carAddList(data) { + return request({ + url: '/saas/carFence/carAddList', + method: 'post', + }) +} + +// 查询所有车名称 +export function selectCarInformationIdAndLicensePlate() { + return request({ + url: '/saas/carFence/selectCarInformationIdAndLicensePlate', + method: 'get', + }) +} +// 围栏组列表 +export function group(data) { + return request({ + url: '/saas/fenceGroup/fenceGroupList', + method: 'post', + data + }) +} +// 围栏组添加 +export function addFenceGroup(data) { + return request({ + url: '/saas/fenceGroup/addFenceGroup', + method: 'POST', + data + }) +} +//修改围栏组状态 +export function updateFenceGroupById(groupId){ + return request({ + url:'/saas/middle/updateFenceGroupById?groupId='+groupId, + method:'get', + data:groupId + }) +} +//启动修改围栏状态 +export function activate(groupId){ + return request({ + url:'/saas/middle/activate?groupId='+groupId, + method:'get', + data:groupId + }) +} + +//根据围栏组的id查询绑定的围栏的中间表 +export function BoundFenceGroup(groupId){ + return request({ + url:'/saas/middle/BoundFenceGroup', + method:'get', + params:{groupId} + }) +} + +//根据围栏组的id 添加车辆的中间表 +export function AddFenceGroupAddCar(carId,fenceGroup){ + return request({ + url:'/saas/middle/addFenceGroupAddCarMiddle', + method:'post', + params:{carId}, + data:fenceGroup + }) +} +/* 查询绑定的围栏组 */ +export function selectBoundGFenceGroup(carId){ + return request({ + url:'/saas/middle/selectBoundGFenceGroup', + method:'get', + params:{carId}, + + }) + + +} diff --git a/src/api/manage/fenceAPI.js b/src/api/manage/fenceAPI.js new file mode 100644 index 0000000..5e1e3a0 --- /dev/null +++ b/src/api/manage/fenceAPI.js @@ -0,0 +1,5 @@ +import request from '@/utils/request' + +export function geofenceList(){ + +} diff --git a/src/api/platform/logs.js b/src/api/platform/logs.js new file mode 100644 index 0000000..cc5f885 --- /dev/null +++ b/src/api/platform/logs.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询预警日志列表 +export function listLogs(query) { + return request({ + url: '/warn/logs/list', + method: 'get', + params: query + }) +} + +// 查询预警日志详细 +export function getLogs(id) { + return request({ + url: '/warn/logs/' + id, + method: 'get' + }) +} + +// 新增预警日志 +export function addLogs(data) { + return request({ + url: '/warn/logs', + method: 'post', + data: data + }) +} + +// 修改预警日志 +export function updateLogs(data) { + return request({ + url: '/warn/logs', + method: 'put', + data: data + }) +} + +// 删除预警日志 +export function delLogs(id) { + return request({ + url: '/warn/logs/' + id, + method: 'delete' + }) +} diff --git a/src/api/platform/rule.js b/src/api/platform/rule.js new file mode 100644 index 0000000..146db11 --- /dev/null +++ b/src/api/platform/rule.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询预警规则列表 +export function listRule(query) { + return request({ + url: '/warn/rule/list', + method: 'get', + params: query + }) +} + +// 查询预警规则详细 +export function getRule(id) { + return request({ + url: '/warn/rule/' + id, + method: 'get' + }) +} + +// 新增预警规则 +export function addRule(data) { + return request({ + url: '/warn/rule', + method: 'post', + data: data + }) +} + +// 修改预警规则 +export function updateRule(data) { + return request({ + url: '/warn/rule', + method: 'put', + data: data + }) +} + +// 删除预警规则 +export function delRule(id) { + return request({ + url: '/warn/rule/' + id, + method: 'delete' + }) +} diff --git a/src/api/platform/strategy.js b/src/api/platform/strategy.js new file mode 100644 index 0000000..e165c24 --- /dev/null +++ b/src/api/platform/strategy.js @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// //根据车辆类型 +// export function findBySysTypeId(id) { +// return request({ +// url: 'car/sysType/findBySysTypeId/' + id, +// method: "POST" +// }) +// } + +// 查询预警策略列表 +export function listStrategy(query) { + return request({ + url: '/warn/strategy/list', + method: 'get', + params: query + }) +} + +// 查询预警策略详细 +export function getStrategy(id) { + return request({ + url: '/warn/strategy/' + id, + method: 'get' + }) +} + +// 新增预警策略 +export function addStrategy(data) { + return request({ + url: '/warn/strategy', + method: 'post', + data: data + }) +} + +// 修改预警策略 +export function updateStrategy(data) { + return request({ + url: '/warn/strategy', + method: 'put', + data: data + }) +} + +// 删除预警策略 +export function delStrategy(id) { + return request({ + url: '/warn/strategy/' + id, + method: 'delete' + }) + + + + + + + + +} diff --git a/src/router/index.js b/src/router/index.js index 2afac71..38ac1e3 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -119,6 +119,21 @@ export const dynamicRoutes = [ } ] }, + { + path: '/carFence', + component: Layout, + hidden: true, + permissions: ['carFence:fence:index'], + children: [ + { + path: 'fence-MapContainer/:Id(\\d+)', + // path: 'fence-MapContainer', + component: () => import('@/views/carFence/fence/MapContainer'), + name: 'MapContainer', + meta: {title: '地图', activeMenu: '/carFence/fence'} + } + ] + }, { path: '/system/dict-data', component: Layout, diff --git a/src/views/car/car/index.vue b/src/views/car/car/index.vue new file mode 100644 index 0000000..045c69c --- /dev/null +++ b/src/views/car/car/index.vue @@ -0,0 +1,539 @@ + + + diff --git a/src/views/car/message/index.vue b/src/views/car/message/index.vue new file mode 100644 index 0000000..2e744c1 --- /dev/null +++ b/src/views/car/message/index.vue @@ -0,0 +1,313 @@ + + + + diff --git a/src/views/carFence/fence/MapContainer.vue b/src/views/carFence/fence/MapContainer.vue new file mode 100644 index 0000000..b8f40a0 --- /dev/null +++ b/src/views/carFence/fence/MapContainer.vue @@ -0,0 +1,397 @@ + + + + + diff --git a/src/views/carFence/fence/fenceGroups.vue b/src/views/carFence/fence/fenceGroups.vue new file mode 100644 index 0000000..9d098aa --- /dev/null +++ b/src/views/carFence/fence/fenceGroups.vue @@ -0,0 +1,366 @@ + + + + diff --git a/src/views/carFence/fence/index.vue b/src/views/carFence/fence/index.vue new file mode 100644 index 0000000..0c37016 --- /dev/null +++ b/src/views/carFence/fence/index.vue @@ -0,0 +1,202 @@ + + + + diff --git a/vue.config.js b/vue.config.js index dd8b15d..17d9a1d 100644 --- a/vue.config.js +++ b/vue.config.js @@ -35,7 +35,7 @@ module.exports = { proxy: { // detail: https://cli.vuejs.org/config/#devserver-proxy [process.env.VUE_APP_BASE_API]: { - target: `http://localhost:8080`, + target: `http://127.0.0.1:8080`, changeOrigin: true, pathRewrite: { ['^' + process.env.VUE_APP_BASE_API]: ''