diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/views/rule/components/setThresh.vue b/src/views/rule/components/setThresh.vue new file mode 100644 index 0000000..a0ee404 --- /dev/null +++ b/src/views/rule/components/setThresh.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/views/rule/components/setThresh.vue b/src/views/rule/components/setThresh.vue new file mode 100644 index 0000000..a0ee404 --- /dev/null +++ b/src/views/rule/components/setThresh.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/views/rule/listRule.vue b/src/views/rule/listRule.vue new file mode 100644 index 0000000..a19b9e4 --- /dev/null +++ b/src/views/rule/listRule.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/views/rule/components/setThresh.vue b/src/views/rule/components/setThresh.vue new file mode 100644 index 0000000..a0ee404 --- /dev/null +++ b/src/views/rule/components/setThresh.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/views/rule/listRule.vue b/src/views/rule/listRule.vue new file mode 100644 index 0000000..a19b9e4 --- /dev/null +++ b/src/views/rule/listRule.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/src/views/statistics/barChart.vue b/src/views/statistics/barChart.vue new file mode 100644 index 0000000..34910e2 --- /dev/null +++ b/src/views/statistics/barChart.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/views/rule/components/setThresh.vue b/src/views/rule/components/setThresh.vue new file mode 100644 index 0000000..a0ee404 --- /dev/null +++ b/src/views/rule/components/setThresh.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/views/rule/listRule.vue b/src/views/rule/listRule.vue new file mode 100644 index 0000000..a19b9e4 --- /dev/null +++ b/src/views/rule/listRule.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/src/views/statistics/barChart.vue b/src/views/statistics/barChart.vue new file mode 100644 index 0000000..34910e2 --- /dev/null +++ b/src/views/statistics/barChart.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/src/views/statistics/maintainStatistics.vue b/src/views/statistics/maintainStatistics.vue new file mode 100644 index 0000000..a86e235 --- /dev/null +++ b/src/views/statistics/maintainStatistics.vue @@ -0,0 +1,188 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/views/rule/components/setThresh.vue b/src/views/rule/components/setThresh.vue new file mode 100644 index 0000000..a0ee404 --- /dev/null +++ b/src/views/rule/components/setThresh.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/views/rule/listRule.vue b/src/views/rule/listRule.vue new file mode 100644 index 0000000..a19b9e4 --- /dev/null +++ b/src/views/rule/listRule.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/src/views/statistics/barChart.vue b/src/views/statistics/barChart.vue new file mode 100644 index 0000000..34910e2 --- /dev/null +++ b/src/views/statistics/barChart.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/src/views/statistics/maintainStatistics.vue b/src/views/statistics/maintainStatistics.vue new file mode 100644 index 0000000..a86e235 --- /dev/null +++ b/src/views/statistics/maintainStatistics.vue @@ -0,0 +1,188 @@ + + + + + diff --git a/src/views/statistics/pieChart.vue b/src/views/statistics/pieChart.vue new file mode 100644 index 0000000..d69f41a --- /dev/null +++ b/src/views/statistics/pieChart.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/views/rule/components/setThresh.vue b/src/views/rule/components/setThresh.vue new file mode 100644 index 0000000..a0ee404 --- /dev/null +++ b/src/views/rule/components/setThresh.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/views/rule/listRule.vue b/src/views/rule/listRule.vue new file mode 100644 index 0000000..a19b9e4 --- /dev/null +++ b/src/views/rule/listRule.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/src/views/statistics/barChart.vue b/src/views/statistics/barChart.vue new file mode 100644 index 0000000..34910e2 --- /dev/null +++ b/src/views/statistics/barChart.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/src/views/statistics/maintainStatistics.vue b/src/views/statistics/maintainStatistics.vue new file mode 100644 index 0000000..a86e235 --- /dev/null +++ b/src/views/statistics/maintainStatistics.vue @@ -0,0 +1,188 @@ + + + + + diff --git a/src/views/statistics/pieChart.vue b/src/views/statistics/pieChart.vue new file mode 100644 index 0000000..d69f41a --- /dev/null +++ b/src/views/statistics/pieChart.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/src/views/statistics/statisticsChart.vue b/src/views/statistics/statisticsChart.vue new file mode 100644 index 0000000..2c48fe0 --- /dev/null +++ b/src/views/statistics/statisticsChart.vue @@ -0,0 +1,87 @@ + + + + + diff --git a/src/api/system/alarm.js b/src/api/system/alarm.js new file mode 100644 index 0000000..1c3a7ab --- /dev/null +++ b/src/api/system/alarm.js @@ -0,0 +1,62 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getAlarmNowList(params) { + return request({ + url: '/alarm/listNowPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getAlarmHistoryList(params) { + return request({ + url: '/alarm/listHisPage', + method: 'get', + params + }) +} + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/bridge.js b/src/api/system/bridge.js new file mode 100644 index 0000000..4df107b --- /dev/null +++ b/src/api/system/bridge.js @@ -0,0 +1,81 @@ +/** + * 桥梁管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取桥梁详情 +export function getDetail(id) { + return request({ + url: '/bridge/detail', + method: 'get', + params: { + id: id + } + }) +} + +export function updateBridge(params) { + return request({ + url: '/bridge/update', + method: 'post', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/data.js b/src/api/system/data.js new file mode 100644 index 0000000..4c95db5 --- /dev/null +++ b/src/api/system/data.js @@ -0,0 +1,63 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +import qs from 'qs' + +// 获取当前报警列表 +export function getHistoryList(params) { + return request({ + url: '/data/hisListPage', + method: 'get', + params + }) +} + +// 获取当前报警列表 +export function getHistory(params) { + return request({ + url: '/data/hisList', + method: 'get', + params + }) +} + + + +// 批量消警 +export function clearAll(params) { + return request({ + url: '/alarm/allClear', + method: 'get', + params + }) +} + +// 消警 +export function clearAlarm(params) { + return request({ + url: '/alarm/cancel', + method: 'get', + params + }) +} + +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 设置报警阈值 +export function setThresh(params) { + return request({ + url: '/alarm/resetAlarmRule', + method: 'post', + params + }) +} diff --git a/src/api/system/order.js b/src/api/system/order.js new file mode 100644 index 0000000..7007c50 --- /dev/null +++ b/src/api/system/order.js @@ -0,0 +1,71 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRecordList(params) { + return request({ + url: '/maintain/listPage', + method: 'get', + params + }) +} +// 批量导出 +export function exportRecords(params) { + return request({ + url: 'device/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + bridgeMaintenanceId: id + } + }) +} diff --git a/src/api/system/rule.js b/src/api/system/rule.js new file mode 100644 index 0000000..76c6b2d --- /dev/null +++ b/src/api/system/rule.js @@ -0,0 +1,59 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 获取当前报警列表 +export function getRuleList() { + return request({ + url: 'rule/listPage', + method: 'get' + }) +} +export function getContentList(params) { + return request({ + url: 'maintain/contentByType', + method: 'get', + params: { + type: params + } + }) +} +// 批量导出报警 +export function batchExportAlarm(params) { + return request({ + url: 'person/batchExport', + method: 'get', + timeout: 120000, + params, + responseType: 'blob' // 这一步也很关键,一定要加上 responseType 值为 blob + }) +} + +// 编辑 +export function editRecord(params) { + return request({ + url: 'maintain/update', + method: 'post', + params + }) +} +// 新增 +export function addRecord(params) { + return request({ + url: 'maintain/add', + method: 'post', + params + }) +} +// 删除 +export function delRecord(id) { + return request({ + url: 'maintain/delete', + method: 'post', + params: { + id: id + } + }) +} diff --git a/src/api/system/statistics.js b/src/api/system/statistics.js new file mode 100644 index 0000000..b8f29db --- /dev/null +++ b/src/api/system/statistics.js @@ -0,0 +1,15 @@ +/** + * 人员管理接口 + */ +import request from '@/utils/request' +// import qs from 'qs' + +// 年养护次数统计 +export function countByYear(params) { + return request({ + url: 'maintain/maintainCount', + method: 'get', + params + }) +} + diff --git a/src/assets/global_images/location_green.png b/src/assets/global_images/location_green.png new file mode 100644 index 0000000..aa8be65 --- /dev/null +++ b/src/assets/global_images/location_green.png Binary files differ diff --git a/src/assets/global_images/location_red.png b/src/assets/global_images/location_red.png new file mode 100644 index 0000000..2be8c3d --- /dev/null +++ b/src/assets/global_images/location_red.png Binary files differ diff --git a/src/assets/global_images/location_yellow.png b/src/assets/global_images/location_yellow.png new file mode 100644 index 0000000..5ab6f4d --- /dev/null +++ b/src/assets/global_images/location_yellow.png Binary files differ diff --git a/src/icons/svg/bridge.svg b/src/icons/svg/bridge.svg new file mode 100644 index 0000000..1a0336f --- /dev/null +++ b/src/icons/svg/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.js b/src/main.js index f2d105d..c400ef4 100644 --- a/src/main.js +++ b/src/main.js @@ -18,6 +18,9 @@ // echart // import echarts from 'echarts' // Vue.prototype.$echarts = echarts +// 引入v-charts +import VCharts from 'v-charts' +Vue.use(VCharts) // 将自动注册所有组件为全局组件 // import dataV from '@jiaminghi/data-view' diff --git a/src/router/index.js b/src/router/index.js index 44cba3b..48cffff 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -8,6 +8,10 @@ /* Layout */ import Layout from '@/layout/Layout' +import { overviewRouters } from './modules/overview' +import { orderRouters } from './modules/order' +import { bridgeRouters } from './modules/bridge' +import { statisticsRouters } from './modules/statistics' import { systemRouters } from './modules/system' import { exampleRouters } from './modules/example' @@ -70,6 +74,10 @@ // 异步挂载路由 // 动态需要根据权限加载的路由表 export const asyncRouterMap = [ + ...overviewRouters, + ...orderRouters, + ...bridgeRouters, + ...statisticsRouters, ...exampleRouters, ...systemRouters, { path: '*', redirect: '/404', hidden: true } diff --git a/src/router/modules/bridge.js b/src/router/modules/bridge.js new file mode 100644 index 0000000..05a4748 --- /dev/null +++ b/src/router/modules/bridge.js @@ -0,0 +1,36 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const bridgeRouters = [ + { + path: 'bridge', + component: Layout, + redirect: '/yongSheng', + name: 'Bridge', + meta: { + title: '桥梁管理', + icon: 'icon-config', // 图标 + permission: ['/bridgeManage']// 权限名称 + }, + children: [ + { + path: '/yongSheng', + name: 'YongSheng', + component: () => import('@/views/bridge/yongSheng'), + meta: { title: '永胜桥', icon: 'function', permission: ['/yongSheng'] } + }, + { + path: '/huangZhou', + name: 'HuangZhou', + component: () => import('@/views/bridge/huangZhou'), + meta: { title: '黄洲桥', icon: 'function', permission: ['/huangZhou'] } + }, + { + path: '/guangMing', + name: 'GuangMing', + component: () => import('@/views/bridge/guangMing'), + meta: { title: '光明桥', icon: 'function', permission: ['/guangMing'] } + } + ] + } +] diff --git a/src/router/modules/order.js b/src/router/modules/order.js new file mode 100644 index 0000000..fdb43c5 --- /dev/null +++ b/src/router/modules/order.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const orderRouters = [ + { + path: 'order', + component: Layout, + redirect: '/rule', + name: 'Order', + meta: { + title: '工单管理', + icon: 'icon-config', // 图标 + permission: ['/order']// 权限名称 + }, + children: [ + { + path: '/order', + name: 'Order', + component: () => import('@/views/order/listMaintainRecords'), + meta: { title: '养护记录', icon: 'dashboard', permission: ['/order'] } + } + ] + }] diff --git a/src/router/modules/overview.js b/src/router/modules/overview.js new file mode 100644 index 0000000..5879990 --- /dev/null +++ b/src/router/modules/overview.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const overviewRouters = [ + { + path: 'overviewBridge', + component: Layout, + redirect: '/overviewBridge', + name: 'OverviewBridge', + meta: { + title: '运行总览', + icon: 'icon-overview', // 图标 + permission: ['/overviewBridge']// 权限名称 + }, + children: [ + { + path: '/overviewBridge', + name: 'OverviewBridge', + component: () => import('@/views/overview/overview.vue'), + meta: { title: '运行总览', icon: 'function', permission: ['/overviewBridge'] } + } + ] + } +] diff --git a/src/router/modules/rule.js b/src/router/modules/rule.js new file mode 100644 index 0000000..50d0992 --- /dev/null +++ b/src/router/modules/rule.js @@ -0,0 +1,23 @@ +/* Layout */ +import Layout from '@/layout/Layout' +export const ruleRouters = [ + { + path: 'rule', + component: Layout, + redirect: '/rule', + name: 'Rule', + meta: { + title: '规章制度', + icon: 'icon-config', // 图标 + permission: ['/rule']// 权限名称 + }, + children: [ + { + path: '/rule', + name: 'Rule', + component: () => import('@/views/rule/listRule'), + meta: { title: '规章制度', icon: 'function', permission: ['/rule'] } + } + ] + } +] diff --git a/src/router/modules/statistics.js b/src/router/modules/statistics.js new file mode 100644 index 0000000..ce9315a --- /dev/null +++ b/src/router/modules/statistics.js @@ -0,0 +1,24 @@ +/* Layout */ +import Layout from '@/layout/Layout' + +export const statisticsRouters = [ + { + path: 'statisticsBridge', + component: Layout, + redirect: '/statisticsBridge', + name: 'StatisticsBridge', + meta: { + title: '养护统计', + icon: 'icon-config', // 图标 + permission: ['/statisticsBridge']// 权限名称 + }, + children: [ + { + path: '/statisticsBridge', + name: 'StatisticsBridge', + component: () => import('@/views/statistics/maintainStatistics'), + meta: { title: '养护统计', icon: 'function', permission: ['/statisticsBridge'] } + } + ] + } +] diff --git a/src/utils/request.js b/src/utils/request.js index c88ea76..dc56e26 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -17,6 +17,13 @@ config.headers['token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 console.log(config.headers['token']) } + // 在接口增加时间戳 + // if (config.method === 'get') { + config.params = { + _t: Date.parse(new Date()) / 1000, + ...config.params + } + // } return config }, error => { diff --git a/src/views/bridge/components/detail.vue b/src/views/bridge/components/detail.vue new file mode 100644 index 0000000..96cf9f8 --- /dev/null +++ b/src/views/bridge/components/detail.vue @@ -0,0 +1,425 @@ + + + + diff --git a/src/views/bridge/components/editBridge.vue b/src/views/bridge/components/editBridge.vue new file mode 100644 index 0000000..6182fee --- /dev/null +++ b/src/views/bridge/components/editBridge.vue @@ -0,0 +1,239 @@ + + + + diff --git a/src/views/bridge/guangMing.vue b/src/views/bridge/guangMing.vue new file mode 100644 index 0000000..2a50ac4 --- /dev/null +++ b/src/views/bridge/guangMing.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/bridge/huangzhou.vue b/src/views/bridge/huangzhou.vue new file mode 100644 index 0000000..311b07b --- /dev/null +++ b/src/views/bridge/huangzhou.vue @@ -0,0 +1,46 @@ + + + + diff --git a/src/views/bridge/yongSheng.vue b/src/views/bridge/yongSheng.vue new file mode 100644 index 0000000..b986dbb --- /dev/null +++ b/src/views/bridge/yongSheng.vue @@ -0,0 +1,44 @@ + + + + diff --git a/src/views/order/editOrder.vue b/src/views/order/editOrder.vue new file mode 100644 index 0000000..f5e5fd7 --- /dev/null +++ b/src/views/order/editOrder.vue @@ -0,0 +1,305 @@ + + + + + diff --git a/src/views/order/listMaintainRecords.vue b/src/views/order/listMaintainRecords.vue new file mode 100644 index 0000000..db090b4 --- /dev/null +++ b/src/views/order/listMaintainRecords.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/overview/overview.vue b/src/views/overview/overview.vue new file mode 100644 index 0000000..ff9f9a1 --- /dev/null +++ b/src/views/overview/overview.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/src/views/rule/components/setThresh.vue b/src/views/rule/components/setThresh.vue new file mode 100644 index 0000000..a0ee404 --- /dev/null +++ b/src/views/rule/components/setThresh.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/views/rule/listRule.vue b/src/views/rule/listRule.vue new file mode 100644 index 0000000..a19b9e4 --- /dev/null +++ b/src/views/rule/listRule.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/src/views/statistics/barChart.vue b/src/views/statistics/barChart.vue new file mode 100644 index 0000000..34910e2 --- /dev/null +++ b/src/views/statistics/barChart.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/src/views/statistics/maintainStatistics.vue b/src/views/statistics/maintainStatistics.vue new file mode 100644 index 0000000..a86e235 --- /dev/null +++ b/src/views/statistics/maintainStatistics.vue @@ -0,0 +1,188 @@ + + + + + diff --git a/src/views/statistics/pieChart.vue b/src/views/statistics/pieChart.vue new file mode 100644 index 0000000..d69f41a --- /dev/null +++ b/src/views/statistics/pieChart.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/src/views/statistics/statisticsChart.vue b/src/views/statistics/statisticsChart.vue new file mode 100644 index 0000000..2c48fe0 --- /dev/null +++ b/src/views/statistics/statisticsChart.vue @@ -0,0 +1,87 @@ + + + + + diff --git a/static/project.config.json b/static/project.config.json index cb1eb78..8fddbd3 100644 --- a/static/project.config.json +++ b/static/project.config.json @@ -1,11 +1,11 @@ { - "title": "基础资源系统", - "baseUrl": "http://111.198.10.15:11409/", + "title": "路桥养护子系统", + "baseUrl": "http://111.198.10.15:11413/bridge/", "mainPage": "http://111.198.10.15:11404/dcms/", "singleSys": true, "city":"崇仁县", "mapUrl":"https://t0.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=216ee92889e17ab1b083fae665d522b8", "labelUrl":"https://t0.tianditu.gov.cn/cva_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=216ee92889e17ab1b083fae665d522b8", "center":[27.75962, 116.06021], - "zoom":13 + "zoom":15 }