diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/src/components/HKplayer/index.vue b/src/components/HKplayer/index.vue index cb6c5be..f2f20c5 100644 --- a/src/components/HKplayer/index.vue +++ b/src/components/HKplayer/index.vue @@ -196,6 +196,11 @@ const stopAllPlay = () => { player.value.JS_StopRealPlayAll().then(() => { console.info('JS_StopRealPlayAll success') + if (document.getElementById("img")) { + document.querySelectorAll('[id="img"]').forEach(element => { + element.remove(); + }) + } }) } const playerFun = { diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/src/components/HKplayer/index.vue b/src/components/HKplayer/index.vue index cb6c5be..f2f20c5 100644 --- a/src/components/HKplayer/index.vue +++ b/src/components/HKplayer/index.vue @@ -196,6 +196,11 @@ const stopAllPlay = () => { player.value.JS_StopRealPlayAll().then(() => { console.info('JS_StopRealPlayAll success') + if (document.getElementById("img")) { + document.querySelectorAll('[id="img"]').forEach(element => { + element.remove(); + }) + } }) } const playerFun = { diff --git a/src/router/modules/pc.ts b/src/router/modules/pc.ts index 1c5e45b..a69940b 100644 --- a/src/router/modules/pc.ts +++ b/src/router/modules/pc.ts @@ -674,7 +674,7 @@ icon: 'ep:key', sidebar: true, breadcrumb: true, - activeMenu: '/device/tool', + activeMenu: '/operation/tool', auth: '/device/tool', }, }, diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/src/components/HKplayer/index.vue b/src/components/HKplayer/index.vue index cb6c5be..f2f20c5 100644 --- a/src/components/HKplayer/index.vue +++ b/src/components/HKplayer/index.vue @@ -196,6 +196,11 @@ const stopAllPlay = () => { player.value.JS_StopRealPlayAll().then(() => { console.info('JS_StopRealPlayAll success') + if (document.getElementById("img")) { + document.querySelectorAll('[id="img"]').forEach(element => { + element.remove(); + }) + } }) } const playerFun = { diff --git a/src/router/modules/pc.ts b/src/router/modules/pc.ts index 1c5e45b..a69940b 100644 --- a/src/router/modules/pc.ts +++ b/src/router/modules/pc.ts @@ -674,7 +674,7 @@ icon: 'ep:key', sidebar: true, breadcrumb: true, - activeMenu: '/device/tool', + activeMenu: '/operation/tool', auth: '/device/tool', }, }, diff --git a/src/views/home/alarm/current/components/gasDataDialog.vue b/src/views/home/alarm/current/components/gasDataDialog.vue index c022cf5..f688528 100644 --- a/src/views/home/alarm/current/components/gasDataDialog.vue +++ b/src/views/home/alarm/current/components/gasDataDialog.vue @@ -121,8 +121,8 @@ // DATA_PAN_GAS("场站监测云台", "data_pan_gas", "DEVICE_CODE,,logtime", "ID,LEDGER_NUMBER,DEVICE_CODE设备编号,CONCENTRATION浓度,LOGTIME,DIRCETION水平位置,PITCH垂直位置", "LOGTIME采集时间"); // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -332,14 +332,14 @@ } } else if (listQuery.value.typeName === '智能警示桩') { data.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') - } + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') + // } ] } else if (listQuery.value.typeName === '场站监测云台') { data.value = [ @@ -517,8 +517,8 @@ columns3: { list: list.value.map((item:any, index:number) => ({ '1index': index+ 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -529,7 +529,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index:number) => ({ @@ -579,7 +580,7 @@ 搜索 - + 切换视图 diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/src/components/HKplayer/index.vue b/src/components/HKplayer/index.vue index cb6c5be..f2f20c5 100644 --- a/src/components/HKplayer/index.vue +++ b/src/components/HKplayer/index.vue @@ -196,6 +196,11 @@ const stopAllPlay = () => { player.value.JS_StopRealPlayAll().then(() => { console.info('JS_StopRealPlayAll success') + if (document.getElementById("img")) { + document.querySelectorAll('[id="img"]').forEach(element => { + element.remove(); + }) + } }) } const playerFun = { diff --git a/src/router/modules/pc.ts b/src/router/modules/pc.ts index 1c5e45b..a69940b 100644 --- a/src/router/modules/pc.ts +++ b/src/router/modules/pc.ts @@ -674,7 +674,7 @@ icon: 'ep:key', sidebar: true, breadcrumb: true, - activeMenu: '/device/tool', + activeMenu: '/operation/tool', auth: '/device/tool', }, }, diff --git a/src/views/home/alarm/current/components/gasDataDialog.vue b/src/views/home/alarm/current/components/gasDataDialog.vue index c022cf5..f688528 100644 --- a/src/views/home/alarm/current/components/gasDataDialog.vue +++ b/src/views/home/alarm/current/components/gasDataDialog.vue @@ -121,8 +121,8 @@ // DATA_PAN_GAS("场站监测云台", "data_pan_gas", "DEVICE_CODE,,logtime", "ID,LEDGER_NUMBER,DEVICE_CODE设备编号,CONCENTRATION浓度,LOGTIME,DIRCETION水平位置,PITCH垂直位置", "LOGTIME采集时间"); // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -332,14 +332,14 @@ } } else if (listQuery.value.typeName === '智能警示桩') { data.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') - } + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') + // } ] } else if (listQuery.value.typeName === '场站监测云台') { data.value = [ @@ -517,8 +517,8 @@ columns3: { list: list.value.map((item:any, index:number) => ({ '1index': index+ 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -529,7 +529,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index:number) => ({ @@ -579,7 +580,7 @@ 搜索 - + 切换视图 diff --git a/src/views/home/device/device/components/dataSearch.vue b/src/views/home/device/device/components/dataSearch.vue index 1ab7842..1f71bca 100644 --- a/src/views/home/device/device/components/dataSearch.vue +++ b/src/views/home/device/device/components/dataSearch.vue @@ -111,8 +111,8 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', value: 'pipeInclineAlarm', align: 'center', width: '95' }, { text: '桩拆卸报警', value: 'pipeBreakAlarm', align: 'center', width: '95' }, @@ -367,16 +367,16 @@ } else if (listQuery.value.typeName === '智能警示桩') { chartData.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, ] } else if (listQuery.value.typeName.includes('云台')) { @@ -503,8 +503,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -515,7 +515,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ @@ -546,7 +547,7 @@
diff --git a/src/views/home/ledger/location/components/addDialog.vue b/src/views/home/ledger/location/components/addDialog.vue index 67cc516..74c995a 100644 --- a/src/views/home/ledger/location/components/addDialog.vue +++ b/src/views/home/ledger/location/components/addDialog.vue @@ -44,6 +44,7 @@ // pipeCode: [{ required: true, message: '关联管线不能为空', trigger: ['blur', 'change'] }], // ledgerName: [{ required: true, message: '闸井名称不能为空', trigger: ['blur', 'change'] }], locationCategory: [{ required: true, message: '位置类别不能为空', trigger: ['blur', 'change'] }], + propertyPhone: [{ required: false, pattern: /^1[34578]\d{9}$/, message: '请输入正确的手机号', trigger: ['blur', 'change'] }], } // 前端校验规则 const mapRef = ref() diff --git a/src/views/home/pipeline/components/detailInfoDialog.vue b/src/views/home/pipeline/components/detailInfoDialog.vue index 12b2e16..ce23322 100644 --- a/src/views/home/pipeline/components/detailInfoDialog.vue +++ b/src/views/home/pipeline/components/detailInfoDialog.vue @@ -152,13 +152,18 @@ gasData.value = [] if ( rowData.value.deviceTypeName.includes('燃气智能监测终端') || - rowData.value.deviceTypeName.includes('管网哨兵') || - rowData.value.deviceTypeName.includes('智能警示桩') + rowData.value.deviceTypeName.includes('管网哨兵') ) { + // rowData.value.deviceTypeName.includes('智能警示桩') // if (descriptionsList.value[descriptionsList.value.length - 1].text === '燃气浓度') { return } descriptionsList.value = descriptionsList.value.filter( (item: any) => item.text !== '燃气浓度' ) + descriptionsList.value.push( { + text: '设备运行状态', + value: 'runStatus', + align: 'center' + }) descriptionsList.value.push({ text: '燃气浓度', value: 'manageType', @@ -166,7 +171,7 @@ }) } else { descriptionsList.value = descriptionsList.value.filter( - (item: any) => item.text !== '燃气浓度' + (item: any) => item.text !== '燃气浓度' && item.text !== '设备运行状态' ) } // console.log(e.info.row, 'e.info.row') @@ -177,7 +182,8 @@ .then(res => { loading.value = false detailInfo.value = res.data - if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵') || rowData.value.deviceTypeName.includes('智能警示桩'))) { + // || rowData.value.deviceTypeName.includes('智能警示桩') + if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵'))) { return } diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/src/components/HKplayer/index.vue b/src/components/HKplayer/index.vue index cb6c5be..f2f20c5 100644 --- a/src/components/HKplayer/index.vue +++ b/src/components/HKplayer/index.vue @@ -196,6 +196,11 @@ const stopAllPlay = () => { player.value.JS_StopRealPlayAll().then(() => { console.info('JS_StopRealPlayAll success') + if (document.getElementById("img")) { + document.querySelectorAll('[id="img"]').forEach(element => { + element.remove(); + }) + } }) } const playerFun = { diff --git a/src/router/modules/pc.ts b/src/router/modules/pc.ts index 1c5e45b..a69940b 100644 --- a/src/router/modules/pc.ts +++ b/src/router/modules/pc.ts @@ -674,7 +674,7 @@ icon: 'ep:key', sidebar: true, breadcrumb: true, - activeMenu: '/device/tool', + activeMenu: '/operation/tool', auth: '/device/tool', }, }, diff --git a/src/views/home/alarm/current/components/gasDataDialog.vue b/src/views/home/alarm/current/components/gasDataDialog.vue index c022cf5..f688528 100644 --- a/src/views/home/alarm/current/components/gasDataDialog.vue +++ b/src/views/home/alarm/current/components/gasDataDialog.vue @@ -121,8 +121,8 @@ // DATA_PAN_GAS("场站监测云台", "data_pan_gas", "DEVICE_CODE,,logtime", "ID,LEDGER_NUMBER,DEVICE_CODE设备编号,CONCENTRATION浓度,LOGTIME,DIRCETION水平位置,PITCH垂直位置", "LOGTIME采集时间"); // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -332,14 +332,14 @@ } } else if (listQuery.value.typeName === '智能警示桩') { data.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') - } + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') + // } ] } else if (listQuery.value.typeName === '场站监测云台') { data.value = [ @@ -517,8 +517,8 @@ columns3: { list: list.value.map((item:any, index:number) => ({ '1index': index+ 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -529,7 +529,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index:number) => ({ @@ -579,7 +580,7 @@ 搜索 - + 切换视图 diff --git a/src/views/home/device/device/components/dataSearch.vue b/src/views/home/device/device/components/dataSearch.vue index 1ab7842..1f71bca 100644 --- a/src/views/home/device/device/components/dataSearch.vue +++ b/src/views/home/device/device/components/dataSearch.vue @@ -111,8 +111,8 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', value: 'pipeInclineAlarm', align: 'center', width: '95' }, { text: '桩拆卸报警', value: 'pipeBreakAlarm', align: 'center', width: '95' }, @@ -367,16 +367,16 @@ } else if (listQuery.value.typeName === '智能警示桩') { chartData.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, ] } else if (listQuery.value.typeName.includes('云台')) { @@ -503,8 +503,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -515,7 +515,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ @@ -546,7 +547,7 @@
@@ -831,50 +859,82 @@ - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + diff --git a/src/views/home/ledger/location/components/addDialog.vue b/src/views/home/ledger/location/components/addDialog.vue index 67cc516..74c995a 100644 --- a/src/views/home/ledger/location/components/addDialog.vue +++ b/src/views/home/ledger/location/components/addDialog.vue @@ -44,6 +44,7 @@ // pipeCode: [{ required: true, message: '关联管线不能为空', trigger: ['blur', 'change'] }], // ledgerName: [{ required: true, message: '闸井名称不能为空', trigger: ['blur', 'change'] }], locationCategory: [{ required: true, message: '位置类别不能为空', trigger: ['blur', 'change'] }], + propertyPhone: [{ required: false, pattern: /^1[34578]\d{9}$/, message: '请输入正确的手机号', trigger: ['blur', 'change'] }], } // 前端校验规则 const mapRef = ref() diff --git a/src/views/home/pipeline/components/detailInfoDialog.vue b/src/views/home/pipeline/components/detailInfoDialog.vue index 12b2e16..ce23322 100644 --- a/src/views/home/pipeline/components/detailInfoDialog.vue +++ b/src/views/home/pipeline/components/detailInfoDialog.vue @@ -152,13 +152,18 @@ gasData.value = [] if ( rowData.value.deviceTypeName.includes('燃气智能监测终端') || - rowData.value.deviceTypeName.includes('管网哨兵') || - rowData.value.deviceTypeName.includes('智能警示桩') + rowData.value.deviceTypeName.includes('管网哨兵') ) { + // rowData.value.deviceTypeName.includes('智能警示桩') // if (descriptionsList.value[descriptionsList.value.length - 1].text === '燃气浓度') { return } descriptionsList.value = descriptionsList.value.filter( (item: any) => item.text !== '燃气浓度' ) + descriptionsList.value.push( { + text: '设备运行状态', + value: 'runStatus', + align: 'center' + }) descriptionsList.value.push({ text: '燃气浓度', value: 'manageType', @@ -166,7 +171,7 @@ }) } else { descriptionsList.value = descriptionsList.value.filter( - (item: any) => item.text !== '燃气浓度' + (item: any) => item.text !== '燃气浓度' && item.text !== '设备运行状态' ) } // console.log(e.info.row, 'e.info.row') @@ -177,7 +182,8 @@ .then(res => { loading.value = false detailInfo.value = res.data - if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵') || rowData.value.deviceTypeName.includes('智能警示桩'))) { + // || rowData.value.deviceTypeName.includes('智能警示桩') + if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵'))) { return } diff --git a/src/views/home/pipeline/components/gasDataDialog.vue b/src/views/home/pipeline/components/gasDataDialog.vue index 47d589a..0f85df1 100644 --- a/src/views/home/pipeline/components/gasDataDialog.vue +++ b/src/views/home/pipeline/components/gasDataDialog.vue @@ -114,8 +114,8 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -145,13 +145,13 @@ text: '右断线报警', value: 'rightOffLineAlarm', align: 'center', - width: '95' + width: '' }, { text: '右振动报警', value: 'rightVibrateAlarm', align: 'center', - width: '95' + width: '' }, { text: '采集时间', value: 'uptime', align: 'center', width: '180' }, { text: '上传时间', value: 'logtime', align: 'center', width: '180' } @@ -461,8 +461,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -473,7 +473,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/src/components/HKplayer/index.vue b/src/components/HKplayer/index.vue index cb6c5be..f2f20c5 100644 --- a/src/components/HKplayer/index.vue +++ b/src/components/HKplayer/index.vue @@ -196,6 +196,11 @@ const stopAllPlay = () => { player.value.JS_StopRealPlayAll().then(() => { console.info('JS_StopRealPlayAll success') + if (document.getElementById("img")) { + document.querySelectorAll('[id="img"]').forEach(element => { + element.remove(); + }) + } }) } const playerFun = { diff --git a/src/router/modules/pc.ts b/src/router/modules/pc.ts index 1c5e45b..a69940b 100644 --- a/src/router/modules/pc.ts +++ b/src/router/modules/pc.ts @@ -674,7 +674,7 @@ icon: 'ep:key', sidebar: true, breadcrumb: true, - activeMenu: '/device/tool', + activeMenu: '/operation/tool', auth: '/device/tool', }, }, diff --git a/src/views/home/alarm/current/components/gasDataDialog.vue b/src/views/home/alarm/current/components/gasDataDialog.vue index c022cf5..f688528 100644 --- a/src/views/home/alarm/current/components/gasDataDialog.vue +++ b/src/views/home/alarm/current/components/gasDataDialog.vue @@ -121,8 +121,8 @@ // DATA_PAN_GAS("场站监测云台", "data_pan_gas", "DEVICE_CODE,,logtime", "ID,LEDGER_NUMBER,DEVICE_CODE设备编号,CONCENTRATION浓度,LOGTIME,DIRCETION水平位置,PITCH垂直位置", "LOGTIME采集时间"); // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -332,14 +332,14 @@ } } else if (listQuery.value.typeName === '智能警示桩') { data.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') - } + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') + // } ] } else if (listQuery.value.typeName === '场站监测云台') { data.value = [ @@ -517,8 +517,8 @@ columns3: { list: list.value.map((item:any, index:number) => ({ '1index': index+ 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -529,7 +529,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index:number) => ({ @@ -579,7 +580,7 @@ 搜索 - + 切换视图 diff --git a/src/views/home/device/device/components/dataSearch.vue b/src/views/home/device/device/components/dataSearch.vue index 1ab7842..1f71bca 100644 --- a/src/views/home/device/device/components/dataSearch.vue +++ b/src/views/home/device/device/components/dataSearch.vue @@ -111,8 +111,8 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', value: 'pipeInclineAlarm', align: 'center', width: '95' }, { text: '桩拆卸报警', value: 'pipeBreakAlarm', align: 'center', width: '95' }, @@ -367,16 +367,16 @@ } else if (listQuery.value.typeName === '智能警示桩') { chartData.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, ] } else if (listQuery.value.typeName.includes('云台')) { @@ -503,8 +503,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -515,7 +515,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ @@ -546,7 +547,7 @@
@@ -831,50 +859,82 @@ - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + diff --git a/src/views/home/ledger/location/components/addDialog.vue b/src/views/home/ledger/location/components/addDialog.vue index 67cc516..74c995a 100644 --- a/src/views/home/ledger/location/components/addDialog.vue +++ b/src/views/home/ledger/location/components/addDialog.vue @@ -44,6 +44,7 @@ // pipeCode: [{ required: true, message: '关联管线不能为空', trigger: ['blur', 'change'] }], // ledgerName: [{ required: true, message: '闸井名称不能为空', trigger: ['blur', 'change'] }], locationCategory: [{ required: true, message: '位置类别不能为空', trigger: ['blur', 'change'] }], + propertyPhone: [{ required: false, pattern: /^1[34578]\d{9}$/, message: '请输入正确的手机号', trigger: ['blur', 'change'] }], } // 前端校验规则 const mapRef = ref() diff --git a/src/views/home/pipeline/components/detailInfoDialog.vue b/src/views/home/pipeline/components/detailInfoDialog.vue index 12b2e16..ce23322 100644 --- a/src/views/home/pipeline/components/detailInfoDialog.vue +++ b/src/views/home/pipeline/components/detailInfoDialog.vue @@ -152,13 +152,18 @@ gasData.value = [] if ( rowData.value.deviceTypeName.includes('燃气智能监测终端') || - rowData.value.deviceTypeName.includes('管网哨兵') || - rowData.value.deviceTypeName.includes('智能警示桩') + rowData.value.deviceTypeName.includes('管网哨兵') ) { + // rowData.value.deviceTypeName.includes('智能警示桩') // if (descriptionsList.value[descriptionsList.value.length - 1].text === '燃气浓度') { return } descriptionsList.value = descriptionsList.value.filter( (item: any) => item.text !== '燃气浓度' ) + descriptionsList.value.push( { + text: '设备运行状态', + value: 'runStatus', + align: 'center' + }) descriptionsList.value.push({ text: '燃气浓度', value: 'manageType', @@ -166,7 +171,7 @@ }) } else { descriptionsList.value = descriptionsList.value.filter( - (item: any) => item.text !== '燃气浓度' + (item: any) => item.text !== '燃气浓度' && item.text !== '设备运行状态' ) } // console.log(e.info.row, 'e.info.row') @@ -177,7 +182,8 @@ .then(res => { loading.value = false detailInfo.value = res.data - if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵') || rowData.value.deviceTypeName.includes('智能警示桩'))) { + // || rowData.value.deviceTypeName.includes('智能警示桩') + if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵'))) { return } diff --git a/src/views/home/pipeline/components/gasDataDialog.vue b/src/views/home/pipeline/components/gasDataDialog.vue index 47d589a..0f85df1 100644 --- a/src/views/home/pipeline/components/gasDataDialog.vue +++ b/src/views/home/pipeline/components/gasDataDialog.vue @@ -114,8 +114,8 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -145,13 +145,13 @@ text: '右断线报警', value: 'rightOffLineAlarm', align: 'center', - width: '95' + width: '' }, { text: '右振动报警', value: 'rightVibrateAlarm', align: 'center', - width: '95' + width: '' }, { text: '采集时间', value: 'uptime', align: 'center', width: '180' }, { text: '上传时间', value: 'logtime', align: 'center', width: '180' } @@ -461,8 +461,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -473,7 +473,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ diff --git a/src/views/home/pipeline/components/monitorDataList.vue b/src/views/home/pipeline/components/monitorDataList.vue index 4eb8c05..dbcf2f1 100644 --- a/src/views/home/pipeline/components/monitorDataList.vue +++ b/src/views/home/pipeline/components/monitorDataList.vue @@ -69,15 +69,15 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', value: 'pipeInclineAlarm', align: 'center', width: '95' }, { text: '桩拆卸报警', value: 'pipeBreakAlarm', align: 'center', width: '95' }, { text: '左断线报警', value: 'leftOffLineAlarm', align: 'center', width: '95' }, { text: '左振动报警', value: 'leftVibrateAlarm', align: 'center', width: '95' }, - { text: '右断线报警', value: 'rightOffLineAlarm', align: 'center', width: '95' }, - { text: '右振动报警', value: 'rightVibrateAlarm', align: 'center', width: '95' }, + { text: '右断线报警', value: 'rightOffLineAlarm', align: 'center', width: '' }, + { text: '右振动报警', value: 'rightVibrateAlarm', align: 'center', width: '' }, { text: '采集时间', value: 'uptime', align: 'center' }, { text: '上传时间', value: 'logtime', align: 'center' }, ]) @@ -442,8 +442,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -454,7 +454,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ diff --git a/public/config/config.json b/public/config/config.json index 1053b40..22f4711 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -1,6 +1,6 @@ { "title":"感知数据汇聚平台", - "baseUrl": "http://10.30.7.26:20705", + "baseUrl": "http://111.198.10.15:11643", "securityJsCode": "56bf9671d4b3517d294caec4751889a1", "JsKey": "40849e82b4e33f5255b17372520c954d", "xuntengMap": "http://10.30.7.26:20705/getMap?mapPath=http://172.17.206.70:20198/_allLayer/tile", diff --git a/src/components.d.ts b/src/components.d.ts index 003b04b..e1cc6fe 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,21 @@ SystemInfo: typeof import('./components/SystemInfo/index.vue')['default'] TableContainer: typeof import('./components/TableContainer/index.vue')['default'] Trend: typeof import('./components/Trend/index.vue')['default'] + VanBackTop: typeof import('vant/es')['BackTop'] + VanCell: typeof import('vant/es')['Cell'] + VanCellGroup: typeof import('vant/es')['CellGroup'] + VanDatePicker: typeof import('vant/es')['DatePicker'] + VanDialog: typeof import('vant/es')['Dialog'] + VanEmpty: typeof import('vant/es')['Empty'] + VanField: typeof import('vant/es')['Field'] + VanForm: typeof import('vant/es')['Form'] + VanIcon: typeof import('vant/es')['Icon'] + VanPicker: typeof import('vant/es')['Picker'] + VanPickerGroup: typeof import('vant/es')['PickerGroup'] + VanPopup: typeof import('vant/es')['Popup'] + VanRadio: typeof import('vant/es')['Radio'] + VanRadioGroup: typeof import('vant/es')['RadioGroup'] + VanTextEllipsis: typeof import('vant/es')['TextEllipsis'] VirtualTable: typeof import('./components/VirtualTable/index.vue')['default'] } } diff --git a/src/components/HKplayer/index.vue b/src/components/HKplayer/index.vue index cb6c5be..f2f20c5 100644 --- a/src/components/HKplayer/index.vue +++ b/src/components/HKplayer/index.vue @@ -196,6 +196,11 @@ const stopAllPlay = () => { player.value.JS_StopRealPlayAll().then(() => { console.info('JS_StopRealPlayAll success') + if (document.getElementById("img")) { + document.querySelectorAll('[id="img"]').forEach(element => { + element.remove(); + }) + } }) } const playerFun = { diff --git a/src/router/modules/pc.ts b/src/router/modules/pc.ts index 1c5e45b..a69940b 100644 --- a/src/router/modules/pc.ts +++ b/src/router/modules/pc.ts @@ -674,7 +674,7 @@ icon: 'ep:key', sidebar: true, breadcrumb: true, - activeMenu: '/device/tool', + activeMenu: '/operation/tool', auth: '/device/tool', }, }, diff --git a/src/views/home/alarm/current/components/gasDataDialog.vue b/src/views/home/alarm/current/components/gasDataDialog.vue index c022cf5..f688528 100644 --- a/src/views/home/alarm/current/components/gasDataDialog.vue +++ b/src/views/home/alarm/current/components/gasDataDialog.vue @@ -121,8 +121,8 @@ // DATA_PAN_GAS("场站监测云台", "data_pan_gas", "DEVICE_CODE,,logtime", "ID,LEDGER_NUMBER,DEVICE_CODE设备编号,CONCENTRATION浓度,LOGTIME,DIRCETION水平位置,PITCH垂直位置", "LOGTIME采集时间"); // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -332,14 +332,14 @@ } } else if (listQuery.value.typeName === '智能警示桩') { data.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') - } + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0') + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0') + // } ] } else if (listQuery.value.typeName === '场站监测云台') { data.value = [ @@ -517,8 +517,8 @@ columns3: { list: list.value.map((item:any, index:number) => ({ '1index': index+ 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -529,7 +529,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index:number) => ({ @@ -579,7 +580,7 @@ 搜索 - + 切换视图 diff --git a/src/views/home/device/device/components/dataSearch.vue b/src/views/home/device/device/components/dataSearch.vue index 1ab7842..1f71bca 100644 --- a/src/views/home/device/device/components/dataSearch.vue +++ b/src/views/home/device/device/components/dataSearch.vue @@ -111,8 +111,8 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', value: 'pipeInclineAlarm', align: 'center', width: '95' }, { text: '桩拆卸报警', value: 'pipeBreakAlarm', align: 'center', width: '95' }, @@ -367,16 +367,16 @@ } else if (listQuery.value.typeName === '智能警示桩') { chartData.value = [ - { - name: '左侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, - { - name: '右侧甲烷值', - data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), - symbol: list.value.length > 1 ? 'none' : 'circle', - }, + // { + // name: '左侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.leftGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, + // { + // name: '右侧甲烷值', + // data: JSON.parse(JSON.stringify(list.value)).slice().reverse().map(item => item.rightGas || '0'), + // symbol: list.value.length > 1 ? 'none' : 'circle', + // }, ] } else if (listQuery.value.typeName.includes('云台')) { @@ -503,8 +503,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -515,7 +515,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ @@ -546,7 +547,7 @@
@@ -831,50 +859,82 @@ - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + diff --git a/src/views/home/ledger/location/components/addDialog.vue b/src/views/home/ledger/location/components/addDialog.vue index 67cc516..74c995a 100644 --- a/src/views/home/ledger/location/components/addDialog.vue +++ b/src/views/home/ledger/location/components/addDialog.vue @@ -44,6 +44,7 @@ // pipeCode: [{ required: true, message: '关联管线不能为空', trigger: ['blur', 'change'] }], // ledgerName: [{ required: true, message: '闸井名称不能为空', trigger: ['blur', 'change'] }], locationCategory: [{ required: true, message: '位置类别不能为空', trigger: ['blur', 'change'] }], + propertyPhone: [{ required: false, pattern: /^1[34578]\d{9}$/, message: '请输入正确的手机号', trigger: ['blur', 'change'] }], } // 前端校验规则 const mapRef = ref() diff --git a/src/views/home/pipeline/components/detailInfoDialog.vue b/src/views/home/pipeline/components/detailInfoDialog.vue index 12b2e16..ce23322 100644 --- a/src/views/home/pipeline/components/detailInfoDialog.vue +++ b/src/views/home/pipeline/components/detailInfoDialog.vue @@ -152,13 +152,18 @@ gasData.value = [] if ( rowData.value.deviceTypeName.includes('燃气智能监测终端') || - rowData.value.deviceTypeName.includes('管网哨兵') || - rowData.value.deviceTypeName.includes('智能警示桩') + rowData.value.deviceTypeName.includes('管网哨兵') ) { + // rowData.value.deviceTypeName.includes('智能警示桩') // if (descriptionsList.value[descriptionsList.value.length - 1].text === '燃气浓度') { return } descriptionsList.value = descriptionsList.value.filter( (item: any) => item.text !== '燃气浓度' ) + descriptionsList.value.push( { + text: '设备运行状态', + value: 'runStatus', + align: 'center' + }) descriptionsList.value.push({ text: '燃气浓度', value: 'manageType', @@ -166,7 +171,7 @@ }) } else { descriptionsList.value = descriptionsList.value.filter( - (item: any) => item.text !== '燃气浓度' + (item: any) => item.text !== '燃气浓度' && item.text !== '设备运行状态' ) } // console.log(e.info.row, 'e.info.row') @@ -177,7 +182,8 @@ .then(res => { loading.value = false detailInfo.value = res.data - if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵') || rowData.value.deviceTypeName.includes('智能警示桩'))) { + // || rowData.value.deviceTypeName.includes('智能警示桩') + if (!(rowData.value.deviceTypeName.includes('燃气智能监测终端') || rowData.value.deviceTypeName.includes('管网哨兵'))) { return } diff --git a/src/views/home/pipeline/components/gasDataDialog.vue b/src/views/home/pipeline/components/gasDataDialog.vue index 47d589a..0f85df1 100644 --- a/src/views/home/pipeline/components/gasDataDialog.vue +++ b/src/views/home/pipeline/components/gasDataDialog.vue @@ -114,8 +114,8 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center', width: '95' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center', width: '95' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', @@ -145,13 +145,13 @@ text: '右断线报警', value: 'rightOffLineAlarm', align: 'center', - width: '95' + width: '' }, { text: '右振动报警', value: 'rightVibrateAlarm', align: 'center', - width: '95' + width: '' }, { text: '采集时间', value: 'uptime', align: 'center', width: '180' }, { text: '上传时间', value: 'logtime', align: 'center', width: '180' } @@ -461,8 +461,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -473,7 +473,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ diff --git a/src/views/home/pipeline/components/monitorDataList.vue b/src/views/home/pipeline/components/monitorDataList.vue index 4eb8c05..dbcf2f1 100644 --- a/src/views/home/pipeline/components/monitorDataList.vue +++ b/src/views/home/pipeline/components/monitorDataList.vue @@ -69,15 +69,15 @@ ]) // 智能警示桩 const columns3 = ref([ - { text: '左侧甲烷值', value: 'leftGas', align: 'center' }, - { text: '右侧甲烷值', value: 'rightGas', align: 'center' }, + // { text: '左侧甲烷值', value: 'leftGas', align: 'center' }, + // { text: '右侧甲烷值', value: 'rightGas', align: 'center' }, { text: '电池电压(V)', value: 'vbat', align: 'center', width: '100' }, { text: '桩倾斜报警', value: 'pipeInclineAlarm', align: 'center', width: '95' }, { text: '桩拆卸报警', value: 'pipeBreakAlarm', align: 'center', width: '95' }, { text: '左断线报警', value: 'leftOffLineAlarm', align: 'center', width: '95' }, { text: '左振动报警', value: 'leftVibrateAlarm', align: 'center', width: '95' }, - { text: '右断线报警', value: 'rightOffLineAlarm', align: 'center', width: '95' }, - { text: '右振动报警', value: 'rightVibrateAlarm', align: 'center', width: '95' }, + { text: '右断线报警', value: 'rightOffLineAlarm', align: 'center', width: '' }, + { text: '右振动报警', value: 'rightVibrateAlarm', align: 'center', width: '' }, { text: '采集时间', value: 'uptime', align: 'center' }, { text: '上传时间', value: 'logtime', align: 'center' }, ]) @@ -442,8 +442,8 @@ columns3: { list: list.value.map((item: any, index: number) => ({ '1index': index + 1, - '2leftGas': item.leftGas, - '3rightGas': item.rightGas, + // '2leftGas': item.leftGas, + // '3rightGas': item.rightGas, '4vbat': item.vbat, '5pipeInclineAlarm': item.pipeInclineAlarm, '6pipeBreakAlarm': item.pipeBreakAlarm, @@ -454,7 +454,8 @@ '11uptime': item.uptime, '12logtime': item.logtime })), - columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + // columns: ['序号', '左侧甲烷值', '右侧甲烷值', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] + columns: ['序号', '电池电压(V)', '桩倾斜报警', '桩拆卸报警', '左断线报警', '左振动报警', '右断线报警', '右振动报警', '采集时间', '上传时间'] }, columns4: { list: list.value.map((item: any, index: number) => ({ diff --git a/src/views/home/station/station/components/detailInfoDialog.vue b/src/views/home/station/station/components/detailInfoDialog.vue index c98a38f..a6c7d24 100644 --- a/src/views/home/station/station/components/detailInfoDialog.vue +++ b/src/views/home/station/station/components/detailInfoDialog.vue @@ -8,7 +8,11 @@ import player from '@/components/HKplayer/index.vue' import { ElMessage } from 'element-plus' import { getDeviceById } from '@/api/home/well/well' -import { getDeviceID, getVideoUrl, getVideoBackUrl } from '@/api/home/station/video' +import { + getDeviceID, + getVideoUrl, + getVideoBackUrl +} from '@/api/home/station/video' import dayjs from 'dayjs' const dialogFormVisible = ref(false) const $route = useRoute() @@ -20,7 +24,7 @@ ledgerName: '', // 场站名称 lngGaode: '', latGaode: '', - tagNumber: '', + tagNumber: '' }) const resizePage = () => { setTimeout(() => { @@ -31,7 +35,7 @@ const deviceList = ref([]) const currentVideo = ref('') -const videoType = ref('real') // 视频类型 实时real和回放playback +const videoType = ref('real') // 视频类型 实时real和回放playback // 详细信息 const detailInfo = ref<{ [key: string]: string }>({}) // 描述列表数据 @@ -39,39 +43,39 @@ { text: '管理单位', value: 'deptName', - align: 'center', + align: 'center' }, { text: '场站状态', value: 'onStateName', - align: 'center', + align: 'center' }, { text: '详细位置', value: 'position', - align: 'center', + align: 'center' }, { text: '负责人', value: 'personName', - align: 'center', + align: 'center' }, { text: '标签', value: 'marker', - align: 'center', + align: 'center' }, { text: '监控状态', value: 'monitorStateName', - align: 'center', + align: 'center' }, { text: '', value: '', - align: 'center', - }, + align: 'center' + } // { // text: '当前浓度', // value: '', @@ -125,7 +129,6 @@ // value: 'latGaode', // align: 'center', // }, - ]) const currentDeviceId = ref('') const playerVideo = (devcode: string) => { @@ -134,31 +137,35 @@ return } // unref(playRef).playerFun.createPlayer('ws://172.17.240.101:559/media?version=0.1&ciphersuites=0&sessionID', 1) - getDeviceID(devcode).then(res => { - const deviceId = res.data - if (!deviceId) { - ElMessage('设备ID为空,无法获取视频') - return - } - currentDeviceId.value = deviceId - getVideoUrl({ - deviceId: deviceId, - streamType: '0' - }).then(res => { - const videoUrl = res.data - if (!videoUrl) { - ElMessage('视频地址为空,无法播放') + getDeviceID(devcode) + .then(res => { + const deviceId = res.data + if (!deviceId) { + ElMessage('设备ID为空,无法获取视频') return } - // 播放视频 - unref(playRef).playerFun.createPlayer(videoUrl, 1) - }).catch(() => { - ElMessage.warning('获取设备视频失败') + currentDeviceId.value = deviceId + getVideoUrl({ + deviceId: deviceId, + streamType: '0' + }) + .then(res => { + const videoUrl = res.data + if (!videoUrl) { + ElMessage('视频地址为空,无法播放') + return + } + // 播放视频 + unref(playRef).playerFun.createPlayer(videoUrl, 1) + }) + .catch(() => { + ElMessage.warning('获取设备视频失败') + }) }) - }).catch(() => { - currentDeviceId.value = '' - ElMessage.warning('获取设备ID失败') - }) + .catch(() => { + currentDeviceId.value = '' + ElMessage.warning('获取设备ID失败') + }) } // 初始化 const playRef = ref() @@ -175,32 +182,35 @@ resizePage() // 获取详细信息 loading.value = true - getWellDetail(e.info.id).then((res) => { - detailInfo.value = res.data - loading.value = false - if (res.data.personName && res.data.telephone) { - detailInfo.value.personName = `${res.data.personName}(${res.data.telephone})` - } - // 处理监控状态 - if (detailInfo.value.monitorStateName === '离线' && !$route.path.includes('station')) { - detailInfo.value.monitorStateName = '故障(离线)' - } - getDeviceById(e.info.id).then(res => { - deviceList.value = res.data.map((item: any) => ({ - name: `${item.devcode}`, - devcode: item.devcode, - })) - if (deviceList.value.length) { - currentVideo.value = deviceList.value[0].name - // 默认播放第一路视频 (先获取设备id再根据id拿视频) - playerVideo(deviceList.value[0].devcode) + getWellDetail(e.info.id) + .then(res => { + detailInfo.value = res.data + loading.value = false + if (res.data.personName && res.data.telephone) { + detailInfo.value.personName = `${res.data.personName}(${res.data.telephone})` } + // 处理监控状态 + if ( + detailInfo.value.monitorStateName === '离线' && + !$route.path.includes('station') + ) { + detailInfo.value.monitorStateName = '故障(离线)' + } + getDeviceById(e.info.id).then(res => { + deviceList.value = res.data.map((item: any) => ({ + name: `${item.devcode}`, + devcode: item.devcode + })) + if (deviceList.value.length) { + currentVideo.value = deviceList.value[0].name + // 默认播放第一路视频 (先获取设备id再根据id拿视频) + playerVideo(deviceList.value[0].devcode) + } + }) }) - - - }).catch(() => { - loading.value = false - }) + .catch(() => { + loading.value = false + }) } // 关闭 @@ -213,8 +223,8 @@ $router.push({ path: '/station/detail', query: { - id: detailInfo.value.id, - }, + id: detailInfo.value.id + } }) close() } @@ -246,104 +256,267 @@ getVideoUrl({ deviceId: currentDeviceId.value, streamType: '0' - }).then(res => { - const videoUrl = res.data - if (!videoUrl) { - ElMessage('视频地址为空,无法播放') - return - } - - // 播放视频 - unref(playRef).playerFun.createPlayer(videoUrl, 1) - }).catch(() => { - ElMessage.warning('获取设备视频失败') }) - } - else if (type === 'playback') { + .then(res => { + const videoUrl = res.data + if (!videoUrl) { + ElMessage('视频地址为空,无法播放') + unref(playRef).playerFun.stopAllPlay() + return + } + + // 播放视频 + unref(playRef).playerFun.createPlayer(videoUrl, 1) + }) + .catch(() => { + ElMessage.warning('获取设备视频失败') + unref(playRef).playerFun.stopAllPlay() + }) + } else if (type === 'playback') { unref(playRef).playerFun.stopAllPlay() - const startTime = dayjs().subtract(0.5, 'hour').format('YYYY-MM-DD HH:mm:ss') - const endTime = dayjs().format('YYYY-MM-DD HH:mm:ss') + const startTime = dayjs(getFullTime()).subtract(1, 'minutes').format('YYYY-MM-DD HH:mm:ss') + const endTime = dayjs(getFullTime()).format('YYYY-MM-DD HH:mm:ss') getVideoBackUrl({ deviceId: currentDeviceId.value, beginDate: startTime, endDate: endTime - }).then(res => { - if (!res.data) { - ElMessage.warning('回放地址为空') - return - } - // 回放时间格式要转为 format('YYYY-MM-DDTHH:mm:ss.SSSZ') - unref(playRef).playerFun.replayFun({ url: res.data, startTime: dayjs(startTime).format('YYYY-MM-DDTHH:mm:ss.SSSZ'), endTime: dayjs(endTime).format('YYYY-MM-DDTHH:mm:ss.SSSZ') }) - }).catch(() => { - ElMessage.warning('获取回放地址失败') }) + .then(res => { + if (!res.data) { + ElMessage.warning('回放地址为空') + unref(playRef).playerFun.stopAllPlay() + return + } + // 回放时间格式要转为 format('YYYY-MM-DDTHH:mm:ss.SSSZ') + // const startTime = dayjs(getFullTime()).format('YYYY-MM-DDTHH:mm:ss.SSSZ') + // const endTime = dayjs(getFullTime()).add(2, 'minutes').format('YYYY-MM-DDTHH:mm:ss.SSSZ') + unref(playRef).playerFun.replayFun({ + url: res.data, + startTime: dayjs(getFullTime()).subtract(1, 'minutes').format('YYYY-MM-DDTHH:mm:ss.SSSZ'), + endTime: dayjs(getFullTime()).format('YYYY-MM-DDTHH:mm:ss.SSSZ') + }) + }) + .catch(() => { + ElMessage.warning('获取回放地址失败') + unref(playRef).playerFun.stopAllPlay() + }) } } // const url = ref('') // const testVideo = () => { // unref(playRef).playerFun.createPlayer(url.value, 1) // } +// 选中的日期(默认今天) +const selectedDate = ref(new Date().toISOString().split('T')[0]) + +const timeValue = ref(parseTimeToMinutes1(dayjs().subtract(1, 'minutes').format('HH:mm'))) // 默认选中08:00 + +// 重要时间点(只显示这些时间点的刻度) +const importantTimePoints = computed(() => [ + 0, // 00:00 + 240, // 04:00 + 480, // 08:00 + 720, // 12:00 + 960, // 16:00 + 1200, // 20:00 + 1440 // 24:00 +]) + +// 生成时间轴刻度(只显示重要时间点) +const timeMarks = computed(() => { + const marks = {} + importantTimePoints.value.forEach(minute => { + marks[minute] = { + style: { + color: minute === timeValue.value ? '#409eff' : '#666', + fontSize: '12px', + fontWeight: minute === timeValue.value ? 'bold' : 'normal' + }, + label: minute === 1440 ? '24:00' : formatTime(minute) + } + }) + return marks +}) + +// 日期变化时重置时间(默认08:00) +const handleDateChange = date => { + if (date) { + timeValue.value = parseTimeToMinutes1(dayjs().subtract(1, 'minutes').format('HH:mm')) // 重置为08:00 + handleTimeChange() + } +} + +// 将分钟转换为时间格式(如 480分钟 → 08:00) +const formatTime = minute => { + const hours = Math.floor(minute / 60) + const mins = minute % 60 + return `${hours.toString().padStart(2, '0')}:${mins + .toString() + .padStart(2, '0')}` +} +function parseTimeToMinutes1(timeStr) { + // 分割小时和分钟部分(支持 "8:00"、"08:30" 等格式) + const [hoursStr, minutesStr] = timeStr.split(':'); + + // 转换为数字并计算总分钟数 + const hours = parseInt(hoursStr, 10); + const minutes = parseInt(minutesStr || 0, 10); // 若没有分钟部分,默认为0 + + // 验证输入有效性 + if (isNaN(hours) || hours < 0 || hours > 24) { + throw new Error('小时数必须在0-24之间'); + } + if (isNaN(minutes) || minutes < 0 || minutes > 59) { + throw new Error('分钟数必须在0-59之间'); + } + + // 计算总分钟数(24:00 视为 1440 分钟) + return hours === 24 ? 1440 : hours * 60 + minutes; +}; +// 对外暴露选中的完整时间(供父组件使用) +const getFullTime = () => { + const baseDate = new Date(selectedDate.value) + baseDate.setHours(Math.floor(timeValue.value / 60), timeValue.value % 60, 0) + return baseDate +} +const handleTimeChange = () => { + console.log(getFullTime()) + handler('playback') +} + +const formatTooltip = value => { + return formatTime(value) // 将分钟值转换为 HH:MM 格式 +}