#129驾驶舱标题缺失

This commit is contained in:
shijing 2024-03-04 17:13:02 +08:00
parent 0b60e40971
commit 9c6c796f0d
1 changed files with 480 additions and 466 deletions

View File

@ -2,7 +2,7 @@
<div class="screen-main">
<!--头部展示-->
<div class="screen-header">
<div class="header-left-bg">{{$store.state.global.baseName}}</div>
<div class="header-left-bg">{{ sys_base_name }}</div>
<div class="header-right-action">
<div class="right-action-clock">
<span class="action-time">{{ currentDay }}</span>
@ -50,17 +50,9 @@
</div> -->
</div>
<div class="drop-content" v-if="showUserSelect">
<el-tree
ref="group"
id="bigScreenTree"
node-key="id"
:data="postList"
show-checkbox
:current-node-key="''"
:highlight-current="true"
:expand-on-click-node="true"
@check="handleChange"
></el-tree>
<el-tree ref="group" id="bigScreenTree" node-key="id" :data="postList" show-checkbox
:current-node-key="''" :highlight-current="true" :expand-on-click-node="true"
@check="handleChange"></el-tree>
<el-button type="primary" @click="userFilter">查看</el-button>
</div>
<div class="filter-action showroam">
@ -111,8 +103,7 @@
<div class="item-info">
<div title="员工" class="normal">正式员工</div>
<div class="bottom">
<span class="large">{{ userCount.count_employee }}</span>&nbsp;<span
class="normal"></span>
<span class="large">{{ userCount.count_employee }}</span>&nbsp;<span class="normal"></span>
</div>
</div>
</div>
@ -140,8 +131,7 @@
<div class="item-info">
<div title="司机" class="normal">司机</div>
<div class="bottom">
<span class="large">{{ userCount.count_driver }}</span>&nbsp;<span
class="normal"></span>
<span class="large">{{ userCount.count_driver }}</span>&nbsp;<span class="normal"></span>
</div>
</div>
</div>
@ -198,8 +188,8 @@
<span class="multiple-select-label">全部</span>
</div>
<div v-for="typeItem in warningTypes" :key="typeItem.id"
class="multiple-select-li" @click="warningTypeSelected(typeItem.id,typeItem.name)">
<div v-for="typeItem in warningTypes" :key="typeItem.id" class="multiple-select-li"
@click="warningTypeSelected(typeItem.id, typeItem.name)">
<span title="超员报警" class="multiple-select-label">{{ typeItem.name }}</span>
</div>
</div>
@ -255,13 +245,18 @@
</div>
<div class="detail-content">
<div class="content-head">
<div @click="areaItemHandle(1)" :class="{'areaActive':areaShowType==1,'areaNavItem':1}" style="color:#ffffff">作业</div>
<div @click="areaItemHandle(2)" :class="{'areaActive':areaShowType==2,'areaNavItem':1}" style="color:#ffffff">监控</div>
<div @click="areaItemHandle(3)" :class="{'areaActive':areaShowType==3,'areaNavItem':1}" style="color:#ffffff">喇叭</div>
<div @click="areaItemHandle(4)" :class="{'areaActive':areaShowType==4,'areaNavItem':1}" style="color:#ffffff">人员</div>
<div @click="areaItemHandle(1)" :class="{ 'areaActive': areaShowType == 1, 'areaNavItem': 1 }"
style="color:#ffffff">作业</div>
<div @click="areaItemHandle(2)" :class="{ 'areaActive': areaShowType == 2, 'areaNavItem': 1 }"
style="color:#ffffff">监控</div>
<div @click="areaItemHandle(3)" :class="{ 'areaActive': areaShowType == 3, 'areaNavItem': 1 }"
style="color:#ffffff">喇叭</div>
<div @click="areaItemHandle(4)" :class="{ 'areaActive': areaShowType == 4, 'areaNavItem': 1 }"
style="color:#ffffff">人员</div>
</div>
<div class="content-body">
<el-table class="bigScreenTable" v-if="areaShowType==1" :data="areaOperation" :height="300" @row-click="areaOperationRowClick">
<el-table class="bigScreenTable" v-if="areaShowType == 1" :data="areaOperation" :height="300"
@row-click="areaOperationRowClick">
<el-table-column label="作业简介" prop="name"></el-table-column>
<el-table-column label="开始时间" prop="start_time"></el-table-column>
<el-table-column label="结束时间" prop="end_time"></el-table-column>
@ -271,7 +266,8 @@
</template>
</el-table-column>
</el-table>
<el-table class="bigScreenTable" :data="areaVideo" v-if="areaShowType==2" :height="300" @row-click="showVchannel">
<el-table class="bigScreenTable" :data="areaVideo" v-if="areaShowType == 2" :height="300"
@row-click="showVchannel">
<el-table-column label="通道名称" prop="name"></el-table-column>
<el-table-column label="所在区域" prop="area_name"></el-table-column>
<el-table-column label="code" prop="code"></el-table-column>
@ -281,7 +277,8 @@
<el-table-column label="所在区域" prop="area_name"></el-table-column>
<el-table-column label="唯一标识" prop="code"></el-table-column>
</el-table>
<el-table class="bigScreenTable" :data="areaUser" v-if="areaShowType==4" :height="300" @row-click="areaEmployeeRowClick">
<el-table class="bigScreenTable" :data="areaUser" v-if="areaShowType == 4" :height="300"
@row-click="areaEmployeeRowClick">
<el-table-column label="人员姓名" prop="my_info.employee_.name"></el-table-column>
<el-table-column label="人员姓名" prop="my_info.employee_.type"></el-table-column>
<el-table-column label="定位卡号" prop="mac"></el-table-column>
@ -316,7 +313,8 @@
<div class="header-basic">
<div class="basic-img">
<div style="width: 100%; height: 100%;">
<img style="width: 100%; height: 100%;" :src="screenUserItem.photo" height="100%" width="100%">
<img style="width: 100%; height: 100%;" :src="screenUserItem.photo" height="100%"
width="100%">
</div>
</div>
<div class="basic-info">
@ -372,8 +370,8 @@
</div>
</div>
<div class="screen-per-list">
<el-table :data="userList" style="width: 100%" :row-key="row => { return row.id }"
highlight-current-row class="bigScreenTable" @row-click="userRowClick">
<el-table :data="userList" style="width: 100%" :row-key="row => { return row.id }" highlight-current-row
class="bigScreenTable" @row-click="userRowClick">
<el-table-column label="姓名">
<template #default="scope">
<span v-if="scope.row.my_info.employee_">{{ scope.row.my_info.employee_.name }}</span>
@ -470,17 +468,14 @@
<div style="color:#ffffff;font-size: 14px;">
<p>作业区域{{ areaName }}</p>
<div v-if="areaVideo.length > 0">区域下监控
<el-tag
v-for="item in areaVideo"
:key="item.id"
@click="showVchannel(item)"
style="margin-right: 10px;margin-left:0"
>{{ item.name }}
<el-tag v-for="item in areaVideo" :key="item.id" @click="showVchannel(item)"
style="margin-right: 10px;margin-left:0">{{ item.name }}
</el-tag>
</div>
<div v-else>区域下监控该作业所在区域没有监控设备</div>
</div>
<el-table class="bigScreenTable" v-if="areaShowType==1" :data="areaOperation" :height="300" @row-click="areaOperationRowClick">
<el-table class="bigScreenTable" v-if="areaShowType == 1" :data="areaOperation" :height="300"
@row-click="areaOperationRowClick">
<el-table-column label="作业简介" prop="name"></el-table-column>
<el-table-column label="开始时间" prop="start_time"></el-table-column>
<el-table-column label="结束时间" prop="end_time"></el-table-column>
@ -491,12 +486,8 @@
</el-table-column>
<el-table-column label="已选监控">
<template #default="scope">
<el-tag
v-for="item in scope.row.vchannels_"
:key="item.id"
@click="showVchannel(item)"
style="margin-right: 10px;margin-left:0"
>{{ item.name }}
<el-tag v-for="item in scope.row.vchannels_" :key="item.id" @click="showVchannel(item)"
style="margin-right: 10px;margin-left:0">{{ item.name }}
</el-tag>
</template>
</el-table-column>
@ -553,24 +544,16 @@
<div>作业票</div>
</div>
<div class="job-list">
<el-tag
v-for="item in screenJobItem.cates_"
:key="item.id"
@click="showOpretion(item)"
style="margin-right: 10px;margin-left:0"
>{{ item.cate_name }}
<el-tag v-for="item in screenJobItem.cates_" :key="item.id" @click="showOpretion(item)"
style="margin-right: 10px;margin-left:0">{{ item.cate_name }}
</el-tag>
</div>
<div class="simple-title">
<div>监控设备</div>
</div>
<div class="job-list" v-if="screenJobItem.vchannels_.length > 0">
<el-tag
v-for="item in screenJobItem.vchannels_"
:key="item.id"
@click="showVchannel(item)"
style="margin-right: 10px;margin-left:0"
>{{ item.name }}
<el-tag v-for="item in screenJobItem.vchannels_" :key="item.id" @click="showVchannel(item)"
style="margin-right: 10px;margin-left:0">{{ item.name }}
</el-tag>
</div>
<div class="job-list" v-else style="color:#ffffff">该作业没有选择监控设备</div>
@ -584,14 +567,14 @@
</div>
<div class="risk-content">
<div class="risk-basic">
<div class="risk-item"><span class="risk-item-name">风险区域名称</span><span
class="risk-item-info">{{areaItemDetail.name}}</span>
<div class="risk-item"><span class="risk-item-name">风险区域名称</span><span class="risk-item-info">{{
areaItemDetail.name }}</span>
</div>
<div class="risk-item"><span class="risk-item-name">风险等级</span><span
class="risk-item-info">{{levelOption[areaItemDetail.level]}}</span>
<div class="risk-item"><span class="risk-item-name">风险等级</span><span class="risk-item-info">{{
levelOption[areaItemDetail.level] }}</span>
</div>
<div class="risk-item"><span class="risk-item-name">区域编号</span><span
class="risk-item-info">{{areaItemDetail.number}}</span></div>
<div class="risk-item"><span class="risk-item-name">区域编号</span><span class="risk-item-info">{{
areaItemDetail.number }}</span></div>
</div>
<div class="simple-title">
<div>详细信息</div>
@ -645,7 +628,8 @@
<div class="risk-item" v-if="screenWarningItem.global_img != null">
<span class="risk-item-name">事件截图</span>
<sc-upload v-model="screenWarningItem.global_img" title="全景照" style="width: 250px;"></sc-upload>
<sc-upload v-if="screenWarningItem.face_img!=null" v-model="screenWarningItem.face_img" title="人脸照" style="width: 250px;"></sc-upload>
<sc-upload v-if="screenWarningItem.face_img != null" v-model="screenWarningItem.face_img"
title="人脸照" style="width: 250px;"></sc-upload>
<!-- <img :src="screenWarningItem.global_img" style="width: 250px;"> -->
<!-- <img v-if="screenWarningItem.face_img!=null" :src="screenWarningItem.face_img" style="width: 250px;"> -->
@ -687,7 +671,8 @@
</template>
</el-dialog>
<el-dialog class="videoViewWrap" :title="opreationName" v-model="limitedOpreation" with="100%">
<opreation-view v-if="limitedOpreation" :ticketId="ticketId" :projectId="projectId" :cateType="cateType"></opreation-view>
<opreation-view v-if="limitedOpreation" :ticketId="ticketId" :projectId="projectId"
:cateType="cateType"></opreation-view>
<template #footer>
<el-button @click="viewClose">关闭</el-button>
</template>
@ -771,6 +756,7 @@ export default {
is_handled: false,
completed: true
},
sys_base_name: '',
areaItemDetail: {},
wStatistics: {},
warningTypes: [],//
@ -860,6 +846,12 @@ export default {
channelName: '',
}
},
computed: {
baseName() {
let baseName = this.$TOOL.data.get("BASE_INFO") !== null ? this.$TOOL.data.get("BASE_INFO").base.base_name : '曲阳金隅安全智能管控平台';
return baseName;
},
},
created() {
const scriptInfo = document.createElement("script");
scriptInfo.setAttribute("data-callType", "callScript");
@ -867,7 +859,9 @@ export default {
document.head.appendChild(scriptInfo);
},
mounted() {
console.log(this.$TOOL.data.get("BASE_INFO"))
let that = this;
that.sys_base_name = this.$TOOL.data.get("BASE_INFO").base.base_name;
let date = new Date();
that.timeNow = date.getDay();
that.todayDate = this.warningData.params.start_create = this.cateAggForm.start_create = this.$TOOL.dateFormat(new Date(), 'yyyy-MM-dd');
@ -1363,7 +1357,8 @@ export default {
let point = data.third_info.xx_rail.detail.polygon.points[0];
let points = data.third_info.xx_rail.detail.polygon.points;
window.map.flyToPosition(new jsmap.JSPoint(point.longitude, point.latitude, 0),
{ duration:1000,
{
duration: 1000,
offset: {
rotate: 60,
tilt: 60,
@ -2899,6 +2894,7 @@ export default {
transition: all .5s linear;
overflow-y: scroll;
max-height: 80vh;
.job-content {
height: calc(100% - 44px);
overflow-y: auto;
@ -3022,9 +3018,11 @@ export default {
padding: 0 20px 20px;
position: absolute;
background: rgba(24, 36, 51, .7);
.basic-head {
position: relative;
margin-bottom: 16px;
.header-tab {
width: 160px;
}
@ -3032,6 +3030,7 @@ export default {
.basic-info {
min-height: 400px;
.info-item {
font-size: 14px;
height: 30px;
@ -3155,6 +3154,7 @@ export default {
background: url(/public/img/icon_nbcl.png) no-repeat;
background-size: 100% 100%;
}
.item-info {
.normal {
font-size: 12px;
@ -3229,18 +3229,21 @@ export default {
// display: flex;
justify-content: space-between;
height: calc(100% - 50px);
.alarm-danger {
width: 50px;
height: 50px;
background: url(/public/img/a_danger.png) no-repeat;
background-size: 100% 100%;
}
.content-left {
width: 160px;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
.alarm-danger {
width: 50px;
height: 50px;
@ -3356,6 +3359,7 @@ export default {
z-index: 10;
max-height: 50vh;
overflow-y: scroll;
.drop-content-item {
color: #fff;
position: relative;
@ -3660,6 +3664,7 @@ export default {
border-radius: 4px;
padding: 0 12px 0 12px;
z-index: 20;
.action-group {
display: flex;
align-items: center;
@ -3698,6 +3703,7 @@ export default {
background: url(/public/img/b_ring.png) no-repeat;
background-size: 100% 100%;
}
.sound-quiet {
background: url(/public/img/b_quiet.png) no-repeat;
background-size: 100% 100%;
@ -3893,6 +3899,7 @@ export default {
padding: 8px 16px;
border-radius: 15px;
}
.areaActive {
border: 1px solid #32fde3;
background: #007767;
@ -3984,10 +3991,12 @@ export default {
.bigScreenTable.el-table .el-table__body tr.current-row>td.el-table__cell {
background-color: rgba(255, 255, 255, .1);
}
#audio {
position: fixed;
opacity: 0;
}
#eventScrenWrap {
height: 50px;
width: calc(100% - 50px);
@ -3995,12 +4004,14 @@ export default {
padding-left: 20px;
position: relative;
}
#eventScrenItem {
line-height: 50px;
font-size: 20px;
color: cyan;
position: absolute;
}
#bigScreeWrap {
position: fixed;
z-index: 9999;
@ -4012,11 +4023,13 @@ export default {
background-color: rgba(0, 0, 0, 0.8);
padding: 40px 20px 20px 20px;
}
.bigScreeImg {
width: 20px;
height: 20px;
background-color: red;
}
.bigScreeClose {
width: 20px;
height: 20px;
@ -4025,6 +4038,7 @@ export default {
position: absolute;
background: url(/public/img/close.png) no-repeat;
}
#videoElement {
width: auto;
height: 60vh;