Merge branch 'dev-gmj' into 'master'

Dev gmj

See merge request !6
This commit is contained in:
杜海鹏 2022-06-15 15:48:23 +08:00
commit 1d6bf0050a
16 changed files with 185 additions and 87 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 694 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 KiB

View File

@ -35,7 +35,9 @@ if (process.env.NODE_ENV == 'development') {
// axios.defaults.baseURL = 'http://14.29.220.211:6023/'
// axios.defaults.baseURL = 'https://zhgd.loganwy.com/' //龙光
// axios.defaults.baseURL = 'https://zhgd-uat.logan.com.cn/'
// axios.defaults.baseURL = 'http://36.137.53.203:9090/'; // 南昌地铁 17512009894 123456789 gdjt 123456789
// axios.defaults.baseURL = 'http://124.71.178.44:100/'
// tag: 本地
axios.defaults.baseURL = 'http://192.168.34.125:6023/'; //本地 http/1.1

View File

@ -15,7 +15,7 @@
<div class="size">{{ $t("message.projectSummary.actor") }}</div>
</div>
<div class="colour_content">
<div class="bg" style="background: #ffbb38"></div>
<div class="bg" style="background: #FFBB38"></div>
<div class="size">{{ $t("message.projectSummary.fine") }}</div>
</div>
<div class="colour_content">
@ -96,7 +96,7 @@ export default {
this.lineColor = "#6ce9f0";
break;
case "良":
this.lineColor = "#FFBB38";
this.lineColor = "#468EFD";
break;
case "轻度污染":
this.lineColor = "#FE7A18";

View File

@ -0,0 +1,63 @@
<template>
<div class="tabBox">
<div class="btnItem " :class="tabBoxIndex==0?'this_select':''" @click="tabSwitch('quality')">质量管理</div>
<div class="btnItem" :class="tabBoxIndex==1?'this_select':''" @click="tabSwitch('secure')">安全管理</div>
</div>
</template>
<script>
export default {
name:'tabBox',
props:{
tabBoxIndex:{
type: Number,
default:0
},
},
data (){
return {
}
},
created(){
console.log(this.tabBoxIndex,"tabBoxIndex")
},
methods:{
tabSwitch(v){
this.$router.push({path:v})
}
}
}
</script>
<style lang="less" scoped>
.btnItem {
width: 97px;
height: 41px;
background: url('../../../../assets/images/qualityManage/defBtn.png');
background-size: 100% 100%;
color: #5ce2f6;
font-size: 16px;
font-weight: bold;
text-align: center;
line-height: 41px;
margin-right: 12px;
margin-left: 12px;
cursor: pointer;
}
.this_select {
color: #fff !important;
background: url('../../../../assets/images/qualityManage/btnBg.png') !important;
}
.tabBox {
display: flex;
justify-content: center;
width: 100%;
margin-bottom: 40px;
}
</style>

View File

@ -1,8 +1,25 @@
<template>
<div>
<div class="imgbox">
<img class="img" src="../../../assets/images/qualityManage/hygl.png" alt="">
</div>
<div class="imgbox" style="margin-top: 30px;">
<img src="../../../assets/images/qualityManage/hygl2.png" alt="">
</div>
</div>
</template>
<script>
</script>
<style lang="less" scoped>
.imgbox{
display: flex;
justify-content: center;
width: 100%;
img{
width: 90%;
}
}
</style>

View File

@ -206,7 +206,10 @@
<i class="el-icon-arrow-down"></i>
</p>
</el-popover>
<div class="realTimeData">
<div style="width: 100%;display: flex;justify-content: center;">
<img style="width: 78%;" src="../../../assets/images/qualityManage/shuangtan.png" alt="">
</div>
<!-- <div class="realTimeData">
<div class="realTimeData_item">
<div class="realTimeData_item_img">
<img src="@/assets/images/greenOverview/PM2.5@1x.png" alt="">
@ -214,7 +217,7 @@
<div class="realTimeData_item_text">
<p>PM2.5</p>
<p>{{plantCap.pm25?plantCap.pm25:'--'}}μg/m3</p>
<!-- <img src="@/assets/images/greenOverview/形状.gif" alt="">-->
<img v-if="plantCap.pm25AlarmType == 1" src="@/assets/images/greenOverview/形状备份-2.gif" alt="">
</div>
</div>
@ -225,7 +228,7 @@
<div class="realTimeData_item_text">
<p>PM10</p>
<p>{{plantCap.pm10?plantCap.pm10:'--'}}μg/m3</p>
<!-- <img src="@/assets/images/greenOverview/形状.gif" alt="">-->
<img v-if="plantCap.pm10AlarmType == 1" src="@/assets/images/greenOverview/形状备份-2.gif" alt="">
</div>
</div>
@ -235,11 +238,11 @@
</div>
<div class="realTimeData_item_text">
<p>
<!-- 温度 -->
{{$t('message.dataBoard.temperature')}}
</p>
<p>{{plantCap.temperature?plantCap.temperature:'--'}}</p>
<!-- <img src="@/assets/images/greenOverview/形状.gif" alt="">-->
<img v-if="plantCap.temperatureAlarmType == 1" src="@/assets/images/greenOverview/形状备份-2.gif" alt="">
</div>
</div>
@ -249,11 +252,11 @@
</div>
<div class="realTimeData_item_text">
<p>
<!-- 湿度 -->
{{$t('message.dataBoard.humidity')}}
</p>
<p>{{plantCap.humidity?plantCap.humidity:'--'}}%</p>
<!-- <img src="@/assets/images/greenOverview/形状.gif" alt="">-->
<img v-if="plantCap.humidityAlarmType == 1" src="@/assets/images/greenOverview/形状备份-2.gif" alt="">
</div>
</div>
@ -264,7 +267,7 @@
<div class="realTimeData_item_text">
<p>TSP</p>
<p>{{plantCap.tsp?plantCap.tsp:'--'}}μg/m3</p>
<!-- <img src="@/assets/images/greenOverview/形状.gif" alt="">-->
<img v-if="plantCap.tspAlarmType == 1" src="@/assets/images/greenOverview/形状备份-2.gif" alt="">
</div>
</div>
@ -274,11 +277,11 @@
</div>
<div class="realTimeData_item_text">
<p>
<!-- 噪声 -->
{{$t('message.dataBoard.noise')}}
</p>
<p>{{plantCap.noise?plantCap.noise:'--'}}dB</p>
<!-- <img src="@/assets/images/greenOverview/形状.gif" alt="">-->
<img v-if="plantCap.noiseAlarmType == 1" src="@/assets/images/greenOverview/形状备份-2.gif" alt="">
</div>
</div>
@ -288,16 +291,16 @@
</div>
<div class="realTimeData_item_text">
<p>
<!-- 风速 -->
{{$t('message.dataBoard.windSpeed')}}
</p>
<p>{{plantCap.windspeed?plantCap.windspeed:'--'}}m/s</p>
<!-- <img src="@/assets/images/greenOverview/形状.gif" alt="">-->
<img v-if="plantCap.windSpeedAlarmType == 1" src="@/assets/images/greenOverview/形状备份-2.gif" alt="">
</div>
</div>
</div>
<!-- <div ref="centerChart" class="centerChart"></div>-->
</div> -->
</div>
<div class="bottom">
<div class="bottomInner weatherBox">
@ -491,25 +494,27 @@
<div class="safeChart" ref="safeChart"></div>
<div class="descBox fullHeight">
<div>
<!-- 噪声报警 -->
<div class="descItem descItem1">
<p class="text"><i class="dot purple"></i>
<!-- 噪声报警 -->
扬尘
{{$t('message.dataBoard.noiseAlarm')}}
</p>
<p class="num">{{alarmData.noiseNum}}</p>
</div>
<div class="descItem descItem1">
<!-- <div class="descItem descItem1">
<p class="text"><i style="background: #ffbb38;" class="dot"></i>{{'TSP'+$t('message.dataBoard.alarm')}}</p>
<p class="num">{{alarmData.tspNum}}</p>
</div>
</div> -->
<div class="descItem descItem1">
<p class="text"><i style="background: #fe6c7f;" class="dot"></i>{{'PM2.5'+$t('message.dataBoard.excessiveAlarm')}}</p>
<p class="num">{{alarmData.pm25Num}}</p>
</div>
<div class="descItem">
<!-- <div class="descItem">
<p class="text"><i class="dot green"></i>{{'PM10'+$t('message.dataBoard.excessiveAlarm')}}</p>
<p class="num">{{alarmData.pm10Num}}</p>
</div>
</div> -->
</div>
</div>
@ -674,10 +679,12 @@ export default {
[
{ value: this.alarmData.noiseNum, name: '' },
{ value: this.alarmData.pm25Num, name: '' },
{ value: this.alarmData.pm10Num, name: '' },
{ value: this.alarmData.tspNum, name: '' },
// { value: this.alarmData.pm10Num, name: '' },
// { value: this.alarmData.tspNum, name: '' },
],
this.$refs.safeChart,["rgba(120, 111, 240, 1)","#fe6c7f","rgba(92, 226, 246, 1)","#ffbb38"],'报警总数'
// this.$refs.safeChart,["rgba(120, 111, 240, 1)","#fe6c7f","rgba(92, 226, 246, 1)","#ffbb38"],''
this.$refs.safeChart,["#5CE2F6","#5181F6"],'报警总数'
);
});
},
@ -689,7 +696,8 @@ export default {
color: color?color:["#5181F6", "#61D2B9", "#F67F51", "#7851F6"],
title: {
show: true,
text: data[0].value+data[1].value+data[2].value+data[3].value,
text: data[0].value+data[1].value,
// text: data[0].value+data[1].value+data[2].value+data[3].value,
x: "48%",
y: "36%",
z: 5,
@ -1750,12 +1758,15 @@ export default {
padding-left: 32px;
}
.online{
background-color: rgba(68, 215, 182, 0.54);
// background-color: rgba(68, 215, 182, 0.54);
background-color: #319FC9;
}
.offline{
background-color: rgba(151, 12, 12, 0.54);
// background-color: rgba(151, 12, 12, 0.54);
background-color:#7BA0C0
}
}
//
.dataBoardPage_blue{
.weatherBox{
@ -1854,4 +1865,15 @@ export default {
}
}
}
.greenTable{
color: #fff !important;
}
.dataBoardContent .alarmBlockContent td{
color: #fff !important;
}
.dataBoardContent .alarmBlockContent th{
color: #fff !important;
}
</style>

View File

@ -6,6 +6,7 @@
</vue-scroll>
</div> -->
<div v-if="COMPANY != 'longguang'" class="fullHeight dataBoardIndex">
<qualityAndsecureTab :tabBoxIndex="0"></qualityAndsecureTab>
<div class="left fullHeight">
<div class="blockBox blockBox2">
<div class="blockTitle">
@ -100,14 +101,15 @@
</p>
<p class="num">{{ total.jyUrgentLevelNum }}</p>
</div>
<div class="descItem descItem1">
<!-- 严重问题 -->
<!-- <div class="descItem descItem1">
<p class="text">
<i class="dot purple"></i>
<!-- 严重问题 -->
{{ $t("message.dataBoard.seriousnessProblem") }}
</p>
<p class="num">{{ total.yzUrgentLevelNum }}</p>
</div>
</div> -->
<div class="descItem">
<p class="text">
<i class="dot green"></i>
@ -127,26 +129,28 @@
</div>
<div class="blockContent">
<div class="switchBox">
<span
<!-- 全部 -->
<!-- <span
@click="
dataType2 = 1;
getData2(2);
"
:class="dataType2 == 1 ? 'active' : ''"
>
<!-- 全部 -->
{{ $t("message.dataBoard.all") }}
</span>
<span
</span> -->
<!-- 最近30天 -->
<!-- <span
@click="
dataType2 = 2;
getData2(2);
"
:class="dataType2 == 2 ? 'active' : ''"
>
<!-- 最近30天 -->
{{ $t("message.dataBoard.lately30days") }}
</span>
</span> -->
</div>
<div class="ratioChart" ref="frequentChart"></div>
<div class="placeholderBox placeholderBox2" v-if="noData2">
@ -164,6 +168,7 @@
</template>
<script>
import echarts from "echarts4";
import qualityAndsecureTab from "./components/qualityAndsecure"
import {
selectDangerTypeQualityCountApi,
selectQualityStatisticsApi,
@ -196,7 +201,7 @@ export default {
};
},
components: {
QualityTwo,
QualityTwo,qualityAndsecureTab
},
created() {
this.COMPANY = COMPANY;

View File

@ -7,6 +7,7 @@
</div> -->
<div v-if="COMPANY != 'longguang'" class="fullHeight dataBoardIndex">
<qualityAndsecureTab :tabBoxIndex="1"></qualityAndsecureTab>
<div class="left fullHeight">
<div class="blockBox blockBox2">
<div class="blockTitle">
@ -26,6 +27,9 @@
<div class="circleBox">
<div class="ratioChart" ref="ratioChart4"></div>
</div>
<div class="circleBox">
<img style="width:100%;height:100%" src="../../../assets/images/qualityManage/secyre01.png" alt="">
</div>
</div>
</div>
<div class="blockBox blockBox3" style="height:calc(66.66% - 25px)">
@ -52,27 +56,28 @@
<div class="blockBox">
<div class="blockTitle">
<!-- 待整改 -->
{{$t('message.dataBoard.awaitChange')}}
<!-- {{$t('message.dataBoard.awaitChange')}} -->
问题类型
</div>
<div class="blockContent alarmBlockContent">
<vue-scroll>
<!-- <vue-scroll>
<table class="greenTable">
<thead>
<tr>
<th width="150">
<!-- 检查项 -->
{{$t('message.dataBoard.checkedItem')}}
</th>
<th>
<!-- 检查内容 -->
{{$t('message.dataBoard.checkedContent')}}
</th>
<th>
<!-- 检查时间 -->
{{$t('message.dataBoard.checkedTime')}}
</th>
<th>
<!-- 整改人 -->
{{$t('message.dataBoard.changePeople')}}
</th>
</tr>
@ -94,94 +99,77 @@
>
<img src="@/assets/images/noData3.png" alt="" srcset="" />
<p>
<!-- 暂无数据 -->
{{$t('message.dataBoard.nodata')}}
</p>
</div>
</vue-scroll>
</vue-scroll> -->
<img style="width:100%;height:100%" src="../../../assets/images/qualityManage/secyre02.png" alt="" srcset="">
</div>
</div>
<div class="blockBox">
<div class="blockTitle">
<!-- 问题占比 -->
{{$t('message.dataBoard.problemRatio')}}
<!-- {{$t('message.dataBoard.problemRatio')}} -->
安全预警
</div>
<div class="blockContent">
<div class="safeTrainChart" ref="safeTrainChart"></div>
<img style="width:100%;height:100%" src="../../../assets/images/qualityManage/secyre03.png" alt="" srcset="">
<!-- <div class="safeTrainChart" ref="safeTrainChart"></div>
<div class="descBox fullHeight">
<div>
<div class="descItem descItem1">
<p class="text"><i class="dot red"></i>
<!-- 周检 -->
{{$t('message.dataBoard.weekChecked')}}
</p>
<p class="num">{{total.weekInspectNum}}</p>
</div>
<div class="descItem descItem1">
<p class="text"><i class="dot purple"></i>
<!-- 月检 -->
{{$t('message.dataBoard.monthChecked')}}
</p>
<p class="num">{{total.monthInspectNum}}</p>
</div>
<div class="descItem">
<p class="text"><i class="dot green"></i>
<!-- 其他 -->
{{$t('message.dataBoard.elseChecked')}}
</p>
<p class="num">{{total.otherInspectNum}}</p>
</div>
</div>
</div>
</div> -->
</div>
</div>
<div class="blockBox">
<div class="blockTitle">
<!-- 整改动态 -->
{{$t('message.dataBoard.changeDynamic')}}
<!-- {{$t('message.dataBoard.changeDynamic')}} -->
隐患排查
</div>
<div class="blockContent">
<vue-scroll>
<img style="width:100%;height:100%" src="../../../assets/images/qualityManage/secyre04.png" alt="" srcset="">
<!-- <vue-scroll>
<ul class="greenTable dynamicList">
<li v-for="(item,index) in activityList" :key="index">
{{item.rectifyPeopleAme}}<!-- 有一条 -->{{$t('message.dataBoard.hasOne')}}{{statusArr[item.state-1]}}{{$t('message.dataBoard.problen')}}<!-- 的问题 -->
{{item.rectifyPeopleAme}}
{{$t('message.dataBoard.hasOne')}}{{statusArr[item.state-1]}}{{$t('message.dataBoard.problen')}}
</li>
</ul>
<!-- <table class="greenTable">
<thead>
<tr>
<th>
{{ $t("message.environmentalOverview.table2.th1") }}
</th>
<th>
{{ $t("message.environmentalOverview.table2.th2") }}
</th>
<th>
{{ $t("message.environmentalOverview.table2.th3") }}
</th>
</tr>
</thead>
<tbody>
<tr v-for="(item, index) in alarmList" :key="index">
<td>
{{ item.deviceName }}
</td>
<td>{{ item.alarmTime }}</td>
<td>{{ item.alarmTypeName }}</td>
</tr>
</tbody>
</table> -->
<div
class="placeholderBox placeholderBox2"
v-if="activityList.length == 0"
>
<img src="@/assets/images/noData3.png" alt="" srcset="" />
<p>
<!-- 暂无数据 -->
{{$t('message.dataBoard.nodata')}}
</p>
</div>
</vue-scroll>
</vue-scroll> -->
</div>
</div>
</div>
@ -189,7 +177,8 @@
<SecureTwo v-else></SecureTwo>
</template>
<script>
import echarts from 'echarts4';;
import echarts from 'echarts4';
import qualityAndsecureTab from "./components/qualityAndsecure"
import {selectSecurityManageStatisticsApi,selectRectifiedSecurityManageList2Api,
getNewestSecurityManageDataList2Api} from "@/assets/js/api/dataBoard"
import SecureTwo from "./secureTwo";
@ -219,7 +208,7 @@ export default {
}
},
components: {
SecureTwo,
SecureTwo,qualityAndsecureTab
},
created(){
this.COMPANY = COMPANY
@ -254,7 +243,7 @@ export default {
],
this.$refs.safeTrainChart,
["rgba(254, 108, 127, 1)","rgba(120, 111, 240, 1)", "rgba(68, 215, 182, 1)"],
this.$t('message.dataBoard.questionAllCounts') /* "问题总数" */,this.total.totalNum
"检查总数",this.total.totalNum
);
this.createPieChart(
[
@ -279,7 +268,7 @@ export default {
],
this.$refs.ratioChart2,
["#7718fe", "rgba(68, 215, 182, 0.2)"],
this.$t('message.dataBoard.statusArr')[1]+this.$t('message.dataBoard.problenNum') /* "待审核问题数" */,this.total.reviewedNum
"隐患总数" /* "待审核问题数" */,this.total.reviewedNum
);
this.createPieChart(
[
@ -291,7 +280,7 @@ export default {
],
this.$refs.ratioChart3,
["#fe6c7f", "rgba(68, 215, 182, 0.2)"],
/* "待整改问题数" */this.$t('message.dataBoard.statusArr')[0]+this.$t('message.dataBoard.problenNum'),this.total.rectificationNum
/* "待整改问题数" */"重大隐患",this.total.rectificationNum
);
var ratioNum = this.total.totalNum?((this.total.closeNum/this.total.totalNum)*100).toFixed(2):0
this.createPieChart(
@ -304,7 +293,7 @@ export default {
],
this.$refs.ratioChart4,
["rgba(68, 215, 182, 1)", "rgba(68, 215, 182, 0.2)"],
this.$t('message.dataBoard.onTimeChangeRate') /* "及时整改率" */,ratioNum+'%'
"超期未消隐患"/* "及时整改率" */,ratioNum+'%'
);
var arr = res.result.monthList
var xData=[],yData1=[]
@ -481,7 +470,7 @@ export default {
}
.circleBox{
width: 25%;
width: 20%;
float: left;
text-align: center;
height: 100%;