Commit 4a153dd9 authored by 张浩然's avatar 张浩然

zhr-3/12

parent 5223d64b
import request5 from "@/utils/request5";
// 应急仓库
export function getFXData(data) {
return request5({
url: "api/contingencyPlan/getFXData",
method: "get",
params: data
});
}
import request from "@/utils/request"; import request from "@/utils/request";
import request2 from "@/utils/request2"; import request2 from "@/utils/request2";
import request3 from "@/utils/request3"; import request3 from "@/utils/request3";
import request4 from "@/utils/request4";
export const httpImg = 'http://jingkongyun.com:8090/'; export const httpImg = 'http://jingkongyun.com:8090/';
export const baseURL = 'http://39.98.150.124:8888/' export const baseURL = 'http://39.98.150.124:8888/'
...@@ -19,7 +19,8 @@ export function login(data) { ...@@ -19,7 +19,8 @@ export function login(data) {
// 企业类型 // 企业类型
export function dictDetail(data) { export function dictDetail(data) {
return request2({ return request2({
url: "api/dictDetail", // url: "api/dictDetail",
url: "api/dictDetail/findAll",
method: "get", method: "get",
params: data params: data
}); });
...@@ -38,7 +39,8 @@ export function sendAlarmSms(data) { ...@@ -38,7 +39,8 @@ export function sendAlarmSms(data) {
// 企业管理 // 企业管理
export function dept(data) { export function dept(data) {
return request2({ return request2({
url: "api/dept/allDepts", // url: "api/dept/allDepts",
url: "api/dept/findAll",
method: "get", method: "get",
params: data params: data
}); });
...@@ -168,61 +170,6 @@ export function wkkAlarmMsg(data) { ...@@ -168,61 +170,6 @@ export function wkkAlarmMsg(data) {
// 天气
export function weather(data) {
return request({
url: "weather",
method: "get",
params: data
});
}
// 基础数据
export function company_num_with_area(data) {
return request({
url: "company_num_with_area",
method: "get",
params: data
});
}
// 地区信息-风险监测-告警数据查询
export function all_alarm_info(data) {
return request({
url: "all_alarm_info",
method: "get",
params: data
});
}
// 企业今年事故统计
export function company_alarm_year(data) {
return request({
url: "company_alarm_year",
method: "get",
params: data
});
}
// 尾矿库基础数据
export function base_info(data) {
return request({
url: "base_info",
method: "get",
params: data
});
}
// 降雨量汇总值查询(天粒度)
export function rainfall_sum(data) {
return request({
url: "rainfall_sum",
method: "post",
data: data
});
}
// 尾矿库六项指标数据查询 // 尾矿库六项指标数据查询
export function wkk(data) { export function wkk(data) {
return request({ return request({
...@@ -232,58 +179,41 @@ export function wkk(data) { ...@@ -232,58 +179,41 @@ export function wkk(data) {
}); });
} }
// 尾矿库六项指标警戒值查询
export function alarm_line(data) {
return request({
url: "alarm_line",
method: "post",
data: data
});
}
// 视频监控地址查询 /* 视频 */
export function video_surveillance(data) { export function grouptree(data) {
return request({ return request3({
url: "video_surveillance", url: "api/v1/device/grouptree",
method: "get", method: "get",
params: data params: data
}); });
} }
// 企业/矿山告警解除查询 // api/v1/stream/start
export function cancel_alarm(data) { export function start(data) {
return request({ return request3({
url: "cancel_alarm", url: "api/v1/stream/start",
method: "get", method: "get",
params: data params: data
}); });
} }
//
export function gantan_info(data) {
return request({
url: "gantan_info",
method: "post",
data: data
});
}
// 隐患
/* 视频 */ export function findHiddenTimeout(data) {
export function grouptree(data) { return request4({
return request3({ url: "api/hiddenTroubleCheck/findAllwarningHiddenTrouble",
url: "api/v1/device/grouptree",
method: "get", method: "get",
params: data params: data
}); });
} }
// api/v1/stream/start // 重大隐患
export function start(data) { export function undergroundSeriousHiddenTrouble(data) {
return request3({ return request4({
url: "api/v1/stream/start", url: "/api/undergroundSeriousHiddenTrouble/warn",
method: "get", method: "get",
params: data params: data
}); });
} }
\ No newline at end of file
import request5 from "@/utils/request5";
// 环境监测
export function environment(data) {
return request5({
url: "api/environment",
method: "get",
params: data
});
}
// 降雨量
export function jiangYuLiang(data) {
return request5({
url: "api/wkkJiangYuLiang",
method: "get",
params: data
});
}
// 浸润线
export function jinRunXian(data) {
return request5({
url: "api/wkkJinRunXian",
method: "get",
params: data
});
}
// 干滩
export function ganTan(data) {
return request5({
url: "api/wkkGanTan",
method: "get",
params: data
});
}
// 内部位移倾斜
export function neiBuWeiYiQingXie(data) {
return request5({
url: "api/neiBuWeiYiQingXie",
method: "get",
params: data
});
}
// 库水位
export function kuShuiWei(data) {
return request5({
url: "api/wkkKuShuiWei",
method: "get",
params: data
});
}
// 表面位移
export function biaoMianWeiYi(data) {
return request5({
url: "api/wkkBiaoMianWeiYi",
method: "get",
params: data
});
}
// 尾矿库报警
export function wkkAlarmMsg(data) {
return request5({
url: "api/wkkAlarmMsg",
method: "get",
params: data
});
}
// 人员定位
export function findPersonnelReal(data) {
return request5({
url: "api/personnelRealTimeData/findPersonnelReal",
method: "get",
params: data
});
}
\ No newline at end of file
import request5 from "@/utils/request5";
// 应急仓库
export function getYJStorageData(data) {
return request5({
url: "api/storage/getYJStorageData",
method: "get",
params: data
});
}
// 物资管理
export function getYJSuppliesData(data) {
return request5({
url: "api/supplies/getYJSuppliesData",
method: "get",
params: data
});
}
// 应急专家
export function getYJExpertData(data) {
return request5({
url: "api/expert/getYJExpertData",
method: "get",
params: data
});
}
// 应急队伍
export function getYJEmergencyTeamData(data) {
return request5({
url: "api/emergencyTeam/getYJEmergencyTeamData",
method: "get",
params: data
});
}
// 避难场所
export function getYJShelterData(data) {
return request5({
url: "api/shelter/getYJShelterData",
method: "get",
params: data
});
}
// 应急车辆
export function getYJCarData(data) {
return request5({
url: "api/yjCar/getYJCarData",
method: "get",
params: data
});
}
// 应急预案
export function getYJContingencyPlanData(data) {
return request5({
url: "api/contingencyPlan/getYJContingencyPlanData",
method: "get",
params: data
});
}
\ No newline at end of file
...@@ -132,6 +132,7 @@ export default { ...@@ -132,6 +132,7 @@ export default {
grouptree({ grouptree({
serial, serial,
}).then(res => { }).then(res => {
for (let item of res) { for (let item of res) {
if (item.name == name) { if (item.name == name) {
var code = item.code var code = item.code
...@@ -150,7 +151,6 @@ export default { ...@@ -150,7 +151,6 @@ export default {
pcode: code pcode: code
} }
).then(res => { ).then(res => {
this.parentSerial = res[0].serial this.parentSerial = res[0].serial
this.list = res this.list = res
...@@ -160,11 +160,12 @@ export default { ...@@ -160,11 +160,12 @@ export default {
code: res[0].code, code: res[0].code,
} }
).then(res => { ).then(res => {
this.isVideoUrl = true
setTimeout(() => { setTimeout(() => {
this.loading = false this.loading = false
}, 1000) }, 1000)
this.videoUrl = res.WS_FLV this.videoUrl = res.WS_FLV
this.isVideoUrl = true
}) })
}) })
......
This diff is collapsed.
<template> <template>
<div class="dxkq-left"> <div class="dxkq-left">
<div class="base_left_box"> <div class="base_left_box">
<img src="@/assets/images/error.png" @click="onClickDel" />
<img src="@/assets/images/error.png" @click="onClickDel">
<div class="base_left_box_line">
<div class="base_left_box_line"> <div class="title">基础信息</div>
<div class="title">基础信息</div>
<el-row class="text">
<el-row class="text"> <el-col :span="8">名称</el-col>
<el-col :span="8">名称</el-col> <el-col class="text_right" :span="16">{{ dataObj.name }}</el-col>
<el-col class="text_right" :span="16">{{dataObj.name}}</el-col> </el-row>
</el-row>
<el-row class="text">
<el-row class="text"> <el-col :span="8">地理位置</el-col>
<el-col :span="8">地理位置</el-col> <el-col class="text_right" :span="16">{{ dataObj.address }}</el-col>
<el-col class="text_right" :span="16">{{ dataObj.address}}</el-col> </el-row>
</el-row> </div>
</div> <div class="base_left_box_line" style="height: 25vh">
<div class="title">监测类型</div>
<div class="base_left_box_line" style="height: 25vh">
<div class="title">监测类型</div> <el-row class="text">
<el-col :span="12">可燃性气体浓度</el-col>
<el-row class="text"> <el-col class="text_look" :span="12"><span @click="onTextLook(1, 'third')">查看</span></el-col>
<el-col :span="12">PM2.5</el-col> </el-row>
<el-col class="text_look" :span="12"><span @click="onTextLook(1, 'first')">查看</span></el-col>
</el-row> </div>
<el-row class="text"> <br />
<el-col :span="12">PM10</el-col>
<el-col class="text_look" :span="12"><span @click="onTextLook(2, 'second')">查看</span></el-col> <div class="base_left_box_line">
</el-row> <div class="title">视频监控 <span class="position_look" @click="onClickVideo">更多</span></div>
<div class="palyer2">
<el-row class="text"> <LivePlayer v-if="isVideoUrl" ref="player2" :videoUrl="videoUrl" live />
<el-col :span="12">噪音</el-col> <LivePlayer v-else ref="player2" live />
<el-col class="text_look" :span="12"><span @click="onTextLook(3, 'third')">查看</span></el-col> </div>
</el-row> </div>
</div>
<el-row class="text"> </div>
<el-col :span="12">温度</el-col>
<el-col class="text_look" :span="12"><span @click="onTextLook(4, 'fourth')">查看</span></el-col>
</el-row>
<el-row class="text">
<el-col :span="12">湿度</el-col>
<el-col class="text_look" :span="12"><span @click="onTextLook(5, 'fifth')">查看</span></el-col>
</el-row>
<el-row class="text">
<el-col :span="12">气压</el-col>
<el-col class="text_look" :span="12"><span @click="onTextLook(6, 'sixth')">查看</span></el-col>
</el-row>
<el-row class="text">
<el-col :span="12">臭氧</el-col>
<el-col class="text_look" :span="12"><span @click="onTextLook(7, 'seventh')">查看</span></el-col>
</el-row>
<el-row class="text">
<el-col :span="12">一氧化碳</el-col>
<el-col class="text_look" :span="12"><span @click="onTextLook(8, 'eighth')">查看</span></el-col>
</el-row>
</div>
<br>
<div class="base_left_box_line">
<div class="title">视频监控 <span class="position_look" @click="onClickVideo">更多</span> </div>
<div class="palyer2">
<!-- <LivePlayer v-if="isVideoUrl" ref="player2" :videoUrl="videoUrl" live /> -->
<LivePlayer ref="player2" live />
</div>
</div>
</div>
</div>
</template> </template>
<script> <script>
import LivePlayer from '@liveqing/liveplayer' import LivePlayer from '@liveqing/liveplayer'
import eventBus from "@/utils/eventbus" import eventBus from '@/utils/eventbus'
import { grouptree, start } from '@/api' import { grouptree, start } from '@/api'
export default { export default {
data() { data() {
return { return {
dataObj: '', dataObj: '',
videoUrl: '', videoUrl: '',
isVideoUrl: false, isVideoUrl: false,
parentSerial: '', parentSerial: '',
list: [], list: [],
loading: true, loading: true,
} }
}, },
components: { components: {
LivePlayer, LivePlayer,
}, },
mounted() { mounted() {
this.dataObj = this.$store.state.compony_info this.dataObj = this.$store.state.compony_info
}, this.onGrouptree(this.dataObj.name)
},
methods: {
// 关闭页面 methods: {
onClickDel() { // 关闭页面
this.$store.commit("SET_IS_LEFT", false); onClickDel() {
}, this.$store.commit('SET_IS_LEFT', false)
},
// 查看 // 查看
onTextLook(index, params) { onTextLook(index, params) {
this.$store.commit('set_isDxkqDialog', { this.$store.commit('set_isDxkqDialog', {
index, index,
params, params,
}) })
}, },
// 查看视频 // 查看视频
onClickVideo() { onClickVideo() {
const e = { const e = {
parentSerial: this.parentSerial, parentSerial: this.parentSerial,
list: this.list, list: this.list,
} }
eventBus.$emit("dialog_show_video", e); eventBus.$emit('dialog_show_video', e)
} },
},
onGrouptree(name) {
console.log(name)
grouptree().then(res => {
const serial = res[0].serial
this.loading = true
grouptree({
serial,
}).then(res => {
for (let item of res) {
if (item.name == name) {
var code = item.code
}
}
this.isVideoUrl = false
this.list = []
if (!code) {
this.loading = false
return
}
grouptree({
serial,
pcode: code,
}).then(res => {
this.parentSerial = res[0].serial
this.list = res
start({
serial: this.parentSerial,
code: res[0].code,
}).then(res => {
this.isVideoUrl = true
setTimeout(() => {
this.loading = false
}, 1000)
this.videoUrl = res.WS_FLV
})
})
})
})
},
},
} }
</script> </script>
<style lang="scss"> <style lang="scss">
@import '@/assets/scss/var.scss'; @import '@/assets/scss/var.scss';
.dxkq-left { .dxkq-left {
color: #fff; color: #fff;
.base_left_box { .base_left_box {
padding: 2vh; padding: 2vh;
padding-top: 4vh; padding-top: 4vh;
height: 80vh; height: 80vh;
background-image: url('~@/assets/images/kuang.png'); background-image: url('~@/assets/images/kuang.png');
background-size: 100% 100%; background-size: 100% 100%;
img { img {
width: 0.8vw; width: 0.8vw;
position: absolute; position: absolute;
right: 1vw; right: 1vw;
top: 1.2vw; top: 1.2vw;
cursor: pointer; cursor: pointer;
} }
.base_left_box_line { .base_left_box_line {
line-height: 1.5; line-height: 1.5;
margin-top: 1vw; margin-top: 1vw;
.title { .title {
position: relative; position: relative;
color: #02fcfe; color: #02fcfe;
font-size: 1vw; font-size: 1vw;
.position_look { .position_look {
position: absolute; position: absolute;
right: 0; right: 0;
color: #10a1f2; color: #10a1f2;
font-size: 0.8vw; font-size: 0.8vw;
cursor: pointer; cursor: pointer;
} }
} }
.text { .text {
margin: 0.3vw 0; margin: 0.3vw 0;
} }
.text_right { .text_right {
text-align: right; text-align: right;
} }
.text_look { .text_look {
text-align: right; text-align: right;
color: #10a1f2; color: #10a1f2;
cursor: pointer; cursor: pointer;
} }
.palyer2 { .palyer2 {
height: auto; height: auto;
margin-top: 0.5vw; margin-top: 0.5vw;
} }
} }
} }
} }
</style> </style>
\ No newline at end of file
This diff is collapsed.
<template>
<div class="fengxian_right">
<div class="top">
<div class="title">企业风险等级综合评估</div>
<div class="page">
<div class="page_div" v-for="(item, index) in zaixiandongtaijiance" :key="index">
<div class="page_div_son">
<span class="text" :title="item.message">{{ item.name }}风险等级四级</span>
</div>
</div>
</div>
</div>
<div class="top">
<div class="title">
<span>风险报警</span>
<span class="btn_send">一键发送</span>
</div>
<div class="page">
<div class="page_div" v-for="(item, index) in zaixiandongtaijiance2" :key="index">
<div class="page_div_son page_div_son2 ">
<span class="text" :title="item.message">{{ item.name + item.msg }}</span>
</div>
</div>
</div>
</div>
<div class="top">
<div class="title">
<span>企业(行业)安全态势分析</span>
</div>
<div ref="myCharts" class="charts_div"></div>
</div>
</div>
</template>
<script>
import { getFXData } from '@/api/fengxian'
export default {
data() {
return {
zaixiandongtaijiance: [],
zaixiandongtaijiance2: [],
}
},
mounted() {
console.log(this.$store.state.deptData)
this.zaixiandongtaijiance = [
{
name: '山金白音呼布',
},
{
name: '融冠矿业',
},
{
name: '山金阿尔哈达',
},
{
name: '锡林矿业',
},
{
name: '钨矿',
},
]
this.zaixiandongtaijiance2 = [
{
name: '山金白音呼布',
msg: '干滩长测点通信中断',
},
{
name: '融冠矿业',
msg: '监测站2测点通信中断',
},
{
name: '山金阿尔哈达',
msg: '监测站4测点通信中断',
},
{
name: '山金阿尔哈达',
msg: '监测站4测点通信中断',
},
{
name: '山金阿尔哈达',
msg: '监测站8测点通信中断',
},
]
this.init()
},
methods: {
init() {
const myChart = echarts.init(this.$refs.myCharts)
const option = {
color: ['#63caff', '#3608FE'],
grid: {
containLabel: true,
left: 0,
right: 0,
bottom: 30,
top: 10,
},
xAxis: {
axisLabel: {
color: '#c0c3cd',
fontSize: 14,
interval: 0,
},
splitLine: {
show: false,
},
axisLine: {
lineStyle: {
color: '#384267',
width: 1,
type: 'dashed',
},
show: true,
},
data: ['山金白音呼布', '融冠矿业', '山金阿尔哈达', '锡林矿业', '钨矿'],
type: 'category',
},
yAxis: {
axisLabel: {
color: '#c0c3cd',
fontSize: 14,
},
splitLine: {
show: true,
lineStyle: {
color: '#384267',
type: 'dashed',
},
},
axisLine: {
lineStyle: {
color: '#384267',
width: 1,
type: 'dashed',
},
show: true,
},
name: '',
},
dataZoom: [
{
show: true,
height: 12,
xAxisIndex: [0],
bottom: 0,
start: 0,
end: 60,
handleSize: '110%',
handleStyle: {
color: '#d3dee5',
},
textStyle: {
color: '#fff',
},
borderColor: '#90979c',
},
],
series: [
{
data: [200, 85, 112, 275, 305],
type: 'bar',
barWidth: 15,
itemStyle: {
color: {
x: 0,
y: 0,
x2: 0,
y2: 1,
type: 'linear',
global: false,
colorStops: [
{
offset: 0,
color: '#3A1BFD',
},
{
offset: 1,
color: '#3BEFFD',
},
],
},
},
label: {
show: true,
position: 'top',
distance: 10,
color: '#fff',
fontSize: 10,
},
},
],
tooltip: {
trigger: 'item',
show: true,
},
}
myChart.setOption(option, true)
},
},
}
</script>
<style lang="scss">
@import '@/assets/scss/var.scss';
.fengxian_right {
position: absolute;
background: #040624;
width: 18%;
right: 0;
top: 0;
bottom: 10px;
z-index: 99;
color: #7afffd;
padding: 0 1vw;
.title {
height: 4vh;
display: flex;
justify-content: space-between;
font-size: 2vh;
align-items: center;
}
.top {
height: 30vh;
.page {
height: 85%;
overflow-y: auto;
@include scrollbar;
color: #fff;
.page_div {
margin-bottom: 1.5vh;
margin-right: 0.3vw;
display: flex;
align-items: center;
cursor: pointer;
.page_circle {
display: flex;
align-items: center;
justify-content: center;
width: 1.6vw;
height: 1.6vw;
border-radius: 50%;
background-size: 100% 100%;
margin-right: 0.5vw;
}
.page_div_son {
padding: 0.85vh 0.5vw;
flex: 1;
display: flex;
justify-content: space-between;
background-size: 100% 100%;
background-image: url('~@/assets/images/yingji_4_4.png');
.text {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
.page_div_son2 {
background-image: url('~@/assets/images/yingji_3_3.png');
}
}
}
.btn_send {
padding: .3vh .4vw;
font-size: 1.3vh;
color: #ffc107;
border: 1px solid;
border-radius: 5px;
background-color: #ffc1071a;
cursor: pointer;
}
.charts_div {
height: 25vh;
}
}
}
</style>
...@@ -66,7 +66,7 @@ export default { ...@@ -66,7 +66,7 @@ export default {
dept().then(res => { dept().then(res => {
let select_item = this.$store.state.select_item let select_item = this.$store.state.select_item
let arr = [] let arr = []
res.map(item => { res.content.map(item => {
for (let i of select_item) { for (let i of select_item) {
if (item.type == i.id) { if (item.type == i.id) {
item.typeName = i.label item.typeName = i.label
...@@ -427,7 +427,7 @@ export default { ...@@ -427,7 +427,7 @@ export default {
} }
.amap-overviewcontrol { .amap-overviewcontrol {
top: 0vh; bottom: 0vh;
left: 20vw; left: 20vw;
.amap-overview-main { .amap-overview-main {
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<script> <script>
import { timeParse, randNum, unique } from '@/utils' import { timeParse, randNum, unique } from '@/utils'
import { environment } from '@/api' import { environment } from '@/api/weikuangku'
export default { export default {
data() { data() {
return { return {
......
<template> <template>
<el-dialog class="dialog_table" :visible.sync="dialogVisible" top="10vh" width="70%" :before-close="handleClose"> <el-dialog class="dialog_table" :visible.sync="dialogVisible" top="10vh" width="70%" :before-close="handleClose">
<br> <br />
<div class="func_comm"> <!-- <div class="func_comm">
<strong>开始时间</strong>
<!-- <strong>开始时间</strong> <el-date-picker v-model="start_time" @change="onChangeStart" type="datetime" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="start_time" @change="onChangeStart" type="datetime" placeholder="选择日期"></el-date-picker>
<strong>结束时间</strong>
<strong>结束时间</strong> <el-date-picker v-model="stop_time" @change="onChangeStop" type="datetime" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="stop_time" @change="onChangeStop" type="datetime" placeholder="选择日期"></el-date-picker> -->
<strong>检测项</strong>
<strong>检测项</strong> <el-input v-model="inputItem" placeholder="请输入内容" style="width: 10vw"></el-input>
<el-input v-model="inputItem" placeholder="请输入内容" style="width: 10vw"></el-input>
<el-button type="primary" @click="core">查询</el-button>
<el-button type="primary" @click="core">查询</el-button> <el-button type="primary" @click="onVisual">可视化</el-button>
<el-button type="primary" @click="onVisual">可视化</el-button> </div> -->
<el-table :data="tableData" style="width: 100%" height="55vh">
</div> <el-table-column prop="company" label="企业站点">
<el-table :data="tableData" style="width: 100%" height="55vh"> <template>
<el-table-column prop="company" label="企业站点"></el-table-column> <span>{{ companyName }}</span>
<el-table-column prop="location" label="采集站"></el-table-column> </template>
<el-table-column prop="item" label="检测项"></el-table-column> </el-table-column>
<el-table-column prop="value" label="数据值"></el-table-column> <el-table-column prop="location" label="采集站"></el-table-column>
<el-table-column prop="deviceid" label="设备标识"></el-table-column> <el-table-column prop="item" label="检测项"></el-table-column>
<el-table-column prop="insertTime" label="采集时间"></el-table-column> <el-table-column prop="value" label="数据值"></el-table-column>
</el-table> <el-table-column prop="deviceid" label="设备标识"></el-table-column>
<el-pagination layout="prev, pager, next" :total="total" @current-change="handleCurrentChange"></el-pagination> <el-table-column prop="insertTime" label="采集时间"></el-table-column>
</el-dialog> </el-table>
<el-pagination layout="prev, pager, next" :total="total" @current-change="handleCurrentChange"></el-pagination>
</el-dialog>
</template> </template>
<script> <script>
import { timeParse, randNum } from '@/utils' import { timeParse, randNum } from '@/utils'
import { environment } from '@/api' import { environment } from '@/api/weikuangku'
export default { export default {
data() { data() {
return { return {
dialogVisible: false, dialogVisible: false,
inputItem: '', inputItem: '',
start_time: '', start_time: '',
stop_time: '', stop_time: '',
tableData: [], tableData: [],
total: 0, total: 0,
page: 0, page: 0,
}
}, companyName: '',
}
methods: { },
core() {
methods: {
const compony_info = this.$store.state.compony_info core() {
const compony_info = this.$store.state.compony_info
environment({ this.companyName = compony_info.name
page: this.page, environment({
size: 10, page: this.page,
sort: 'id,desc', size: 10,
company: compony_info.name, sort: 'id,desc',
item: this.inputItem, company: compony_info.name,
// 'insertTime': this.start_time, item: this.inputItem,
// 'insertTime': this.stop_time // 'insertTime': this.start_time,
}).then(res => { // 'insertTime': this.stop_time
console.log(res) }).then(res => {
this.tableData = res.content
this.tableData = res.content.map(item => { this.total = res.totalElements
item.insertTime = timeParse(item.insertTime) })
return item
}) this.dialogVisible = true
},
this.total = res.totalElements
}) onVisual() {
this.$store.commit('set_is_show_huan_jing_jian_ce', randNum(12, 100, 1))
this.dialogVisible = true },
},
// 开始时间
onChangeStart(e) {
onVisual() { this.start_time = timeParse(e) // 开始时间
this.$store.commit('set_is_show_huan_jing_jian_ce', randNum(12, 100, 1)) },
},
// 结束时间
// 开始时间 onChangeStop(e) {
onChangeStart(e) { this.stop_time = timeParse(e) // 开始时间
this.start_time = timeParse(e); // 开始时间 },
},
onClickSelect() {},
// 结束时间
onChangeStop(e) { handleClose() {
this.stop_time = timeParse(e); // 开始时间 this.dialogVisible = false
}, },
onClickSelect() { handleCurrentChange(e) {
this.page = e - 1
}, this.core()
},
handleClose() { },
this.dialogVisible = false
}, computed: {
is_show_huan_jing_jian_ce_table() {
handleCurrentChange(e) { return this.$store.state.is_show_huan_jing_jian_ce_table
this.page = e - 1 },
this.core() },
}
}, watch: {
is_show_huan_jing_jian_ce_table() {
this.core()
computed: { },
is_show_huan_jing_jian_ce_table() { },
return this.$store.state.is_show_huan_jing_jian_ce_table
}
},
watch: {
is_show_huan_jing_jian_ce_table() {
this.core()
}
}
} }
</script> </script>
<style lang="scss"> <style lang="scss">
.dialog_table { .dialog_table {
.el-table::before { .el-table::before {
height: 0; height: 0;
} }
.el-dialog__body { .el-dialog__body {
padding-top: 0; padding-top: 0;
.func_comm { .func_comm {
margin-bottom: 1vh; margin-bottom: 1vh;
strong { strong {
margin-right: 0.5vw; margin-right: 0.5vw;
} }
.el-button { .el-button {
padding: 0; padding: 0;
width: 5vw; width: 5vw;
height: 40px; height: 40px;
} }
} }
} }
} }
</style> </style>
\ No newline at end of file
This diff is collapsed.
...@@ -15,6 +15,8 @@ ...@@ -15,6 +15,8 @@
<script> <script>
import { timeParse, randNum, unique } from '@/utils' import { timeParse, randNum, unique } from '@/utils'
import { wkk } from '@/api' import { wkk } from '@/api'
import { jiangYuLiang, jinRunXian, ganTan, kuShuiWei, biaoMianWeiYi, wkkAlarmMsg } from '@/api/weikuangku'
export default { export default {
data() { data() {
return { return {
......
This diff is collapsed.
<template> <template>
<div class="yingji_right"> <div class="yingji_right">
<div class="top"> <div class="top">
<div class="title">突发事件信息</div> <div class="title">历史研判</div>
<div class="page"> <div class="page">
<div class="page_input"> <div class="page_div" style="margin-bottom: 1vh;" v-for="(item, index) in dataList" :key="index">
<el-input size="mini" placeholder="查看当前企业预案" suffix-icon="el-icon-search"></el-input> <div class="page_div_son">
<span class="page_look">查看</span> <span> {{ item.name }} {{ item.warningHiddenTroubleType }}</span>
<span class="time" @click="onClickWarning(item)">查看详情</span>
</div>
</div> </div>
</div>
</div>
<div class="top">
<div class="title">突发事件信息</div>
<div class="page">
<div class="page_div" v-for="(item, index) in rightList" :key="index"> <div class="page_div" v-for="(item, index) in rightList" :key="index">
<span class="icon"></span> <span class="icon"></span>
<div class="page_div_right"> <div class="page_div_right">
<div class="text">{{ item.title }}</div> <div class="text">{{ item.name }}</div>
<div class="func" @click="onClickFunc(item)">应急预案</div> <div class="func" @click="onClickFunc(item)">应急预案</div>
</div> </div>
</div> </div>
...@@ -22,40 +29,49 @@ ...@@ -22,40 +29,49 @@
<div class="title">重大隐患说明</div> <div class="title">重大隐患说明</div>
<div class="page"> <div class="page">
<div class="page--line" v-for="(item, index) in contextList" :key="index"> <div class="page--line" v-for="(item, index) in contextList" :key="index">
<span>{{ item.title }}</span> <span style="color: #fff">{{ item.title }}</span>
<span @click="onContextLook(item)" style="cursor: pointer;">查看</span> <span @click="onContextLook(item)" style="cursor: pointer;">查看</span>
</div> </div>
</div> </div>
</div> </div>
<div class="center"> <div class="bottom" style="height: 18vh;">
<div class="title"> <div class="title">
<span>重大安全生产事故隐患分析</span> <span>重大安全生产事故隐患分析</span>
</div> </div>
<div class="bottom--context">
<div class="bottom--context--ct_line" v-for="(item, index) in big_weixianList" :key="index">
<span v-if="item.companycode == '152525001'" style="color: #fff">融冠矿业</span>
<span v-if="item.companycode == '152525002'" style="color: #fff">锡林矿业</span>
<span v-if="item.companycode == '152525003'" style="color: #fff">山金阿尔哈达</span>
<span v-if="item.companycode == '152525004'" style="color: #fff">钨矿</span>
<span v-if="item.companycode == '152525005'" style="color: #fff">山金白音呼布</span>
<span>{{ item.sid }}</span>
</div>
</div>
</div> </div>
<div class="dialog" v-if="is_dialog"> <div class="dialog" v-if="is_dialog">
<img src="@/assets/images/error.png" class="error" @click="onClickError" /> <img src="@/assets/images/error.png" class="error" @click="onClickError" />
<div class="page"> <div class="page">
<div class="text">{{ rightListDialog.title }}</div> <div class="text">{{ rightListDialog.name }}</div>
<div class="page_div"> <div class="page_div">
<br /> <br />
<div class="title">响应级别</div> <div class="title">响应级别</div>
<div class="page_line">{{ rightListDialog.level }}</div> <div class="page_line">{{ rightListDialog.grade }}</div>
</div> </div>
<div class="page_div"> <div class="page_div">
<div class="title">突发原因</div> <div class="title">突发原因</div>
<div class="page_div_text">{{ rightListDialog.reply }}</div> <div class="page_div_text">{{ rightListDialog.warnType }}</div>
</div> </div>
<div class="page_div"> <div class="page_div">
<div class="title">响应措施</div> <div class="title">响应措施</div>
<div class="page_div_text page_div_text2">{{ rightListDialog.content }}</div> <div class="page_div_text page_div_text2">{{ rightListDialog.annex }}</div>
</div> </div>
<!-- <el-button class="btn" type="warning" @click="onBtn">确认启动</el-button> --> <!-- <el-button class="btn" type="warning" @click="onBtn">确认启动</el-button> -->
...@@ -74,7 +90,8 @@ ...@@ -74,7 +90,8 @@
</template> </template>
<script> <script>
import { emergencyPlan } from '@/api' import { emergencyPlan, undergroundSeriousHiddenTrouble, findHiddenTimeout} from '@/api'
import { getYJContingencyPlanData } from '@/api/yinhuan'
import { contextList } from '@/json/yinhuan.js' import { contextList } from '@/json/yinhuan.js'
export default { export default {
...@@ -83,62 +100,56 @@ export default { ...@@ -83,62 +100,56 @@ export default {
is_dialog: false, is_dialog: false,
is_info_dialog_context: false, is_info_dialog_context: false,
one_1: require('@/assets/images/yingji_1_1.png'),
two_1: require('@/assets/images/yingji_2_2.png'),
three_1: require('@/assets/images/yingji_3_3.png'),
four_1: require('@/assets/images/yingji_4_4.png'),
arrList: [],
rightList: [], rightList: [],
rightListDialog: '', rightListDialog: '',
contextList: [], contextList: [],
contextListParams: [], contextListParams: [],
dataList: [],
big_weixianList: [], //重大安全生产事故隐患分析
} }
}, },
mounted() { mounted() {
var arr = [ // 重大隐患说明
{
text: '一级风险',
url: this.one_1,
color: '#FB0B21',
},
{
text: '二级风险',
url: this.two_1,
color: '#FC5004',
},
{
text: '三级风险',
url: this.three_1,
color: '#D9DB12',
},
{
text: '四级风险',
url: this.four_1,
color: '#0533FC',
},
]
this.contextList = contextList this.contextList = contextList
console.log(contextList)
this.arrList = arr // 重大安全生产事故隐患分析
undergroundSeriousHiddenTrouble().then(res => {
this.big_weixianList = res.content.map(item => {
return {
companycode: item.companycode,
sid: item.sid,
}
})
})
emergencyPlan().then(res => { getYJContingencyPlanData().then(res => {
this.rightList = res this.rightList = res
}) })
this.onFindHiddenTimeout()
}, },
methods: { methods: {
// 隐患
onFindHiddenTimeout() {
findHiddenTimeout().then(res => {
let deptData = this.$store.state.deptData // 所有企业
this.dataList = res.content.map(item => {
for (let contx of deptData) {
if (contx.companycode == item.companycode) {
item.name = contx.name
}
}
return item
})
})
},
onClickFunc(e) { onClickFunc(e) {
this.rightListDialog = e this.rightListDialog = e
this.is_dialog = true this.is_dialog = true
...@@ -182,39 +193,15 @@ export default { ...@@ -182,39 +193,15 @@ export default {
} }
.top { .top {
height: 35vh; height: 20vh;
.page { .page {
height: 85%; height: 85%;
.page_input {
display: flex;
align-items: center;
width: 100%;
.page_look {
width: 3vw;
display: flex;
justify-content: center;
cursor: pointer;
}
.el-input__inner {
background-image: url('~@/assets/images/yingji_input.png');
background-color: transparent;
background-size: 100% 100%;
border: none;
}
.el-input__prefix,
.el-input__suffix {
color: #7afffd;
}
}
.page_div { .page_div {
display: flex; display: flex;
align-items: center; align-items: center;
width: 100%; width: 100%;
height: 15%; height: 3.6vh;
.icon { .icon {
width: 1.4vw; width: 1.4vw;
height: 1.4vw; height: 1.4vw;
...@@ -244,57 +231,20 @@ export default { ...@@ -244,57 +231,20 @@ export default {
} }
} }
} }
}
}
}
.center {
height: 23vh;
font-size: 1.5vh;
.title {
display: flex;
justify-content: space-between;
}
.btn {
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 1vh;
padding: 0.5vh 0;
border-radius: 4px;
background-image: url('~@/assets/images/yingji_input.png');
background-size: 100% 100%;
width: 3vw;
}
.page {
height: 19vh;
.page_div {
display: flex;
height: 8vh;
margin-bottom: 2%;
background-image: url('~@/assets/images/yingji_block.png');
background-size: 100% 100%;
.left { .page_div_son {
padding: 0.85vh 0.5vw;
flex: 1;
display: flex; display: flex;
align-items: center; justify-content: space-between;
justify-content: center; background-size: 100% 100%;
width: 30%; background-image: url('~@/assets/images/yingji_4_4.png');
color: #fff;
}
.right {
padding-top: 5%;
color: #d5dafa; .text {
.right_block { overflow: hidden;
display: flex; text-overflow: ellipsis;
align-items: center; white-space: nowrap;
height: 40%; width: 11vw;
} }
} }
} }
...@@ -302,14 +252,26 @@ export default { ...@@ -302,14 +252,26 @@ export default {
} }
.bottom { .bottom {
height: 32vh; height: 30vh;
overflow: hidden; overflow: hidden;
overflow-y: auto;
.page { .page {
&--line { &--line {
display: flex; display: flex;
width: 100%; width: 100%;
justify-content: space-between; justify-content: space-between;
line-height: 2; line-height: 1.8;
}
}
&--context {
height: 84%;
&--ct_line {
display: flex;
align-items: center;
justify-content: space-between;
line-height: 1.8;
} }
} }
} }
......
...@@ -12,7 +12,7 @@ export default { ...@@ -12,7 +12,7 @@ export default {
if (title == '锡林矿业') { if (title == '锡林矿业') {
window.open('http://dwqdp.jingkongyun.com/three/?id=5', '_blank'); window.open('http://dwqdp.jingkongyun.com/three/?id=5', '_blank');
} else if (title == '融冠矿业') { } else if (title == '融冠矿业') {
window.open('http://dwqdp.jingkongyun.com/three/?id=4', '_blank'); window.open('http://ndwqu3.jingkongyun.com/3DRongGuan/', '_blank');
} else if (title == '钨矿') { } else if (title == '钨矿') {
window.open('http://dwqdp.jingkongyun.com/three/?id=3', '_blank'); window.open('http://dwqdp.jingkongyun.com/three/?id=3', '_blank');
} else if (title == '山金阿尔哈达') { } else if (title == '山金阿尔哈达') {
......
...@@ -7,7 +7,7 @@ const routes = [ ...@@ -7,7 +7,7 @@ const routes = [
{ {
path: '/home', path: '/',
name: 'home', name: 'home',
components: { components: {
default: () => import("../views/Home.vue"), default: () => import("../views/Home.vue"),
...@@ -37,14 +37,14 @@ const routes = [ ...@@ -37,14 +37,14 @@ const routes = [
// } // }
{ // {
path: '/', // path: '/',
name: 'login', // name: 'login',
components: { // components: {
default: () => import('../views/Login.vue') // default: () => import('../views/Login.vue')
} // }
} // }
] ]
......
...@@ -18,6 +18,8 @@ export default new Vuex.Store({ ...@@ -18,6 +18,8 @@ export default new Vuex.Store({
isLeft: false, // 显示 左边栏 isLeft: false, // 显示 左边栏
isRight: false, // 显示 右边栏 isRight: false, // 显示 右边栏
deptData: [], // 所有企业
isLtkDialog: false, // 露天矿 弹框 isLtkDialog: false, // 露天矿 弹框
isDxkqDialog: false, // 地下矿区 弹框 isDxkqDialog: false, // 地下矿区 弹框
...@@ -35,6 +37,11 @@ export default new Vuex.Store({ ...@@ -35,6 +37,11 @@ export default new Vuex.Store({
// 企业类型 // 企业类型
SET_TYPE(state, value) { SET_TYPE(state, value) {
state.select_item = value state.select_item = value
},
// 获取所有企业
SET_deptData(state, value) {
state.deptData = value
}, },
SET_TITLE(state, value) { SET_TITLE(state, value) {
......
...@@ -18,7 +18,7 @@ const service = axios.create({ ...@@ -18,7 +18,7 @@ const service = axios.create({
service.interceptors.request.use(config => { service.interceptors.request.use(config => {
if (!config.headers['token']) { if (!config.headers['token']) {
config.headers['token'] = window.localStorage.getItem('token') config.headers['Authorization'] = 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiIyYmUyNmEzZTg3Njc0NzAwYjQyODY2YjgzNmQwZDQ5OSIsInVzZXIiOiJhZG1pbiIsInN1YiI6ImFkbWluIn0.qlg04WGthnLo0ugvJtKBmJQXNEuxqT3F9bZDdF_iWHvx-YRsWtNY9DUZW-HOC0F_I2dCMsXVtVmed7NcBIItqA'
} }
return config; return config;
......
import axios from 'axios' import axios from 'axios'
import { import { Message, Notification } from 'element-ui'
Message,
Notification
} from 'element-ui';
const service = axios.create({ const service = axios.create({
baseURL: 'http://39.98.150.124:8888/', // baseURL: 'http://39.98.150.124:8888/',
// baseURL: 'http://192.168.3.66:8888/', baseURL: 'http://39.98.150.124:8000/',
timeout: 30000 // baseURL: 'http://192.168.1.123:8000/',
timeout: 30000,
}) })
service.interceptors.response.use(
response => {
return response.data;
},
error => {
if (error.response.status) {
const responseCode = error.response.status
switch (responseCode) {
case 400:
// Message.error('操作失败');
break;
// token 过期
case 401:
Notification({
title: '登录过期,请重新登录',
duration: 2000,
type: 'warning'
});
setTimeout(() => {
window.localStorage.removeItem('token');
window.location = '#/'
}, 1000)
break;
default:
break
}
return error.response.data;
}
}
service.interceptors.response.use(
response => {
return response.data
},
error => {
if (error.response.status) {
const responseCode = error.response.status
switch (responseCode) {
case 400:
// Message.error('操作失败');
break
// token 过期
case 401:
Notification({
title: '登录过期,请重新登录',
duration: 2000,
type: 'warning',
})
setTimeout(() => {
window.localStorage.removeItem('token')
window.location = '#/'
}, 1000)
break
default:
break
}
return error.response.data
}
}
) )
export default service; export default service
\ No newline at end of file
...@@ -6,7 +6,7 @@ import { ...@@ -6,7 +6,7 @@ import {
} from 'element-ui'; } from 'element-ui';
const service = axios.create({ const service = axios.create({
baseURL: 'http://47.92.82.212:10000/', baseURL: 'http://47.92.82.212:10000/', //视频
timeout: 30000 timeout: 30000
}) })
......
import axios from 'axios'
import { Message, Notification } from 'element-ui'
const service = axios.create({
// baseURL: 'http://192.168.1.123:8000/', //小葱
baseURL: 'http://39.98.150.124:8000/',
timeout: 30000,
})
service.interceptors.response.use(
response => {
return response.data
},
error => {
if (error.response.status) {
const responseCode = error.response.status
switch (responseCode) {
case 400:
// Message.error('操作失败');
break
// token 过期
case 401:
Notification({
title: '登录过期,请重新登录',
duration: 2000,
type: 'warning',
})
setTimeout(() => {
window.localStorage.removeItem('token')
window.location = '#/'
}, 1000)
break
default:
break
}
return error.response.data
}
}
)
export default service
import axios from 'axios'
import { Message, Notification } from 'element-ui'
const service = axios.create({
// baseURL: 'http://192.168.3.216:8000/', // 大龙
// baseURL: 'http://192.168.1.123:8000/', //小葱
baseURL: 'http://39.98.150.124:8000/',
timeout: 30000,
})
service.interceptors.response.use(
response => {
return response.data
},
error => {
if (error.response.status) {
const responseCode = error.response.status
switch (responseCode) {
case 400:
// Message.error('操作失败');
break
// token 过期
case 401:
Notification({
title: '登录过期,请重新登录',
duration: 2000,
type: 'warning',
})
setTimeout(() => {
window.localStorage.removeItem('token')
window.location = '#/'
}, 1000)
break
default:
break
}
return error.response.data
}
}
)
export default service
...@@ -16,6 +16,9 @@ ...@@ -16,6 +16,9 @@
<yingjiRight v-if="is_yingji" class="fadeInRight animated"></yingjiRight> <yingjiRight v-if="is_yingji" class="fadeInRight animated"></yingjiRight>
<yingjiLeft v-if="is_yingji" class="animated fadeInLeft"></yingjiLeft> <yingjiLeft v-if="is_yingji" class="animated fadeInLeft"></yingjiLeft>
<fenxianRight v-if="is_fengxian" class="fadeInRight animated"></fenxianRight>
<fenxianLeft v-if="is_fengxian" class="animated fadeInLeft"></fenxianLeft>
<yinhuanLeft v-if="is_yinhuan" class="animated fadeInLeft"></yinhuanLeft> <yinhuanLeft v-if="is_yinhuan" class="animated fadeInLeft"></yinhuanLeft>
<yinhuanRight v-if="is_yinhuan" class="fadeInRight animated"></yinhuanRight> <yinhuanRight v-if="is_yinhuan" class="fadeInRight animated"></yinhuanRight>
...@@ -51,6 +54,9 @@ import dxkqDialog from '@/components/dxkq/dxkqDialog' ...@@ -51,6 +54,9 @@ import dxkqDialog from '@/components/dxkq/dxkqDialog'
import yingjiRight from '@/components/yingji/yingjiRight' import yingjiRight from '@/components/yingji/yingjiRight'
import yingjiLeft from '@/components/yingji/yingjiLeft' import yingjiLeft from '@/components/yingji/yingjiLeft'
import fenxianLeft from '@/components/fenxian/fenxian_left'
import fenxianRight from '@/components/fenxian/fenxian_right'
import yinhuanLeft from '@/components/yinhuan/yinhuan_left' import yinhuanLeft from '@/components/yinhuan/yinhuan_left'
import yinhuanRight from '@/components/yinhuan/yinhuan_right' import yinhuanRight from '@/components/yinhuan/yinhuan_right'
...@@ -66,6 +72,7 @@ export default { ...@@ -66,6 +72,7 @@ export default {
isDxkq: false, isDxkq: false,
is_yingji: false, // 应急处置 is_yingji: false, // 应急处置
is_fengxian: false, // 风险处置
is_yinhuan: false, // 隐患排查 is_yinhuan: false, // 隐患排查
} }
}, },
...@@ -98,12 +105,20 @@ export default { ...@@ -98,12 +105,20 @@ export default {
this.fengx_xian_ping_gu = false this.fengx_xian_ping_gu = false
this.is_yingji = false this.is_yingji = false
this.is_yinhuan = false this.is_yinhuan = false
this.is_fengxian = false
if (e === false) return if (e === false) return
const compony_info = this.$store.state.compony_info const compony_info = this.$store.state.compony_info
const title_type = compony_info.typeName const title_type = compony_info.typeName
if (e.itemIndex == 2) {
this.$store.commit('SET_IS_Right', false)
this.is_fengxian = true
return
}
if (e.itemIndex == 3) { if (e.itemIndex == 3) {
this.$store.commit('SET_IS_Right', false) this.$store.commit('SET_IS_Right', false)
this.is_yinhuan = true this.is_yinhuan = true
...@@ -165,6 +180,9 @@ export default { ...@@ -165,6 +180,9 @@ export default {
yinhuanLeft, yinhuanLeft,
yinhuanRight, yinhuanRight,
fenxianLeft,
fenxianRight,
CommVideo, CommVideo,
}, },
} }
......
<?xml version="1.0" encoding="utf-8"?>
<cross-domain-policy>
<allow-access-from domain="*"/>
</cross-domain-policy>
\ No newline at end of file
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta name=renderer content=webkit><meta name=force-rendering content=webkit><meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1"><meta name=viewport content="width=device-width,initial-scale=1"><title>安全生产风险智能监测系统</title><script src=./js/liveplayer-lib.min.js></script><script src="https://webapi.amap.com/maps?v=1.4.15&key=bfa930cbec820fc1c16f8f54348f98e3&plugin=Map3D,AMap.DistrictSearch,AMap.Geocoder,AMap.MouseTool,AMap.Autocomplete,AMap.PlaceSearch"></script><link rel=stylesheet href=https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css><script src=https://cdn.bootcss.com/echarts/4.6.0/echarts.min.js></script><script src=https://www.thingjs.com/static/historyVersion/thing.min.js></script><script src=https://www.thingjs.com/static/release/thing.widget.min.js></script><link href=static/css/chunk-42868b46.cec70464.css rel=prefetch><link href=static/css/chunk-86a8c330.993ce4e6.css rel=prefetch><link href=static/css/chunk-c692b744.b52443eb.css rel=prefetch><link href=static/js/chunk-00f444cb.2de59d4f.js rel=prefetch><link href=static/js/chunk-42868b46.3b042a11.js rel=prefetch><link href=static/js/chunk-573f826d.febee051.js rel=prefetch><link href=static/js/chunk-86a8c330.4f73b8a0.js rel=prefetch><link href=static/js/chunk-9cff3828.c3cc64da.js rel=prefetch><link href=static/js/chunk-c692b744.43227dd7.js rel=prefetch><link href=static/css/app.6f0067ad.css rel=preload as=style><link href=static/css/chunk-vendors.e977a650.css rel=preload as=style><link href=static/js/app.46886344.js rel=preload as=script><link href=static/js/chunk-vendors.21454246.js rel=preload as=script><link href=static/css/chunk-vendors.e977a650.css rel=stylesheet><link href=static/css/app.6f0067ad.css rel=stylesheet></head><body><div id=app></div><script src=static/js/chunk-vendors.21454246.js></script><script src=static/js/app.46886344.js></script></body></html>
\ No newline at end of file
This diff is collapsed.
*{-webkit-box-sizing:border-box;box-sizing:border-box}body,html{width:100%;height:100vh;overflow:hidden}@font-face{font-family:SourceHanSansCN-Medium;src:url(../../static/fonts/SourceHanSansCN-Medium.4abbfb49.otf)}#app{font-family:SourceHanSansCN-Medium;width:100vw;height:100%}
\ No newline at end of file
This diff is collapsed.
.base-left{color:#fff}.base-left .base_left_box{padding:2vh;padding-top:4vh;height:80vh;background-image:url(../../static/img/kuang.0b3142b2.png);background-size:100% 100%}.base-left .base_left_box img{width:.8vw;position:absolute;right:1vw;top:1.2vw;cursor:pointer}.base-left .base_left_box .base_left_box_line{line-height:1.5;margin-top:1vh}.base-left .base_left_box .base_left_box_line .title{position:relative;color:#02fcfe;font-size:1vw}.base-left .base_left_box .base_left_box_line .title .position_look{position:absolute;right:0;color:#10a1f2;font-size:.8vw;cursor:pointer}.base-left .base_left_box .base_left_box_line .text{margin:.5vh 0}.base-left .base_left_box .base_left_box_line .text_right{text-align:right}.base-left .base_left_box .base_left_box_line .text_look{text-align:right;color:#10a1f2;cursor:pointer}.base-left .base_left_box .base_left_box_line .palyer2{height:auto;margin-top:.5vh}
\ No newline at end of file
.base-right .base_border_box{background-image:url(../../static/img/bg.9e9f5746.png);background-size:100% 100%;padding-bottom:2vh}.base-right .base_border_box .btn,.base-right .base_border_box .title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%;height:5vh;margin-top:2vh;background:#021240;cursor:pointer}.base-right .base_border_box .title{background:transparent;color:#02fcfe;padding-top:1vw;font-size:1vw;margin-top:0}.base-right .base_border_box .page_btn{padding:0 1vw;color:#efb312;font-size:.8vw;height:57vh;overflow-y:auto;cursor:pointer}.base-right .base_border_box .page_btn::-webkit-scrollbar{width:.3vw;height:5px}.base-right .base_border_box .page_btn::-webkit-scrollbar-thumb{border-radius:10px;background:#02defa;margin-right:10px}.base-right .base_border_box .page_btn::-webkit-scrollbar-thumb:hover{background-color:#02defa}.base-right .base_border_box .page_btn::-webkit-scrollbar-track{border-radius:10px;background:hsla(0,0%,100%,.1);margin-right:10px}.base-right .base_border_box .activeClass{border:1px solid #efb312}.base-right .img_position{position:absolute;top:50%;left:-2vw;cursor:pointer;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:999}.base-right .tian_qi{width:100%;height:25vh;position:fixed;bottom:0;z-index:99;color:#02defa;background-image:url(../../static/img/tian_qi.280a4ce4.png);background-size:100% 100%}.base-right .tian_qi .tian_qi_title{height:5vh;padding:.3vw;font-size:1vw}.base-right .tian_qi .tian_qi_body,.base-right .tian_qi .tian_qi_title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.base-right .tian_qi .tian_qi_body{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.base-right .tian_qi .tian_qi_body span{line-height:1.7}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-573f826d"],{7975:function(e,t,n){"use strict";n.r(t);var a=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("header",[n("div",{staticClass:"flex-btn"},[n("div",{staticClass:"base-btn"},[n("div",{staticClass:"base-btn-part"},[n("span",{class:{span_active:1==e.lineActive},on:{click:function(t){return e.onActive(1)}}},[e._v("综合数据")]),n("span",{class:{span_active:2==e.lineActive},on:{click:function(t){return e.onActive(2)}}},[e._v("风险监测")]),n("span",{class:{span_active:3==e.lineActive},on:{click:function(t){return e.onActive(3)}}},[e._v("隐患排查")])]),n("div",{staticClass:"base-btn-part"},[n("el-select",{attrs:{placeholder:"请选择"},on:{change:e.ChangeSelect},model:{value:e.value,callback:function(t){e.value=t},expression:"value"}},e._l(e.options,(function(e){return n("el-option",{key:e.value,attrs:{label:e.label,value:e.value}})})),1),n("span",{on:{click:function(t){return e.onClickActive(4)}}},[e._v("管理系统")])],1)])])])},i=[],l=(n("a4d3"),n("e01a"),n("d28b"),n("d3b7"),n("3ca3"),n("ddb0"),n("c75e"),n("ed08")),c={data:function(){return{lineActive:1,options:[{value:"1",label:"非煤矿山"},{value:"2",label:"煤矿"},{value:"3",label:"危险化学品企业"},{value:"4",label:"冶金工贸"}],value:"1"}},mounted:function(){this.onClickActive(1,"非煤矿山")},methods:{onClickActive:function(e,t){4!==e?(this.$store.commit("SET_IS_LEFT",!1),this.$store.commit("SET_TITLE",t)):window.open("http://dwq.jingkongyun.com/")},onActive:function(e){this.lineActive=e,this.$store.commit("set_BaseLeftIndex",e);var t={itemIndex:e,randNum:Object(l["a"])(1,1e4,1)};this.$store.commit("SET_IS_LEFT",t)},ChangeSelect:function(e){var t=!0,n=!1,a=void 0;try{for(var i,l=this.options[Symbol.iterator]();!(t=(i=l.next()).done);t=!0){var c=i.value;if(c.value==e)return void this.onClickActive(c.value,c.label)}}catch(o){n=!0,a=o}finally{try{t||null==l.return||l.return()}finally{if(n)throw a}}}}},o=c,s=n("2877"),u=Object(s["a"])(o,a,i,!1,null,null,null);t["default"]=u.exports},c75e:function(e,t,n){"use strict";var a=n("2b0e");t["a"]=new a["default"]({name:"eventbus"})}}]);
\ No newline at end of file
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-86a8c330"],{2731:function(t,a,s){"use strict";s.r(a);var o=function(){var t=this,a=t.$createElement,o=t._self._c||a;return o("div",{staticClass:"base-left"},[o("div",{staticClass:"base_left_box"},[o("img",{attrs:{src:s("fa93")},on:{click:t.onClickDel}}),o("div",{staticClass:"base_left_box_line"},[o("div",{staticClass:"title"},[t._v("基础信息")]),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:8}},[t._v("名称")]),o("el-col",{staticClass:"text_right",attrs:{span:16}},[t._v(t._s(t.dataObj.name))])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:8}},[t._v("地理位置")]),o("el-col",{staticClass:"text_right",attrs:{span:16}},[t._v(t._s(t.dataObj.address))])],1)],1),o("div",{staticClass:"base_left_box_line"},[o("div",{staticClass:"title"},[t._v("监测类型")]),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("环境监测")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:t.onTextLookEnv}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("人员定位")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(0,"rydw")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("降雨量")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(1,"jyl")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("浸润线")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(2,"jrx")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("库水位")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(3,"ksw")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("干滩")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(4,"gt")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("表面位移")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(5,"bmwy")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("预警值")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(7,"yjz")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("报警记录")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:function(a){return t.onTextLook(6,"yj")}}},[t._v("查看")])])],1),o("el-row",{staticClass:"text"},[o("el-col",{attrs:{span:12}},[t._v("三维")]),o("el-col",{staticClass:"text_look",attrs:{span:12}},[o("span",{on:{click:t.onClickthree}},[t._v("查看")])])],1)],1),o("div",{staticClass:"base_left_box_line"},[o("div",{staticClass:"title"},[t._v("视频监控 "),o("span",{staticClass:"position_look",on:{click:t.onClickVideo}},[t._v("更多")])]),o("div",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],staticClass:"palyer2"},[t.isVideoUrl?o("LivePlayer",{ref:"player2",attrs:{videoUrl:t.videoUrl,live:""}}):o("LivePlayer",{ref:"player2",attrs:{live:""}})],1)])])])},e=[],l=(s("a4d3"),s("e01a"),s("d28b"),s("b0c0"),s("d3b7"),s("3ca3"),s("ddb0"),s("3f2c")),n=s.n(l),i=s("c75e"),c=s("ed08"),r=s("365c"),_=s("1b62"),v={mixins:[_["a"]],data:function(){return{dataObj:"",videoUrl:"",isVideoUrl:!1,parentSerial:"",list:[],loading:!0}},components:{LivePlayer:n.a},mounted:function(){this.$once("hook:beforeDestroy",(function(){i["a"].$off("dialog_show",null),i["a"].$off("dialog_show_video",null)}))},methods:{onGrouptree:function(t){var a=this;Object(r["g"])().then((function(s){var o=s[0].serial;a.loading=!0,Object(r["g"])({serial:o}).then((function(s){var e=!0,l=!1,n=void 0;try{for(var i,c=s[Symbol.iterator]();!(e=(i=c.next()).done);e=!0){var _=i.value;if(_.name==t)var v=_.code}}catch(d){l=!0,n=d}finally{try{e||null==c.return||c.return()}finally{if(l)throw n}}a.isVideoUrl=!1,a.list=[],v?Object(r["g"])({serial:o,pcode:v}).then((function(t){a.parentSerial=t[0].serial,a.list=t,Object(r["m"])({serial:a.parentSerial,code:t[0].code}).then((function(t){a.isVideoUrl=!0,setTimeout((function(){a.loading=!1}),1e3),a.videoUrl=t.WS_FLV}))})):a.loading=!1}))}))},onTextLook:function(t,a){var s={index:t,activeName:a,dataObj:this.dataObj};i["a"].$emit("dialog_show",s)},onTextLookEnv:function(){this.$store.commit("set_is_show_huan_jing_jian_ce_table",Object(c["a"])(12,100,1))},onClickVideo:function(){var t={parentSerial:this.parentSerial,list:this.list};i["a"].$emit("dialog_show_video",t)}},computed:{compony_info:function(){return this.$store.state.compony_info}},watch:{compony_info:function(t){this.onGrouptree(t.name),this.dataObj=t}}},d=v,p=(s("dc0c"),s("2877")),u=Object(p["a"])(d,o,e,!1,null,null,null);a["default"]=u.exports},"2a07":function(t,a,s){},dc0c:function(t,a,s){"use strict";var o=s("2a07"),e=s.n(o);e.a}}]);
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment