Browse Source

完善

wangqin
hui 11 months ago
parent
commit
84fa591032
  1. 82
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/index.vue
  2. 13
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/deviceSummary/index.vue
  3. 8
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/deviceUptime/index.vue
  4. 10
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/monthlyEquipment/index.vue
  5. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/data.js
  6. 29
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/index.vue
  7. 97
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/testDeviceData.js
  8. 1
      ruoyi-ui/src/views/JiHeExpressway/pages/service/board/index.vue
  9. 7
      ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/index.vue
  10. 3
      ruoyi-ui/vue.config.js

82
ruoyi-ui/src/views/JiHeExpressway/pages/Home/index.vue

@ -1,41 +1,41 @@
<template>
<div class="Home">
<AMapContainer ref="AMapContainerRef" @update:isGisCompleted="(data) => {
this.isGisCompleted = data;
}
" />
<section class="content">
<!-- 左侧 -->
<div class="content-l">
<!-- -->
<FocusedMonitoring class="card-menu" />
<!-- -->
<RoadAndEvents ref="RoadAndEventsRef" :isGisCompleted="isGisCompleted" class="content-l-b card-menu" />
</div>
<!-- 右侧 -->
<div class="content-r">
<div class="home-icons">
<HomeFilter class="item" />
<HomeFrame class="item" />
<HomeVector class="item" />
<!-- <HomeVectorControl class="item" /> -->
<!-- <HomeFrameControl class="item" /> -->
<AMapContainer ref="AMapContainerRef" @update:isGisCompleted="(data) => {
this.isGisCompleted = data;
}
" />
<section class="content">
<!-- 左侧 -->
<div class="content-l">
<!-- -->
<FocusedMonitoring class="card-menu" />
<!-- -->
<RoadAndEvents ref="RoadAndEventsRef" :isGisCompleted="isGisCompleted" class="content-l-b card-menu" />
</div>
<!-- 右侧 -->
<div class="content-r">
<div class="home-icons">
<HomeFilter class="item" />
<HomeFrame class="item" />
<HomeVector class="item" />
<!-- <HomeVectorControl class="item" /> -->
<!-- <HomeFrameControl class="item" /> -->
</div>
<ConditionStatistics class="right card-menu" />
</div>
</section>
<footer class="footer card-menu">
<div class="footer-title">
<span>济菏高速缩略图</span>
<i class="el-icon-s-fold" style="color: #2ad9fd; transform: rotate(-90deg)" @click.stop="handleShrink" />
</div>
<div class="footer-content">
<Thumbnail />
</div>
<ConditionStatistics class="right card-menu" />
</div>
</section>
<footer class="footer card-menu">
<div class="footer-title">
<span>济菏高速缩略图</span>
<i class="el-icon-s-fold" style="color: #2ad9fd; transform: rotate(-90deg)" @click.stop="handleShrink" />
</div>
<div class="footer-content">
<Thumbnail />
</div>
</footer>
</footer>
</div>
</template>
@ -109,13 +109,15 @@ export default {
<style lang="scss" scoped>
.Home {
width: 100%;
height: 100%;
z-index: 6;
display: flex;
flex-direction: column;
gap: 30px;
// height: 100%;
// z-index: 6;
// display: flex;
// flex-direction: column;
// gap: 30px;
padding: 19px 31px 0 25px;
justify-content: center;
// justify-content: center;
.card-menu {
transition: all 0.24s linear;

13
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/deviceSummary/index.vue

@ -32,6 +32,12 @@
</div>
<div class="line"></div>
<div class="right-list">
<div class="list-text">
<span class="title">在用</span>
<div class="value value4">
{{ item.sumUseState }}
</div>
</div>
<div class="list-text">
<span class="title">在线</span>
<div class="value value1">
@ -175,8 +181,8 @@
align-items: center;
.list-text {
height: 30px;
line-height: 30px;
height: 24px;
line-height: 24px;
width: 100%;
font-size: 12px;
font-family: PingFang SC, PingFang SC;
@ -205,6 +211,9 @@
.value3 {
color: #FFD15Cee;
}
.value4 {
color: #0D0;
}
}
}

8
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/deviceUptime/index.vue

@ -1,12 +1,12 @@
<template>
<div class='congestion'>
<WgtTitle :title="'设备在线率'"></WgtTitle>
<WgtTitle :title="'设备在线率雷达图'"></WgtTitle>
<div class="board">
<Empty v-if="isEmpty" text="暂无数据..."></Empty>
<div v-else class="charts keep-ratio " ref="deviceUptime"></div>
</div>
</div>
</div></template>
</template>
<script>
import WgtTitle from "../../../../perception/widgets/title";
@ -77,12 +77,12 @@ export default {
<style lang='scss' scoped>
.congestion {
width: 100%;
width: 100%; height: 100%;
display: flex;
flex-direction: column;
.board {
height: 510px;
flex: 1;
width: 100%;
padding: 0px 20px;
background: linear-gradient(180deg, rgba(6, 66, 88, 0) 0%, rgba(6, 66, 88, 0.4) 100%);

10
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/monthlyEquipment/index.vue

@ -1,6 +1,6 @@
<template>
<div class='congestion'>
<WgtTitle :title="'月设备变化曲线'"></WgtTitle>
<WgtTitle :title="'设备在线率气泡图'"></WgtTitle>
<div class="board" ref="box">
<Empty v-if="isEmpty" text="暂无数据..."></Empty>
<template v-else>
@ -103,8 +103,12 @@ export default {
return a - b
})
let temp3 = _.chunk(temp2, Math.floor(temp2.length / 4));
temp3[3] = _.concat(temp3[3], temp3[4]);
temp3.splice(4, 1);
if(temp3.length>4){
for(let i=4; i<temp3.length; i++){
temp3[3] = _.concat(temp3[3], temp3[i]);
}
temp3.length = 4;
}
levelArr = temp3;
//

2
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/data.js

@ -117,4 +117,4 @@ export const searchFormList = [
],
},
},
];
];

29
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/index.vue

@ -1,7 +1,7 @@
<template>
<div class="statisticAnalysis">
<el-tabs class="saContent" v-model="activeName" @tab-click="changeTabs">
<el-tab-pane label="设备分析" name="first" class="deviceAnalysis">
<el-tabs class="full_tab" v-model="activeName" @tab-click="changeTabs">
<el-tab-pane label="设备分析" name="first" class="tab_con">
<DeviceSummary
class="deviceSummary"
:dataList="equipments"
@ -11,7 +11,7 @@
<MonthlyEquipment class="tabs-mo" :dataList="equipments" />
</div>
</el-tab-pane>
<el-tab-pane label="设备查询" name="second">
<el-tab-pane label="设备查询" name="second" class="tab_con">
<div class="topdiv">
<div class="left-div">
<el-button
@ -310,6 +310,7 @@ export default {
pctOnl: Math.floor(100 * Math.random()) + "%",
pctOffl: "25%",
pctLose: "15%",
sumUseState: "90%"
});
});
return;
@ -323,6 +324,7 @@ export default {
pctOnl: val.sucessRate,
pctLose: val.failRate,
pctOffl: val.lostRate,
sumUseState: val.sumUseState
};
if (key.includes("全部设备")) {
allList.unshift(item);
@ -349,7 +351,6 @@ export default {
this.setStatus("01", "doing");
let data = this.searchFormList[1].options.options;
let typeLabel = "";
console.log("data", data);
data.forEach((item) => {
if (item.value == this.typeQuery) {
typeLabel = item.label;
@ -449,7 +450,7 @@ export default {
display: inline-flex;
width: 100%;
flex-direction: row;
height: 100%;
flex:1; height: 0;
.tabs-lo {
display: inline-flex;
@ -465,7 +466,7 @@ export default {
.deviceSummary {
height: 390px;
margin-bottom: 10px;
margin-bottom: 6px;
}
.btnSearch {
@ -552,14 +553,20 @@ export default {
opacity: 0.1;
}
.saContent {
.full_tab {
width: 100%;
height: 100%;
.deviceAnalysis {
display: flex; flex-direction: column; flex: 1;
::v-deep .el-tabs__header{}
::v-deep .el-tabs__content{ flex: 1;
.el-tab-pane{ width: 100%; height: 100%;}
}
}
.tab_con{ display: flex; flex-direction: column;}
.topdiv {
display: inline-flex;
position: relative;
@ -575,7 +582,9 @@ export default {
}
.statisticAnalysis {
padding: 8px 20px;
width: 100%;
height: 100%;
padding: 8px 20px 20px;
.header-shot {
width: 98%;

97
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/testDeviceData.js

@ -0,0 +1,97 @@
export default {
"msg": "操作成功",
"code": 200,
"data": {
"站前悬臂式可变信息标志": {
"sucessRate": "100.00%",
"failRate": "0.00%",
"sumUseState": "2",
"sum": "10",
"lostRate": "0.00%"
},
"高清网络枪型固定摄像机": {
"sucessRate": "72.73%",
"failRate": "27.27%",
"sumUseState": "33",
"sum": "315",
"lostRate": "27.27%"
},
"智能设备箱": {
"sucessRate": "91.67%",
"failRate": "8.33%",
"sumUseState": "12",
"sum": "219",
"lostRate": "8.33%"
},
"智能行车诱导系统": {
"sucessRate": "25.00%",
"failRate": "75.00%",
"sumUseState": "4",
"sum": "21",
"lostRate": "75.00%"
},
"门架式可变信息标志": {
"sucessRate": "100.00%",
"failRate": "0.00%",
"sumUseState": "5",
"sum": "31",
"lostRate": "0.00%"
},
"护栏碰撞预警系统": {
"sucessRate": "100.00%",
"failRate": "0.00%",
"sumUseState": "1",
"sum": "18",
"lostRate": "0.00%"
},
"180°全景摄像机": {
"sucessRate": "50.00%",
"failRate": "50.00%",
"sumUseState": "2",
"sum": "10",
"lostRate": "50.00%"
},
"360°全景摄像机": {
"sucessRate": "100.00%",
"failRate": "0.00%",
"sumUseState": "2",
"sum": "15",
"lostRate": "0.00%"
},
"一类交通量调查站": {
"sucessRate": "100.00%",
"failRate": "0.00%",
"sumUseState": "1",
"sum": "8",
"lostRate": "0.00%"
},
"全部设备": {
"sucessRate": "73.83%",
"failRate": "26.17%",
"sumUseState": "107",
"sum": "1190",
"lostRate": "26.17%"
},
"路段语音广播系统": {
"sucessRate": "100.00%",
"failRate": "0.00%",
"sumUseState": "1",
"sum": "27",
"lostRate": "0.00%"
},
"激光疲劳唤醒": {
"sucessRate": "100.00%",
"failRate": "0.00%",
"sumUseState": "1",
"sum": "6",
"lostRate": "0.00%"
},
"高清网络球形摄像机": {
"sucessRate": "67.44%",
"failRate": "32.56%",
"sumUseState": "43",
"sum": "161",
"lostRate": "32.56%"
}
}
}

1
ruoyi-ui/src/views/JiHeExpressway/pages/service/board/index.vue

@ -1051,6 +1051,7 @@ export default {
}
}
.infoBoardBox {
width: 100%; height: 100%;
.infoBoardCon {
width: 100%;
height: 100%;

7
ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/index.vue

@ -2,7 +2,7 @@
<div class="public_service_statistic">
<el-tabs class="content_tab" v-model="activeName" @tab-click="changeTabs">
<el-tab-pane label="公众服务统计分析" name="first" class="first_tab">
<el-tab-pane label="公众服务统计分析" name="first" class="con_tab first_tab">
<TopComponent class="line_01"/>
<div class="line_02">
<ChannelAnalytics class="unit" />
@ -15,7 +15,7 @@
<NucleusThrough class="unit" />
</div>
</el-tab-pane>
<el-tab-pane label="公众服务统计查询" name="second"> </el-tab-pane>
<el-tab-pane label="公众服务统计查询" name="second" class="con_tab"> </el-tab-pane>
</el-tabs>
</div>
@ -90,8 +90,9 @@ export default {
::v-deep .el-tabs__content{ flex: 1;}
}
.con_tab{width: 100%; height: 100%;}
.first_tab{
width: 100%; height: 100%; display: flex; flex-direction: column;
display: flex; flex-direction: column;
.line_01 {
flex-basis: 140px; margin-bottom: 16px;
}

3
ruoyi-ui/vue.config.js

@ -56,7 +56,8 @@ module.exports = {
// target: `http://10.168.68.42:8087`, //王思祥
// target: `http://10.168.65.194:8087`, //赵祥龙
// target: `http://10.168.65.156:8097`, //孟
target: `http://10.168.76.181:8087`, //王家宝
target: `http://10.168.56.165:8087`, //王家宝
// target: `http://10.168.65.103:8097`,
changeOrigin: true,
pathRewrite: {

Loading…
Cancel
Save