Browse Source

提交样式

wangqin
yyl 10 months ago
parent
commit
324ab3ee18
  1. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/assets/charts.js
  2. 183
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/deviceUptime/assets/charts.js
  3. 0
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/deviceUptime/index.vue
  4. 305
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/index.vue
  5. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/perception/trafficSituation/components/IndicatorAnalysis/components/trafficIndicators/index.vue
  6. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThrough/index.vue
  7. 3
      ruoyi-ui/vue.config.js

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

@ -108,7 +108,7 @@ var options = {
color:"#00E4BB",
},
data:[{
name:'增收金额',
name:'高清网络球型摄像机',
itemStyle:{
color:new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,

183
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/statisticalAnalysis/components/deviceUptime/assets/charts.js

@ -0,0 +1,183 @@
import { options } from "runjs";
let data = [100, 0, 0, 0, 40, 40,40, 64,40, 64,40, 64]
let indicator = [
{ name: '智能设备箱', max: 100 },
{ name: '智能行车诱导系统', max: 100 },
{ name: '一类交通量调查站', max: 100 },
{ name: '激光疲劳唤醒系统', max: 100 },
{ name: '合流区预警系统', max: 100 },
{ name: '毫米波雷达', max: 100 },
{ name: '护碰撞预警系统', max: 100 },
{ name: '路段语音广播系统', max: 100 },
{ name: '气象检测器', max: 100 },
{ name: '站前悬臂式可变信息标志', max: 100 },
{ name: '雨棚可变信息标志', max: 100 },
{ name: '门架式可变信息标志', max: 100 },
{ name: '180°全景摄像机', max: 100 },
{ name: '360°全景摄像机', max: 100 },
{ name: '高清网络枪型固定摄像机', max: 100 },
{ name: '高清网络球形摄像机', max: 100 },
]
let options = {
backgroundColor: '#000928',
tooltip: {},
radar: {
center: ['50%', '50%'],
radius: '75%',
nameGap: 0,
indicator: indicator,
splitLine: {
show: false
},
splitArea: {
show: false
},
axisLine: {
show: true
},
name: {
textStyle: {
color: '#F2F3F5',
fontSize: '20',
borderRadius: 3,
padding: [3, 5]
}
},
},
series: [{
type: 'radar',
data: [data],
name: '安全作业',
label: {
show: true,
formatter: function (params) {
console.log(params)
return params.value;
},
color: '#fff',
// position:[-20,-10,-10,-10],
align: 'right',
distance: 10,
align: 'right'
},
symbolSize: 10,
lineStyle: { //边缘颜色
width: 2,
color: '#2287FE'
},
itemStyle: {
borderWidth: 0,
color: '#ffffff00',
borderColor: '#2287F00',
},
areaStyle: {
color: '#2287FE60',
opacity: 1
}
},
{
type: 'radar',
name: '安全作业',
data: [
[100, 100, 100, 100, 100, 100, 100, 100,100, 100, 100, 100, 100, 100, 100, 100],
],
symbol: 'none',
lineStyle: {
width: 1
},
itemStyle: {
color: '#2AD1BC'
},
areaStyle: {
color: '#2AD1BC29',
opacity: 0.1
}
},
{
type: 'radar',
name: '安全作业',
data: [
[80, 80, 80, 80, 80, 80, 80, 80,80, 80, 80, 80, 80, 80, 80, 80]
],
symbol: 'none',
lineStyle: {
width: 1
},
itemStyle: {
color: '#2AD1BC'
},
areaStyle: {
color: '#2AD1BC29',
opacity: 0.2
}
},
{
type: 'radar',
name: '安全作业',
data: [
[60, 60, 60, 60, 60, 60, 60, 60,60, 60, 60, 60, 60, 60, 60, 60],
],
symbol: 'none',
lineStyle: {
width: 1
},
itemStyle: {
color: '#2AD1BC'
},
areaStyle: {
color: '#2AD1BC29',
opacity: 0.1
}
},
{
type: 'radar',
name: '安全作业',
data: [
[40, 40, 40, 40, 40, 40, 40, 40,40, 40, 40, 40, 40, 40, 40, 40],
],
symbol: 'none',
lineStyle: {
width: 1
},
itemStyle: {
color: '#2AD1BC'
},
areaStyle: {
color: '#2AD1BC29',
opacity: 0.1
}
},
{
type: 'radar',
name: '安全作业',
data: [
[20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20],
],
symbol: 'none',
lineStyle: {
width: 1
},
itemStyle: {
color: '#2AD1BC'
},
areaStyle: {
color: '#2AD1BC29',
opacity: 0.1
}
},
]
};
export default options;

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

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

@ -3,13 +3,48 @@
<section class="foot">
<el-tabs class="footTabs" v-model="activeName" @tab-click="changeTabs">
<el-tab-pane label="设备分析" name="first">
<div class="topTabs" >
<div class="item" v-for=" item in equipments" >
<div class="title-tool" >
<span class="text" >设备数</span>
<div class="num" >{{ item.num }}</div>
<span class="unit"></span>
</div>
<div class="item-body" >
<div class="left-body" >
<img />
<span>枪机</span>
</div>
<div class="line" ></div>
<div class="right-list" >
<div class="list-text" >
<span>在线</span>
<div class="show-text1" >
{{ item.online }}%
</div>
</div>
<div class="list-text" >
<span>离线</span>
<div class="show-text2" >
{{ item.outline }}%
</div>
</div>
<div class="list-text" >
<span>丢包</span>
<div class="show-text3" >
{{ item.lost }}%
</div>
</div>
</div>
</div>
</div>
</div>
</el-tab-pane>
<el-tab-pane label="设备查询" name="second">
<div class="topdiv" >
<div class="left-div" >
<el-button >刷新</el-button>
<el-button >导出Excel</el-button>
<el-button size="mini" icon="el-icon-refresh-left" class="btnSearch" >刷新</el-button>
<el-button size="mini" icon="el-icon-download" class="btnSearch" >导出Excel</el-button>
</div>
</div>
<div class="middleDiv" >
@ -97,6 +132,104 @@ import * as echarts from "echarts";
},
data(){
return {
equipments:[
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
{
num : 315,
online: 30,
outline: 30,
lost: 40
},
],
activeName:"first",
tableData: [{
date: '2023-12-31 13:00:00',
@ -254,6 +387,172 @@ import * as echarts from "echarts";
<style lang='scss' scoped>
.topTabs {
display: inline-flex;
width: 100%;
height: 100%;
min-height: 300px;
position: relative;
flex-direction: row;
flex-wrap: wrap;
>.item {
display: inline-flex;
position: relative;
flex-direction: column;
width: calc(100% /8 - 15px);
height:175px;
margin-right:15px;
margin-bottom:15px;
background: linear-gradient(180deg, rgba(6,66,88,0) 0%, #06425868 93%);
border-radius: 3px 3px 3px 3px;
.item-body {
position: relative;
display: inline-flex;
flex-direction: row;
width:100%;
height:100%;
img {
display: inline-flex;
width: 34px;
height: 34px;
border-radius: 50%;
border: 1px solid #00D1FF;
}
.left-body {
display:inline-flex;
position: relative;
width:30%;
height:100%;
flex-direction: column;
justify-content: center;
align-items: center;
margin:0 10px;
> span {
display: inline-flex;
margin-top:10px;
font-size: 14px;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFFcc;
}
}
.line {
display: inline-flex;
width:2px;
height:100px;
background:linear-gradient(180deg, rgba(3, 60, 81, 0), rgba(0, 100, 137, 1), rgba(3, 60, 81, 0));
position: relative;
top:30px;
}
.right-list {
display: inline-flex;
position: relative;
flex-direction: column;
justify-content: center;
align-items: center;
width:100%;
height:100%;
.list-text {
display: inline-flex;
position: relative;
width:100%;
height:40px;
font-size: 14px;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFF;
justify-content: center;
align-items: center;
.show-text1 {
color:#00EBC1ee;
font-size: 16px;
font-family: PangMenZhengDao, PangMenZhengDao;
font-weight: 800;
}
.show-text2 {
color:#FFFFFFee;
font-size: 16px;
font-family: PangMenZhengDao, PangMenZhengDao;
font-weight: 800;
}
.show-text3 {
color:#FFD15Cee;
font-size: 16px;
font-family: PangMenZhengDao, PangMenZhengDao;
font-weight: 800;
}
}
}
}
.title-tool {
position: relative;
display: inline-flex;
justify-content: center;
align-items: center;
width:100%;
height: 36px;
background: linear-gradient(180deg, rgba(1,139,182,0) 0%, #1FCAF160 100%);
border-radius: 3px 3px 0px 0px;
.text {
font-size: 17px;
font-family: PangMenZhengDao, PangMenZhengDao;
font-weight: 400;
color: #FFFFFF;
}
.num {
font-size: 19px;
font-family: PangMenZhengDao, PangMenZhengDao;
font-weight: 400;
color: #00D1FF;
margin:0 10px;
}
.unit {
font-size: 11px;
font-family: PingFang SC, PingFang SC;
font-weight: 500;
color: #FFFFFF50;
}
}
.title-tool::after {
content: "";
position: absolute;
bottom:1px;
width:100%;
height: 1px;
background: linear-gradient(90deg, rgba(81,181,255,0) 3%, #51B5FF 49%, rgba(81,181,255,0) 100%);
}
}
}
.btnSearch{
background: linear-gradient(180deg, #005C79 0%, #009BCC 100%);
margin-left: 10px;
border-color: transparent;
color:#fff;
}
::v-deep .el-table .cell {
padding-left:0px !important;

2
ruoyi-ui/src/views/JiHeExpressway/pages/perception/trafficSituation/components/IndicatorAnalysis/components/trafficIndicators/index.vue

@ -378,6 +378,8 @@
width:100%;
font-size: 14px;
margin-bottom: 10px;
z-index: 1000;
div{
white-space: nowrap;
margin-right: 4px;

2
ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThrough/index.vue

@ -82,7 +82,7 @@
margin-bottom: 10px;
left:20px;
top:2px;
z-index: 100;
z-index: 10000;
div{
white-space: nowrap;
margin-right: 4px;

3
ruoyi-ui/vue.config.js

@ -41,7 +41,8 @@ module.exports = {
// target: `http://192.168.0.194:8080`,
// target: `http://10.0.81.201:8080`,
// target: `http://10.168.73.36:8080`, // 周乐
target: `http://10.168.77.209:8080`, // 刘朋
//target: `http://10.168.77.209:8080`, // 刘朋
target:'http://10.168.66.196:8080',
// target: `http://10.168.66.196:8080`, //刘文阁
// target: `http://10.168.56.206:8087`, //孟
changeOrigin: true,

Loading…
Cancel
Save