Browse Source

太阳能板,修改为离网光伏供电

develop
王兴琳 3 weeks ago
parent
commit
b0319d545b
  1. 18
      ruoyi-ui/codehelp_files.md
  2. 2
      ruoyi-ui/src/common/menuData.js
  3. 34
      ruoyi-ui/src/views/JiHeExpressway/components/Decorations/bg-2.vue
  4. 35
      ruoyi-ui/src/views/JiHeExpressway/components/HeaderMenu/WarningList.vue
  5. 0
      ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/离网光伏供电.svg
  6. 0
      ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/离网光伏供电_active.svg
  7. 0
      ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/离网光伏供电_fault.svg
  8. 0
      ruoyi-ui/src/views/JiHeExpressway/images/layerb/路测设备/离网光伏供电_active.svg
  9. 0
      ruoyi-ui/src/views/JiHeExpressway/images/layerb/路测设备/离网光伏供电_fault.svg
  10. 6
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/ConfluenceArea/index.vue
  11. 6
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SolarEnergy/index.vue
  12. 8
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
  13. 10
      ruoyi-ui/src/views/JiHeExpressway/pages/control/device/record/index.vue
  14. 34
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/analysis/index.vue
  15. 4
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/statisticalAnalysis/analysis/components/deviceSummary/index.vue
  16. 10
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/statisticalAnalysis/query/data.js
  17. 39
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/solar/index.vue
  18. 2
      ruoyi-ui/src/views/JiHeExpressway/utils/enum.js

18
ruoyi-ui/codehelp_files.md

@ -269,7 +269,7 @@
│ │ UPS.png │ │ UPS.png
│ │ view.png │ │ view.png
│ │ 一类交通量.png │ │ 一类交通量.png
│ │ 太阳能板.png │ │ 离网光伏供电.png
│ │ 扫码报警B.png │ │ 扫码报警B.png
│ │ 护栏碰撞预警系统.png │ │ 护栏碰撞预警系统.png
│ │ 护栏碰撞预警系统B.png │ │ 护栏碰撞预警系统B.png
@ -453,9 +453,9 @@
│ │ │ 合流区.svg │ │ │ 合流区.svg
│ │ │ 合流区_active.svg │ │ │ 合流区_active.svg
│ │ │ 合流区_fault.svg │ │ │ 合流区_fault.svg
│ │ │ 太阳能板.svg │ │ │ 离网光伏供电.svg
│ │ │ 太阳能板_active.svg │ │ │ 离网光伏供电_active.svg
│ │ │ 太阳能板_fault.svg │ │ │ 离网光伏供电_fault.svg
│ │ │ 情报板.svg │ │ │ 情报板.svg
│ │ │ 情报板_active.svg │ │ │ 情报板_active.svg
│ │ │ 情报板_fault.svg │ │ │ 情报板_fault.svg
@ -545,8 +545,8 @@
│ │ │ 交调_fault.svg │ │ │ 交调_fault.svg
│ │ │ 合流区_active.svg │ │ │ 合流区_active.svg
│ │ │ 合流区_fault.svg │ │ │ 合流区_fault.svg
│ │ │ 太阳能板_active.svg │ │ │ 离网光伏供电_active.svg
│ │ │ 太阳能板_fault.svg │ │ │ 离网光伏供电_fault.svg
│ │ │ 情报板_active.svg │ │ │ 情报板_active.svg
│ │ │ 情报板_fault.svg │ │ │ 情报板_fault.svg
│ │ │ 护栏碰撞_active.svg │ │ │ 护栏碰撞_active.svg
@ -639,7 +639,7 @@
│ │ 大学城收费站.jpg │ │ 大学城收费站.jpg
│ │ 孝里收费站.jpg │ │ 孝里收费站.jpg
│ │ │ │
│ ├─solar //太阳能板报表图 │ ├─solar //离网光伏供电报表图
│ │ CO2.png │ │ CO2.png
│ │ coal.png │ │ coal.png
│ │ error.png │ │ error.png
@ -1289,7 +1289,7 @@
│ │ │ │ DeviceParams.vue │ │ │ │ DeviceParams.vue
│ │ │ │ DeviceParamsMulti.vue │ │ │ │ DeviceParamsMulti.vue
│ │ │ │ │ │ │ │
│ │ │ ├─SolarEnergy // 太阳能板 │ │ │ ├─SolarEnergy // 离网光伏供电
│ │ │ │ │ data.js │ │ │ │ │ data.js
│ │ │ │ │ index.vue │ │ │ │ │ index.vue
│ │ │ │ │ │ │ │ │ │
@ -1526,7 +1526,7 @@
│ │ │ t17.svg │ │ │ t17.svg
│ │ │ t18.svg │ │ │ t18.svg
│ │ │ │ │ │
│ │ └─solar // 太阳能板管理 │ │ └─solar // 离网光伏供电管理
│ │ index.vue │ │ index.vue
│ │ index_v1.vue │ │ index_v1.vue
│ │ │ │

2
ruoyi-ui/src/common/menuData.js

@ -195,7 +195,7 @@ export default [
component: "maintenanceOperations/smart/abnormal/index.vue", component: "maintenanceOperations/smart/abnormal/index.vue",
}, },
{ {
title: "太阳能板", title: "离网光伏供电",
name: "solar", name: "solar",
path: "/maintain/solar", path: "/maintain/solar",
component: "maintenanceOperations/solar/index.vue", component: "maintenanceOperations/solar/index.vue",

34
ruoyi-ui/src/views/JiHeExpressway/components/Decorations/bg-2.vue

@ -1,6 +1,6 @@
<template> <template>
<div class='BG-02' :style="{ '--width': width, '--lang-width': langWidth }"> <div class='BG-02' :style="{ '--width': width, '--lang-width': langWidth }">
<BackgroundClip ref="BackgroundClipRef" class="bg" :clipPath="getClipPath" <BackgroundClip ref="BackgroundClipRef" class="bg" :clipPath="getClipPath"
:borderPath="getBorderPath" :borderPath="getBorderPath"
bgColor="linear-gradient(180deg, #152E3CBB 0%, #163A45DD 100%)" bgColor="linear-gradient(180deg, #152E3CBB 0%, #163A45DD 100%)"
borderColor="linear-gradient(180deg, rgba(40, 144, 167, 1), rgba(40, 144, 167, 0.38), rgba(40, 144, 167, 1))"> borderColor="linear-gradient(180deg, rgba(40, 144, 167, 1), rgba(40, 144, 167, 0.38), rgba(40, 144, 167, 1))">
@ -43,14 +43,14 @@ export default {
computed: { computed: {
getClipPath() { getClipPath() {
return `polygon( return `polygon(
calc(100% - ${this.langWidth} - ${this.width} * 1.5) 0, calc(100% - ${this.langWidth} - ${this.width} * 1.5) 0,
calc(100% - ${this.langWidth}) calc(${this.width} * 1.5), calc(100% - ${this.langWidth}) calc(${this.width} * 1.5),
calc(100% - ${this.width}) calc(${this.width} * 1.5), calc(100% - ${this.width}) calc(${this.width} * 1.5),
100% calc(${this.width} * 2.5), 100% calc(${this.width} * 2.5),
100% calc(100% - ${this.width}), 100% calc(100% - ${this.width}),
calc(100% - ${this.width}) 100%, calc(100% - ${this.width}) 100%,
${this.width} 100%, 0 calc(100% - ${this.width}), ${this.width} 100%, 0 calc(100% - ${this.width}),
0 ${this.width}, 0 ${this.width},
${this.width} 0 ${this.width} 0
)` )`
}, },
@ -59,14 +59,14 @@ export default {
let deltaY = deltaX; let deltaY = deltaX;
return `polygon( return `polygon(
30% 0, 30% 0,
calc(100% - ${this.langWidth} - ${this.width} * 1.5) 0, calc(100% - ${this.langWidth} - ${this.width} * 1.5) 0,
calc(100% - ${this.langWidth}) calc(${this.width} * 1.5), calc(100% - ${this.langWidth}) calc(${this.width} * 1.5),
calc(100% - ${this.width}) calc(${this.width}), calc(100% - ${this.width}) calc(${this.width}),
100% calc(${this.width} * 2.5), 100% calc(${this.width} * 2.5),
100% calc(100% - ${this.width}), 100% calc(100% - ${this.width}),
calc(100% - ${this.width}) 100%, calc(100% - ${this.width}) 100%,
${this.width} 100%, 0 calc(100% - ${this.width}), ${this.width} 100%, 0 calc(100% - ${this.width}),
0 ${this.width}, 0 ${this.width},
${this.width} 0, ${this.width} 0,
31% 0, 31% 0,

35
ruoyi-ui/src/views/JiHeExpressway/components/HeaderMenu/WarningList.vue

@ -12,13 +12,13 @@
<ElTableColumn prop="remark" width="550"> <ElTableColumn prop="remark" width="550">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tooltip class="item" effect="dark" :content="scope.row.remark" placement="top-start"> <el-tooltip class="item" effect="dark" :content="scope.row.remark" placement="top-start">
<div class="markPanel"> <div class="markPanel">
<div class="leftColumn"> <div class="leftColumn">
<div class="device-icon" :style="{ backgroundImage: `url(${require(`@screen/images/event/${scope.row.icon? scope.row.icon : '交通拥堵'}.svg`)})` }" /> <div class="device-icon" :style="{ backgroundImage: `url(${require(`@screen/images/event/${scope.row.icon? scope.row.icon : '交通拥堵'}.svg`)})` }" />
<p>{{ activeTab == 'first' ? WarningType[scope.row.warningType] : scope.row.stringEventType }}</p> <p>{{ activeTab == 'first' ? WarningType[scope.row.warningType] : scope.row.stringEventType }}</p>
</div> </div>
<p class="rightRemark"> <p class="rightRemark">
{{ scope.row.remark }} {{ scope.row.remark }}
</p> </p>
</div> </div>
@ -77,7 +77,7 @@ export default {
pageSize: 10, pageSize: 10,
pageNum: 1, pageNum: 1,
}, },
dialogWarningVisible: false, dialogWarningVisible: false,
@ -93,11 +93,11 @@ export default {
if (checkPermi(["home:notice:event"])) { if (checkPermi(["home:notice:event"])) {
this.activeTab = "four"; this.activeTab = "four";
} else if(checkPermi(["home:notice:warningEvent"])){ } else if(checkPermi(["home:notice:warningEvent"])){
this.activeTab = "first"; this.activeTab = "first";
} else if(checkPermi(["home:notice:processingEvent"])){ } else if(checkPermi(["home:notice:processingEvent"])){
this.activeTab = "third"; this.activeTab = "third";
} else if(checkPermi(["home:notice:deviceOffline"])){ } else if(checkPermi(["home:notice:deviceOffline"])){
this.activeTab = "fifth"; this.activeTab = "fifth";
} }
// //
this.$root.$on('refresh-event', this.getMainData); this.$root.$on('refresh-event', this.getMainData);
@ -124,7 +124,7 @@ export default {
} }
if(this.activeTab === 'four'){ if(this.activeTab === 'four'){
if(row.warningType === '1'){ if(row.warningType === '1'){
this.dialogWarningVisible = true; this.dialogWarningVisible = true;
this.$refs.refDigWarn.bind(row.id,row.remark) this.$refs.refDigWarn.bind(row.id,row.remark)
} }
@ -133,7 +133,7 @@ export default {
// this.dialogWarningData = mokStakeWarning // this.dialogWarningData = mokStakeWarning
// }, 500); // }, 500);
// return; // return;
} else if (this.activeTab == 'first') { } else if (this.activeTab == 'first') {
this.activeName = '-1' this.activeName = '-1'
} else if(this.activeTab == 'third'){ } else if(this.activeTab == 'third'){
@ -191,7 +191,18 @@ export default {
if (result.code != 200) return; if (result.code != 200) return;
result.rows.forEach(item => { result.rows.forEach(item => {
item.remark = item.warningDescription item.remark = item.warningDescription
if (item.warningType === '1') {
item.stringEventType = '交通流预警';
} else if (item.warningType === '2') {
item.stringEventType = '气象预警';
} else if (item.warningType === '3') {
item.stringEventType = '交通流异常预警';
} else {
item.stringEventType = '未知预警类型'; // warningType
}
/*
item.stringEventType = item.warningType === '1'?'交通流预警':'气象预警'; item.stringEventType = item.warningType === '1'?'交通流预警':'气象预警';
*/
if(item.warningType === '2'){ if(item.warningType === '2'){
item.icon = '气象检测器' item.icon = '气象检测器'
} }
@ -210,7 +221,7 @@ export default {
item.icon = '设备' item.icon = '设备'
item.remark = item.createTime+ ' '+item.stakeMark +' ' +item.deviceName+'发生故障' item.remark = item.createTime+ ' '+item.stakeMark +' ' +item.deviceName+'发生故障'
item.stringEventType = _.find(deviceTypeOptions,{value:parseInt(item.deviceType)}).label item.stringEventType = _.find(deviceTypeOptions,{value:parseInt(item.deviceType)}).label
}) })
this.tableData = result.rows; this.tableData = result.rows;
this.total = result.total; this.total = result.total;
@ -300,7 +311,7 @@ export default {
} }
.rightRemark{ .rightRemark{
flex: 1; flex: 1;
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
} }
@ -309,12 +320,12 @@ export default {
justify-content: center; justify-content: center;
align-items: center; align-items: center;
margin-right: 8px; margin-right: 8px;
border: 1px solid #FF5F5F; border: 1px solid #FF5F5F;
width: 120px; width: 120px;
height: 28px; height: 28px;
p { p {
color: #FF5F5F; color: #FF5F5F;
font-size: 15px; font-size: 13px;
margin-right: 3px; margin-right: 3px;
} }

0
ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/太阳能板.svg → ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/离网光伏供电.svg

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/太阳能板_active.svg → ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/离网光伏供电_active.svg

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

0
ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/太阳能板_fault.svg → ruoyi-ui/src/views/JiHeExpressway/images/layer/路测设备/离网光伏供电_fault.svg

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

0
ruoyi-ui/src/views/JiHeExpressway/images/layerb/路测设备/太阳能板_active.svg → ruoyi-ui/src/views/JiHeExpressway/images/layerb/路测设备/离网光伏供电_active.svg

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

0
ruoyi-ui/src/views/JiHeExpressway/images/layerb/路测设备/太阳能板_fault.svg → ruoyi-ui/src/views/JiHeExpressway/images/layerb/路测设备/离网光伏供电_fault.svg

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

6
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/ConfluenceArea/index.vue

@ -42,13 +42,13 @@ import {
import { dialogDelayVisible } from "./../mixin"; import { dialogDelayVisible } from "./../mixin";
import { resolve } from "@antv/x6/lib/registry/node-anchor/util"; import { resolve } from "@antv/x6/lib/registry/node-anchor/util";
// //
export default { export default {
name: "ConfluenceArea", name: "ConfluenceArea",
mixins: [dialogDelayVisible], mixins: [dialogDelayVisible],
components: { components: {
Dialog, Dialog,
Descriptions, Descriptions,
LineChart, LineChart,
Video, Video,
@ -126,7 +126,7 @@ export default {
methods: { methods: {
rebind(){ rebind(){
this.$refs.refParam.bind() this.$refs.refParam.bind()
}, },
async getDeviceInfo() { async getDeviceInfo() {
return request({ return request({
url: `/business/device/properties/latest/${this.dialogData.iotDeviceId || "10.0.36.143-1883" url: `/business/device/properties/latest/${this.dialogData.iotDeviceId || "10.0.36.143-1883"

6
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SolarEnergy/index.vue

@ -1,6 +1,6 @@
<template> <template>
<Dialog v-model="obverseVisible" title="太阳能板" width="550px"> <Dialog v-model="obverseVisible" title="离网光伏供电" width="550px">
<Video class="video-stream" :camId="camId" img="太阳能板" /> <Video class="video-stream" :camId="camId" img="离网光伏供电" />
<div class="SolarEnergy"> <div class="SolarEnergy">
<ElTabs v-model="activeName" class="tabs"> <ElTabs v-model="activeName" class="tabs">
@ -47,7 +47,7 @@ import {
import { dialogDelayVisible } from "./../mixin"; import { dialogDelayVisible } from "./../mixin";
import { resolve } from "@antv/x6/lib/registry/node-anchor/util"; import { resolve } from "@antv/x6/lib/registry/node-anchor/util";
// //
export default { export default {
name: "SolarEnergy", name: "SolarEnergy",
mixins: [dialogDelayVisible], mixins: [dialogDelayVisible],

8
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js

@ -73,7 +73,7 @@ export const DeviceForMap = {
type = 'b' type = 'b'
} else if(ctype && (ctype === '2-4'||ctype === '2-2')){ } else if(ctype && (ctype === '2-4'||ctype === '2-2')){
type = 'c' type = 'c'
} }
return boardIcon[`${type}${+!bool}`]; return boardIcon[`${type}${+!bool}`];
}, },
}, },
@ -113,7 +113,7 @@ export const DeviceForMap = {
deviceType: "10", deviceType: "10",
dialog: "FatigueWakesUp", dialog: "FatigueWakesUp",
}, },
太阳能板: { 离网光伏供电: {
deviceType: "15", deviceType: "15",
dialog: "SolarEnergy", dialog: "SolarEnergy",
}, },
@ -282,7 +282,7 @@ export const eventMap = {
); );
addDataPreHandle(removeData); addDataPreHandle(removeData);
markerClusterIns.addData(removeData, isDefault); markerClusterIns.addData(removeData, isDefault);
this.emitter.emit("selectedCompleted", item); this.emitter.emit("selectedCompleted", item);
cacheRemoveFunc[`地图事件专题/${item.title}`] = () => { cacheRemoveFunc[`地图事件专题/${item.title}`] = () => {
@ -468,4 +468,4 @@ function removeDataPreHandle(markers) {
}; };
lngLatMapHandle(markers, cb); lngLatMapHandle(markers, cb);
window.renderData?.(window.page); //移除后,重新渲染弹出框更新数据 window.renderData?.(window.page); //移除后,重新渲染弹出框更新数据
} }

10
ruoyi-ui/src/views/JiHeExpressway/pages/control/device/record/index.vue

@ -10,12 +10,12 @@
刷新 刷新
</ButtonGradient> </ButtonGradient>
</div> </div>
<InputSearch ref="searchComp" style="width: 400px" :formList="searchFormList" @handleSearch="handleSearch" /> <InputSearch ref="searchComp" style="width: 400px" :formList="searchFormList" @handleSearch="handleSearch" />
</div> </div>
<!-- 内容--> <!-- 内容-->
<div class="body"> <div class="body">
<Table :data="tableData" height="75vh" > <Table :data="tableData" height="75vh" >
<el-table-column label="序号" type="index" :index="indexMethod" width="100" align="center" <el-table-column label="序号" type="index" :index="indexMethod" width="100" align="center"
header-align="center" /> header-align="center" />
@ -53,7 +53,7 @@
<div> <div>
<p v-for="item in scope.row.aryState"> <p v-for="item in scope.row.aryState">
<i class="el-icon-success" style="font-size: 20px; color:#0c0;" v-if="item === 200"></i> <i class="el-icon-success" style="font-size: 20px; color:#0c0;" v-if="item === 200"></i>
<i class="el-icon-error" style="font-size: 20px; color:#BBB;" v-else></i> <i class="el-icon-error" style="font-size: 20px; color:#BBB;" v-else></i>
</p> </p>
</div> </div>
</template> </template>
@ -165,11 +165,11 @@ export default {
10: "疲劳唤醒", 10: "疲劳唤醒",
12: "行车诱导", 12: "行车诱导",
13: "设备箱", 13: "设备箱",
15: "太阳能板", 15: "离网光伏供电",
16: "远端机" 16: "远端机"
} }
if (result.code != 200) return; if (result.code != 200) return;
result.rows.forEach(e => { result.rows.forEach(e => {
console.log('e.jsonResult',e.jsonResult) console.log('e.jsonResult',e.jsonResult)
const resJson = JSON.parse(e.jsonResult) const resJson = JSON.parse(e.jsonResult)

34
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/analysis/index.vue

@ -11,7 +11,7 @@
placeholder="请选择设备类型" placeholder="请选择设备类型"
> >
<el-option <el-option
v-for="item in [{label:'智能设备箱',value:13},{label:'太阳能板',value:15},{label:'远端机',value:16},{label:'气象检测器',value:3},{label:'一体机柜',value:17}]" v-for="item in [{label:'智能设备箱',value:13},{label:'离网光伏供电',value:15},{label:'远端机',value:16},{label:'气象检测器',value:3},{label:'一体机柜',value:17}]"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
@ -65,7 +65,7 @@
placeholder="请选择" placeholder="请选择"
:clearable="false" :clearable="false"
/> />
<Button style="margin-left: 25px" @click.native="bindData()">查询</Button> <Button style="margin-left: 25px" @click.native="bindData()">查询</Button>
</div> </div>
</div> </div>
@ -150,7 +150,7 @@ export default {
}, },
mounted() { mounted() {
this.date = moment().format('YYYY-MM-DD') this.date = moment().format('YYYY-MM-DD')
this.bindList(); this.bindList();
}, },
methods: { methods: {
bindData(){ bindData(){
@ -180,7 +180,7 @@ export default {
rows.push({ rows.push({
name:item.deviceName, name:item.deviceName,
timestamp: el.timestamp.substr(11) timestamp: el.timestamp.substr(11)
}) })
}); });
} }
@ -199,8 +199,8 @@ export default {
value.push(0) value.push(0)
} }
}) })
const chartOptions = _.cloneDeep(chart1); const chartOptions = _.cloneDeep(chart1);
chartOptions.title.text = e.name +' / ' + this.date + ' / ' + item.deviceName; chartOptions.title.text = e.name +' / ' + this.date + ' / ' + item.deviceName;
chartOptions.xAxis.data = xname; chartOptions.xAxis.data = xname;
@ -210,7 +210,7 @@ export default {
chartOptions.tooltip['valueFormatter'] = function (value) { chartOptions.tooltip['valueFormatter'] = function (value) {
return value + " "+unit; return value + " "+unit;
} }
this.aryChartList.push({ this.aryChartList.push({
...item, ...item,
pname: e.name, pname: e.name,
@ -257,7 +257,7 @@ export default {
const id = x.deviceId + x.pname const id = x.deviceId + x.pname
const myChart1 = echarts.init(document.getElementById(id)); const myChart1 = echarts.init(document.getElementById(id));
myChart1.setOption(x.options); myChart1.setOption(x.options);
}) })
}, 500); }, 500);
}, },
devClick(item,index){ devClick(item,index){
@ -296,12 +296,12 @@ export default {
if(this.init){ if(this.init){
this.init = false; this.init = false;
setTimeout(() => { setTimeout(() => {
this.devClick( this.list[0],0) this.devClick( this.list[0],0)
}, 400); }, 400);
} }
}) })
}, },
onResetSearch() { onResetSearch() {
@ -351,7 +351,7 @@ export default {
} }
.right { .right {
margin-left: 20px; margin-left: 20px;
flex: 1; flex: 1;
display: flex; display: flex;
@ -427,7 +427,7 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.Pagination { .Pagination {
::v-deep { ::v-deep {
>button, >button,
@ -509,18 +509,18 @@ export default {
.devparam{ .devparam{
width: 200px; width: 200px;
margin-left: 20px; margin-left: 20px;
} }
.selectDate { .selectDate {
width: 89px; width: 89px;
border: 1px solid #00b3cc; border: 1px solid #00b3cc;
::v-deep { ::v-deep {
.el-input__prefix{ .el-input__prefix{
top:-4px; top:-4px;
} }
.el-input__inner { .el-input__inner {
background-color: #064258 !important; background-color: #064258 !important;
border-width: 0px !important; border-width: 0px !important;
} }

4
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/statisticalAnalysis/analysis/components/deviceSummary/index.vue

@ -91,8 +91,8 @@
v-if="item.title.includes('疲劳唤醒')" v-if="item.title.includes('疲劳唤醒')"
/> />
<img <img
src="@screen/images/layer/路测设备/太阳能板.svg" src="@screen/images/layer/路测设备/离网光伏供电.svg"
v-if="item.title.includes('太阳能板')" v-if="item.title.includes('离网光伏供电')"
/> />
<img <img
src="@screen/images/layer/路测设备/远端机.svg" src="@screen/images/layer/路测设备/远端机.svg"

10
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/statisticalAnalysis/query/data.js

@ -93,7 +93,7 @@ export const deviceType = [
}, },
{ {
value: "15", value: "15",
label: "太阳能板", label: "离网光伏供电",
color: "#4e5417", color: "#4e5417",
}, },
{ {
@ -126,7 +126,7 @@ export const tabMap = {
}; };
export const searchFormList = [ export const searchFormList = [
{ {
label: "时间范围:", label: "时间范围:",
key: "time", key: "time",
@ -145,7 +145,7 @@ export const searchFormList = [
}, },
} }
}, },
}, },
// { // {
// label: "方向:", // label: "方向:",
// key: "direction", // key: "direction",
@ -164,7 +164,7 @@ export const searchFormList2 = [
{ {
label: "桩号:", label: "桩号:",
key: "stakeMark", key: "stakeMark",
}, },
{ {
label: "使用状态:", label: "使用状态:",
@ -288,4 +288,4 @@ export const testDeviceData = {
"lostRate": "32.56%" "lostRate": "32.56%"
} }
} }
} }

39
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/solar/index.vue

@ -1,5 +1,6 @@
<template> <template>
<div class="solar"> <div class="solar">
<gisMap2d ref="gisMap2dsolar" style="width:100vw;height:100vh" <gisMap2d ref="gisMap2dsolar" style="width:100vw;height:100vh"
:mapZoom = "mapZoom" :mapZoom = "mapZoom"
:mapCenter="mapCenter" :mapCenter="mapCenter"
@ -8,6 +9,7 @@
radarSliderRight="14%" radarSliderRight="14%"
mapBoxHeight="100vh" @clickPointEvent="clickPointEvent" widgetBoxDisplay="none"></gisMap2d> mapBoxHeight="100vh" @clickPointEvent="clickPointEvent" widgetBoxDisplay="none"></gisMap2d>
<div class="solar_left"> <div class="solar_left">
<div> <div>
<Bg2 class="content-l-t"> <Bg2 class="content-l-t">
<div class="focuse-header"> <div class="focuse-header">
@ -65,6 +67,7 @@
</div> </div>
</Bg2> </Bg2>
</div> </div>
<div> <div>
<Bg2 class="content-l-t"> <Bg2 class="content-l-t">
<div class="focuse-header"> <div class="focuse-header">
@ -124,7 +127,7 @@
</template> </template>
<script> <script>
import homeLeftIcons from "./../../Home/components/homeLeftIcons/index.vue";
import Vue from "vue"; import Vue from "vue";
import { gisMap2d } from 'gis-map-universal' import { gisMap2d } from 'gis-map-universal'
import Bg2 from "@screen/components/Decorations/bg-2.vue" import Bg2 from "@screen/components/Decorations/bg-2.vue"
@ -135,6 +138,7 @@ import SolarEnergy from "./../../Home/components/Dialogs/SolarEnergy/index.vue";
const lnglat = [117.16515148266497,35.2797674572588] const lnglat = [117.16515148266497,35.2797674572588]
export default { export default {
components: { components: {
homeLeftIcons,
Bg2, Bg2,
gisMap2d, gisMap2d,
SolarEnergy, SolarEnergy,
@ -145,7 +149,7 @@ export default {
mapBoxHeight: '100vh', mapBoxHeight: '100vh',
mapZoom: '7.5', // '7.5' String mapZoom: '7.5', // '7.5' String
mapCenter: lnglat, //[118.75, 36.46] Array mapCenter: lnglat, //[118.75, 36.46] Array
dialogConfig:{ dialogConfig:{
component: void 0, component: void 0,
data: void 0, data: void 0,
@ -187,21 +191,21 @@ export default {
url: 'business/device/pileNumberQuery', url: 'business/device/pileNumberQuery',
method: 'post', method: 'post',
data: { data: {
deviceType: "15", deviceType: "15",
} }
}).then(result => { }).then(result => {
const aryPoints = []; const aryPoints = [];
const sa = require(`@screen/images/layerb/路测设备/太阳能板_active.svg`) const sa = require(`@screen/images/layerb/路测设备/离网光伏供电_active.svg`)
const sb = require(`@screen/images/layerb/路测设备/太阳能板_fault.svg`) const sb = require(`@screen/images/layerb/路测设备/离网光伏供电_fault.svg`)
for(let i of result.data){ for(let i of result.data){
aryPoints.push({ aryPoints.push({
type: 'event', // type: 'event', //
longitude: parseFloat(i.longitude), // longitude: parseFloat(i.longitude), //
latitude: parseFloat(i.latitude), // latitude: parseFloat(i.latitude), //
iconUrl: i.deviceState==='1'?sa:sb, // iconUrl: i.deviceState==='1'?sa:sb, //
offset: [0,-48], offset: [0,-48],
size: [42,100], size: [42,100],
GGoffsetX: 0, GGoffsetX: 0,
GGoffsetY: -5, GGoffsetY: -5,
GGimgOffset:[0,0], GGimgOffset:[0,0],
GGimgsize:[42,103], GGimgsize:[42,103],
@ -329,7 +333,7 @@ export default {
xAxis: { xAxis: {
type: 'category', type: 'category',
data: ['0点', '1点', '2点','3点', '4点','5点','6点','7点','8点', '9点','10点','11点', data: ['0点', '1点', '2点','3点', '4点','5点','6点','7点','8点', '9点','10点','11点',
'12点','13点','14点','15点','16点','17点','18点','19点','20点','21点','22点','23点'], '12点','13点','14点','15点','16点','17点','18点','19点','20点','21点','22点','23点'],
axisLine:{ axisLine:{
show:true, show:true,
lineStyle:{ lineStyle:{
@ -401,7 +405,7 @@ export default {
this.chart1.setOption(option1); this.chart1.setOption(option1);
this.chart1.resize(); this.chart1.resize();
}) })
this.chart2 = echarts.init(document.getElementById("charts2")); this.chart2 = echarts.init(document.getElementById("charts2"));
let option2 = JSON.parse(JSON.stringify(_chartsOptions)); let option2 = JSON.parse(JSON.stringify(_chartsOptions));
request({ request({
@ -441,7 +445,7 @@ export default {
this.chart3.setOption(option3); this.chart3.setOption(option3);
this.chart3.resize() this.chart3.resize()
}) })
} }
window.addEventListener("resize", () => { window.addEventListener("resize", () => {
if(this.chart1){ if(this.chart1){
@ -451,7 +455,7 @@ export default {
} }
}); });
} }
}, },
}; };
</script> </script>
@ -475,7 +479,16 @@ export default {
height: 100%; height: 100%;
gap: 10px; gap: 10px;
} }
.home-left-icons {
display: flex;
gap: 50px; /* 项之间的间距为10px*/
flex-direction: row;
z-index: 0;
margin-left: 20px;
.item {
padding-top: 35px;
}
}
.solar_right { .solar_right {
position: absolute; position: absolute;
right: 20px; right: 20px;

2
ruoyi-ui/src/views/JiHeExpressway/utils/enum.js

@ -993,7 +993,7 @@ export const deviceTypeOptions = [
}, },
{ {
value: 15, value: 15,
label: "太阳能板", label: "离网光伏供电",
}, },
{ {
value: 16, value: 16,

Loading…
Cancel
Save