Compare commits

...

2 Commits

Author SHA1 Message Date
独树的风 1b2a8b4530 feat:重新提交确保最新代码
10 months ago
独树的风 0c6c9b0c01 update: 更新提交
10 months ago

33
package-lock.json generated

@ -16,6 +16,7 @@
"element-ui": "^2.15.14",
"js-cookie": "^3.0.5",
"json-loader": "^0.5.7",
"postcss": "^8.4.38",
"vue": "^2.6.14",
"vue-router": "^3.5.1",
"vuex": "^3.6.2"
@ -8868,13 +8869,13 @@
}
},
"node_modules/postcss": {
"version": "8.4.31",
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.31.tgz",
"integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
"version": "8.4.38",
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.38.tgz",
"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
"dependencies": {
"nanoid": "^3.3.6",
"nanoid": "^3.3.7",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
"source-map-js": "^1.2.0"
},
"engines": {
"node": "^10 || ^12 || >=14"
@ -10317,9 +10318,9 @@
}
},
"node_modules/source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"version": "1.2.0",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.0.tgz",
"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
"engines": {
"node": ">=0.10.0"
}
@ -18980,13 +18981,13 @@
}
},
"postcss": {
"version": "8.4.31",
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.31.tgz",
"integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
"version": "8.4.38",
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.38.tgz",
"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
"requires": {
"nanoid": "^3.3.6",
"nanoid": "^3.3.7",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
"source-map-js": "^1.2.0"
}
},
"postcss-calc": {
@ -20063,9 +20064,9 @@
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
},
"source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
"version": "1.2.0",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.0.tgz",
"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg=="
},
"source-map-support": {
"version": "0.5.21",

@ -16,6 +16,7 @@
"element-ui": "^2.15.14",
"js-cookie": "^3.0.5",
"json-loader": "^0.5.7",
"postcss": "^8.4.38",
"vue": "^2.6.14",
"vue-router": "^3.5.1",
"vuex": "^3.6.2"

@ -8,8 +8,8 @@
<script>
export default {
name: "App",
};
name: 'App'
}
</script>
<style lang="scss">

@ -9,6 +9,7 @@
{{ timeArr.week }}
<el-avatar class="avatar" size="large"></el-avatar>
<span class="user"> {{ userName }} </span>
<span class="user"> {{ userName }} </span>
</span>
</header>
<div class="layout-main">

@ -0,0 +1,553 @@
<template>
<div class="add" v-if="show">
<!-- 户室信息 -->
<div class="X2" @click="deleteinfo"></div>
<div class="build_title">
<div class="header_icon"></div>
<div class="title_text">户室信息</div>
</div>
<!-- 室内图片 -->
<div class="build_picture">
<div class="picture_left"></div>
<div class="picture_right">
<div class="build_box_for">
<div class="left">
<div class="build_box_left">地址</div>
<div class="build_box_left">所在网格</div>
<div class="build_box_left">房屋类型</div>
<div class="build_box_left">是否出租</div>
<div class="build_box_left">所在警务区</div>
</div>
<div class="right">
<div
class="build_box_right"
:style="{ color: back_change() }"
:title="roll_list.homeInfo.address"
>
{{ roll_list.homeInfo.address }}
</div>
<div class="build_box_right" :style="{ color: back_change() }">
{{ houseValue.policeStationCode || '320924760101' }}
</div>
<div class="build_box_right" :style="{ color: back_change('1') }">
{{ roll_list.homeInfo.type }}
</div>
<div class="build_box_right" :style="{ color: back_change('2') }">
{{ roll_list.homeInfo.isRent }}
</div>
<div class="build_box_right" :style="{ color: back_change() }">
{{ houseValue.policeDistrictCode || '320924760101' }}
</div>
</div>
</div>
</div>
</div>
<!-- 房主信息 -->
<div class="build_title">
<div class="header_icon"></div>
<div class="title_text">房主信息</div>
</div>
<!-- 照片信息 -->
<div class="housepeople_info">
<img
v-if="roll_list.actualUserInfo?.userPic"
class="housepeople_info_left"
:src="baseUrl + roll_list.actualUserInfo.userPic"
/>
<img v-else class="housepeople_info_left" :src="img" />
<div class="housepeople_info_right">
<div class="info_right_for">
<div class="for_left">姓名</div>
<div class="for_right">
{{ roll_list.actualUserInfo?.userName || '' }}
</div>
</div>
<div class="info_right_for">
<div class="for_left">联系电话</div>
<div class="for_right">
{{ roll_list.actualUserInfo?.phone || '' }}
</div>
</div>
<div class="info_right_for">
<div class="for_left">证件号码</div>
<div
class="for_right"
@click="jumpRecord(roll_list.actualUserInfo?.idCard)"
>
{{ roll_list.actualUserInfo?.idCard || '' }}
</div>
</div>
<div class="info_right_for">
<div class="for_left">户籍地址</div>
<div class="for_right">
{{ roll_list.actualUserInfo?.houseHoldAddress || '' }}
</div>
</div>
</div>
</div>
<!-- 实有人口 重点人员 户在人不在 -->
<div class="people_bottom">
<div class="people1">
<div class="dit"></div>
<div class="people1_text">实有人口</div>
<div class="people1_number">
{{ roll_list.userInfos === null ? 0 : roll_list.userInfos.length }}
</div>
</div>
<div class="people1">
<div class="dit"></div>
<div class="people1_text">重点人员</div>
<div class="people1_number">
{{
roll_list.impUserInfos === null ? 0 : roll_list.impUserInfos.length
}}
</div>
</div>
<div class="people1">
<div class="dit"></div>
<div class="people1_text">户在人不在</div>
<div class="people1_number">
{{
roll_list.householdInUserInfos === null
? 0
: roll_list.householdInUserInfos.length
}}
</div>
</div>
</div>
<!-- 滚动 -->
<div class="roll_body" v-if="roll_list.userInfos !== null">
<ul class="marquee-list" :class="{ 'animate-up': animateUp }">
<li
v-for="item in roll_list.userInfos"
:key="item.id"
@mouseenter="stop()"
@mouseleave="start()"
>
<div class="roll_item_left">
<div class="roll_item_pic">
<img
class="peopleImg"
:src="item.userPic ? `${baseUrl + item.userPic}` : img"
alt=""
/>
</div>
</div>
<div class="roll_item_right">
<div class="person_type one_type" v-if="item.actualUserTypeCn">
{{ item.actualUserTypeCn }}
</div>
<!-- 信息展示 -->
<div class="right_text">
<div class="right_text_item">人员姓名:</div>
<div class="right_text_item">联系电话:</div>
<div class="right_text_item">证件号码:</div>
<div class="right_text_item">户籍地址:</div>
</div>
<div class="right_value">
<div class="right_value_item">{{ item.userName }}</div>
<div class="right_value_item">{{ item.phone }}</div>
<div class="right_value_item" @click="jumpRecord(item.idCard)">
{{ item.idCard }}
</div>
<div class="right_value_item">
{{ item.houseHoldAddress }}
</div>
</div>
</div>
</li>
</ul>
</div>
<div class="roll_body" v-else>
<ul class="marquee-list">
<li>
<div class="roll_item_left">
<div class="roll_item_pic">
<img class="peopleImg" :src="img" />
</div>
</div>
<div class="roll_item_right">
<div class="right_text">
<div class="right_text_item">人员姓名:</div>
<div class="right_text_item">联系电话:</div>
<div class="right_text_item">证件号码:</div>
<div class="right_text_item">户籍地址:</div>
</div>
<div class="right_value">
<div class="right_value_item"></div>
<div class="right_value_item"></div>
<div class="right_value_item"></div>
<div class="right_value_item"></div>
</div>
</div>
</li>
</ul>
</div>
</div>
</template>
<script>
import { jumpSyetem } from '@/utils/jumpSystem'
export default {
name: 'FloorInform',
props: {
houseValue: {
type: Object
}
},
data() {
return {
show: false,
animateUp: false,
baseUrl: 'http://50.146.63.224:8118',
roll_list: {},
img: require('@/assets/picture/icon_householder.png'),
timer: null,
unit: null
}
},
created() {},
mounted() {},
methods: {
open(val, roomInfo) {
console.log(val, roomInfo, '户室组件接收的数据')
this.unit = val
this.roll_list = roomInfo
this.show = true
if (roomInfo.userInfos && roomInfo.userInfos.length > 2) {
this.clearTimer()
this.scrollAnimate()
}
},
back_change(type) {
switch (type) {
case '1':
return `#37FDC7`
case '2':
return `#00F5FF`
}
},
scrollAnimate() {
console.log(
this.roll_list.userInfos !== null && this.roll_list.userInfos.length > 2
)
if (
this.roll_list.userInfos !== null &&
this.roll_list.userInfos.length > 2
) {
this.timer = setInterval(() => {
this.animateUp = true
setTimeout(() => {
this.roll_list.userInfos.push(this.roll_list.userInfos[0])
this.roll_list.userInfos.shift()
this.animateUp = false
}, 500)
}, 4000)
} else {
this.timer = null
}
},
clearTimer() {
if (this.timer) {
clearInterval(this.timer)
this.timer = null
}
},
deleteinfo() {
this.show = false
clearInterval(this.timer)
},
stop() {
clearInterval(this.timer)
},
start() {
if (this.roll_list.userInfos && this.roll_list.userInfos.length > 2) {
this.scrollAnimate()
}
},
jumpRecord(card) {
jumpSyetem(card)
}
},
beforeDestroy() {
this.clearTimer()
}
}
</script>
<style lang="scss" scoped>
.add {
position: absolute;
top: 0vh;
left: 20vw;
width: 20vw;
height: 72vh;
background: $popupBack url('@/assets/house-hza/bg7.png') no-repeat;
background-size: 100% 100%;
padding-left: 1vw;
.X2 {
width: 0.8vw;
height: 1.8vh;
position: absolute;
top: 0.5vh;
right: 0.5vw;
background-image: url('@/assets/house-hza/bg9.png');
background-size: 100% 100%;
&:hover {
background-color: #07e2d0;
}
}
.build_title {
width: 18vw;
height: 3.5vh;
display: flex;
.header_icon {
width: 1vw;
height: 2vh;
margin-top: 1.7vh;
background-image: url('@/assets/house-hza/bg17.png');
background-size: 100% 100%;
}
.title_text {
width: 20vw;
height: 3.5vh;
color: antiquewhite;
margin-left: 1vw;
font-size: 16px;
font-weight: 700;
line-height: 3.5vh;
text-shadow: 0px 0px 10px #0b4672;
letter-spacing: 2px;
margin-top: 1vh;
}
}
.build_picture {
width: 18vw;
height: 18vh;
margin-top: 1vh;
display: flex;
margin-bottom: 1vh;
.picture_left {
width: 6vw;
height: 18vh;
background: url('@/assets/icon_house_slices/icon_house@2x.png') no-repeat;
background-size: 100% 100%;
text-align: center;
}
.picture_right {
width: 11.5vw;
height: 18vh;
margin-left: 0.5vw;
.build_box_for {
display: flex;
width: 11vw;
.left {
width: 4vw;
height: 18vh;
}
.build_box_left {
width: 4vw;
height: 3.2vh;
background-color: #04548a;
padding-left: 0.5vw;
color: antiquewhite;
padding-top: 0.5vh;
font-size: 12px;
}
.build_box_right {
width: 7.5vw;
height: 3.2vh;
font-size: 0.8rem;
background-image: url('@/assets/house-hza/bg10.png');
background-size: 100% 100%;
padding-top: 0.5vh;
padding-left: 0.5vw;
color: antiquewhite;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
cursor: pointer;
}
}
}
}
.housepeople_info {
width: 18vw;
height: 13vh;
background-color: #05385d;
margin-top: 1vh;
padding-top: 1vh;
padding-left: 1vh;
display: flex;
.housepeople_info_left {
width: 4vw;
height: 11vh;
background-repeat: no-repeat;
background-size: 100% 100%;
object-fit: cover;
}
.housepeople_info_right {
width: 13vw;
height: 11vh;
padding-left: 0.5vw;
}
.info_right_for {
height: 2vh;
width: 12.5vw;
display: flex;
margin-bottom: 1vh;
.for_left {
width: 3.5vw;
height: 2vh;
color: #ecf4f9;
}
.for_right {
height: 2vh;
width: 8vw;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: #fff;
}
}
}
.people_bottom {
width: 18vw;
height: 4vh;
margin-left: 0;
display: flex;
justify-content: space-between;
margin-top: 1vh;
.people1 {
width: 5.5vw;
height: 4vh;
background-image: url('@/assets/house-hza/bg-6.png');
background-size: 100% 100%;
text-align: center;
display: flex;
.people1_text {
font-size: 0.6vw;
margin-top: 1vh;
margin-left: 0.2vw;
color: #fff;
}
.people1_number {
margin-left: 0.8vw;
margin-top: 0.5vh;
font-size: 1.3rem;
color: #fff;
}
.dit {
width: 0.3vw;
height: 0.6vh;
border-radius: 50%;
background-color: #00f5ff;
margin-top: 0.8vw;
margin-left: 0.5vw;
}
}
}
.roll_body {
width: 18vw;
height: 24vh;
overflow: hidden;
margin-top: 1vh;
.marquee-list {
padding: 0;
width: 18vw;
height: 24vh;
li {
width: 100%;
background: url('@/assets/house-hza/bg-6.png') no-repeat;
background-size: 100% 100%;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
list-style: none;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 0.5vh;
.roll_item_left {
width: 5vw;
height: 11vh;
margin-left: 0.5vw;
.roll_item_pic {
width: 4vw;
height: 9vh;
margin-top: 1vh;
.peopleImg {
width: 4vw;
height: 9vh;
}
}
}
.roll_item_right {
width: 14vw;
height: 9vh;
position: relative;
display: flex;
.person_type {
position: absolute;
width: 3.5vw;
height: 2vh;
top: 0px;
right: 0px;
color: #061122;
text-align: center;
line-height: 2vh;
font-size: 0.6vw;
}
.one_type {
background: #ffc426;
}
.two_type {
background: #00f5ff;
}
.three_type {
background: #a357ff;
}
.right_text {
width: 5vw;
height: 9vh;
.right_text_item {
width: 5vw;
height: 2.6vh;
color: #ecf4f9;
font-size: 10px;
}
}
.right_value {
width: 8vw;
height: 10vh;
.right_value_item {
width: 8vw;
height: 2.6vh;
color: #edf1f7;
font-size: 12px;
text-align: left;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
cursor: pointer;
&:nth-child(3) {
color: #00f5ff;
}
}
}
}
}
}
.animate-up {
transition: all 0.8s ease-in-out;
transform: translateY(-20vh);
}
}
}
</style>

@ -0,0 +1,113 @@
<template>
<div class="detail">
<div class="contents">
<div class="fy-center row">
<div class="label fy-center">人员姓名</div>
<div class="content line-1">{{ data.impUserName }}</div>
</div>
<div class="fy-center row">
<div class="label fy-center">证件号码</div>
<div class="content line-1">{{ data.impUserIdCard }}</div>
</div>
<div class="fy-center row">
<div class="label fy-center">人员类型</div>
<div class="content line-1">{{ data.impUserSubTypeCn }}</div>
</div>
<div class="fy-center row">
<div class="label fy-center">定位时间</div>
<div class="content line-1">
{{ data.kv.定位时间 || data.warningTime }}
</div>
</div>
<!-- <div class="fy-center row">
<div class="label fy-center">经过位置</div>
<div class="content line-1">{{ data}}</div>
</div> -->
<div class="fy-center row">
<div class="label fy-center">活动信息</div>
<div class="content line-1">{{ data.activityMessage }}</div>
</div>
<div class="fy-center row">
<div class="label fy-center warning">异常信息</div>
<div class="content line-1 warning">{{ data.kv.异常信息 }}</div>
</div>
</div>
</div>
</template>
<script>
export default {
props: {
data: Object
},
data() {
return {}
},
created() {},
methods: {}
}
</script>
<style lang="scss" scoped>
.detail {
position: relative;
color: white;
overflow: hidden;
display: flex;
.contents {
width: 100%;
.row {
margin-top: 0.4vh;
display: flex;
.grid {
display: grid;
grid-template-columns: 1fr 1fr;
grid-gap: 5px;
}
.label {
width: 6vw;
height: 44px;
background-color: #093979;
margin-right: 1px;
padding-left: 12px;
}
.content {
padding-left: 12px;
height: 44px;
line-height: 44px;
background-color: rgba(9, 57, 121, 0.3);
&.even {
background-color: rgba(9, 57, 121, 0.5);
}
}
&:first-child {
margin-top: 0;
}
&:last-child .warning {
height: auto;
}
&:last-child .line-1 {
overflow: auto;
text-overflow: clip;
white-space: normal;
flex: 1;
width: 1px;
}
}
}
// .h-144 {
// height: 14.4vh;
// }
// .w-530 {
// width: 530px;
// }
// .ml-12 {
// margin-left: 0.6vw;
// }
// .overflow-auto {
// // overflow: auto;
// }
}
</style>

@ -77,7 +77,8 @@ export default {
// line-height: 6vh;
// }
// }
.div {
}
.under_btn {
position: absolute;
bottom: 5vh;

@ -2,6 +2,7 @@
<div id="map">
<MapCheck></MapCheck>
<div class="scroll">
<div class="scroll-item"></div>
<MapScroll v-for="item in 3" :key="item"></MapScroll>
</div>
</div>

@ -0,0 +1,151 @@
<!-- 感知设备搜索及复选图层 -->
<template>
<div class="search_check">
<!-- 右侧区域搜索框 -->
<div class="search">
<input placeholder="请输入摄像头名称" class="search_input" />
<button class="search_button">
<i class="el-icon-search"></i>
</button>
</div>
<!-- 沿海视频切换框 -->
<div class="check">
<div class="check_coverage">
<div class="check_title">图层</div>
</div>
<div class="check_coveragebottom">
<el-checkbox class="checkbox" size="mini">全选</el-checkbox>
<el-checkbox size="mini" class="checkbox">
<div class="check_label">
<div class="check_label_text">沿海视频</div>
<div class="check_label_count">(446)</div>
</div>
</el-checkbox>
<el-checkbox size="mini" class="checkbox">
<div class="check_label">
<div class="check_label_text">非沿海视频</div>
<div class="check_label_count">(779)</div>
</div>
</el-checkbox>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'MapSearch',
data() {
return {}
}
}
</script>
<style lang="scss">
.search_check {
width: 16vw;
height: 27vh;
// position: absolute;
// right: 23vw;
position: relative;
// background: #02274e;
z-index: 2;
.search {
display: flex;
justify-content: start;
position: absolute;
right: 0;
top: 0;
background: #fff;
.search_input {
margin: 0;
padding: 0;
width: 14vw;
border: 1px solid #00f5ff;
background-color: #02274e;
color: #ecf4f9;
outline: none;
}
.search_input::placeholder {
position: relative;
left: 1vw;
font-size: 0.8rem;
font-family: '苹方-简';
color: #ecf4f9;
}
.search_button {
width: 2.5vw;
height: 4vh;
border: 0;
background-color: #03d6df;
outline: none;
cursor: pointer;
&:hover {
background-color: #02c7ce;
}
.el-icon-search {
color: #fff;
}
}
}
.check {
display: flex;
justify-content: space-between;
flex-direction: column;
width: 13vw;
height: 18vh;
position: absolute;
top: 7vh;
right: 0;
background-image: url('@/assets/picture/bg_info.png');
background-size: 100% auto;
background-repeat: no-repeat;
.check_coverage {
height: 3vh;
}
.check_title {
margin-left: 1vw;
color: #ecf4f9;
font-size: 0.8rem;
line-height: 3vh;
font-family: '苹方-简 中黑体';
}
.check_coveragebottom {
display: flex;
flex-direction: column;
justify-content: space-around;
height: 15vh;
.el-checkbox {
margin-left: 1vw;
color: #ecf4f9;
.el-checkbox__label {
font-size: 0.8rem;
font-family: '苹方-简 中黑体';
}
.check_label {
display: flex;
justify-content: space-between;
width: 10vw;
.check_label_count {
width: 3vw;
}
}
}
}
}
}
</style>

@ -0,0 +1,430 @@
<!-- 封装监控视频组件 -->
<template>
<div class="live">
<!-- 弹窗整体 -->
<div class="live_card">
<div class="live_card_header">
<div class="live_card_title">射阳县合德镇解放西路42号枪机</div>
<!-- 关闭弹窗 -->
<div class="delete" @click="handleClose"></div>
<!-- <div class="live_card_icon" @click="handleClose">
<i class="el-icon-close"></i>
</div> -->
</div>
<div class="live_card_body">
<div class="live_card_body_left">
<div class="live_card_body_left_top">
<h3>重点人员信息</h3>
</div>
<div class="live_card_body_left_bottom">
<!-- 设备名称信息 -->
<div class="live_card_body_left_bottom_div">
<div class="item">
设备名称
<div class="bottom_div_color">阿德飒飒打撒</div>
</div>
<div class="item">
设备Ip:
<div class="bottom_div_color2">阿德飒飒打撒</div>
</div>
<div class="item">
监控类型:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
国际编码:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备方位:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备品牌:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备经度:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备维度:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
</div>
<!-- 视频按钮 -->
<div class="live_card_body_left_bottom_button">
<el-button class="button_left">
<span class="icon_left"></span>
<span class="add">视频回放</span>
</el-button>
<el-button class="button_right">
<div class="icon_left1"></div>
视频回放
</el-button>
</div>
<!-- 开始时间 -->
<div class="live_card_body_left_bottom_starttime">
<div class="time_icon"></div>
<span>开始时间:</span>
<span>
<el-date-picker
placeholder="请选择日期与时间"
prefix-icon="prefix-icon-class"
type="datetime"
></el-date-picker>
</span>
</div>
<!-- 结束时间 -->
<div class="live_card_body_left_bottom_endtime">
<div class="time_icon1"></div>
<span>结束时间:</span>
<span>
<el-date-picker
placeholder="请选择日期与时间"
prefix-icon="prefix-icon-class"
type="datetime"
>
</el-date-picker>
</span>
</div>
</div>
</div>
<!-- 视频 -->
<div class="live_card_body_right">
<!-- <LivePlayer></LivePlayer> -->
<div class="video_button">
<div class="video_buton_style">
<div class="video_icon video_icon1"></div>
<div class="video_icon video_icon2"></div>
<div class="video_icon video_icon3"></div>
<div class="video_icon video_icon4"></div>
<div class="video_icon video_icon5"></div>
<div class="video_icon video_icon6"></div>
<div class="video_icon video_icon7"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
// import LivePlayer from '@liveqing/liveplayer'
export default {
name: 'MapPlayer',
// components: { LivePlayer },
props: {
videoUrl: {
type: String
},
deviceName: {
type: String
}
},
data() {
return {
play: true
}
},
methods: {
handleClose() {
this.$emit('updateClose')
}
}
}
</script>
<style lang="scss">
* {
margin: 0;
padding: 0;
}
.live {
position: absolute;
top: 55%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 2;
background: url(../../../assets/icon-hza/bg_6.png);
background-size: 100% auto;
background-repeat: no-repeat;
.live_card {
display: flex;
flex-direction: column;
justify-content: space-between;
width: 83vw;
height: 75vh;
.live_card_header {
display: flex;
justify-content: space-between;
align-items: center;
width: 83vw;
height: 6vh;
color: #bfe7f9;
.delete {
width: 2vw;
height: 3vh;
background-color: #fff;
opacity: 0;
}
.live_card_title,
.live_card_icon {
margin-left: 5px;
font-size: 1.5rem;
}
.live_card_icon {
margin-right: 5px;
color: #14b9d2;
margin-right: 1vw;
&:hover {
color: #006d7e;
}
}
.live_card_title {
margin-left: 3vw;
}
}
.live_card_body {
display: flex;
align-items: center;
width: 83vw;
height: 76vh;
.live_card_body_left {
overflow: hidden;
width: 22vw;
height: 65vh;
margin-left: 3vw;
background-image: url(../../../assets/icon-hza/bg_left.png);
background-size: 100% auto;
background-repeat: no-repeat;
.live_card_body_left_top {
width: 100%;
height: 4vh;
background-image: url(../../../assets/icon-hza/bg_title.png);
background-size: 100% auto;
background-repeat: no-repeat;
display: flex;
align-items: center;
padding-left: 1vw;
color: #bfe7f9;
}
.live_card_body_left_bottom {
width: 100%;
height: 61;
.live_card_body_left_bottom_div {
width: 18vw;
height: 30vh;
margin-left: 1vw;
margin-top: 1vh;
display: flex;
flex-direction: column;
justify-content: space-around;
.item {
display: flex;
font-size: 1rem;
color: #ecf4f9;
letter-spacing: 0.1rem;
}
.bottom_div_color {
color: #00f5ff;
margin-left: 0.7vh;
}
.bottom_div_color1 {
color: #edf1f7;
margin-left: 1.7vh;
}
.bottom_div_color2 {
color: #edf1f7;
margin-left: 3vh;
}
}
.live_card_body_left_bottom_button {
height: 4vh;
width: 18vw;
margin-left: 1vw;
margin-top: 2vh;
display: flex;
.button_left {
background-color: #063d6c;
width: 9vw;
height: 4vh;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
border-radius: 0%;
border-color: #063d6c;
&:hover {
background-color: #005ea1;
}
.icon_left {
width: 1vw;
height: 2vh;
background: url('../../../assets/icon-hza/24gf-playCircle.png');
background-size: 100% auto;
background-repeat: no-repeat;
display: inline-block;
margin-right: 0.5vw;
}
}
.button_right {
background-color: #063d6c;
width: 9vw;
height: 4vh;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
border-radius: 0%;
border-color: #063d6c;
&:hover {
background-color: #005ea1;
}
.icon_left1 {
width: 1vw;
height: 2vh;
background: url(../../../assets/icon-hza/bg_105.png);
display: inline-block;
margin-right: 0.5vw;
background-size: 100% auto;
background-repeat: no-repeat;
}
}
}
.live_card_body_left_bottom_starttime {
width: 18vw;
height: 4vh;
margin-top: 4vh;
margin-left: 1vw;
display: flex;
align-items: center;
justify-content: space-between;
color: #ecf4f9;
position: relative;
.el-input--suffix .el-input__inner {
background-color: transparent;
width: 15vw;
}
.el-input--prefix .el-input__inner {
border-color: #00539f;
border-radius: 0%;
}
.time_icon {
width: 1vw;
height: 2vh;
background-image: url(../../../assets/icon-hza/bg_50.png);
position: absolute;
background-size: 100% auto;
background-repeat: no-repeat;
right: 0.4vw;
}
}
.live_card_body_left_bottom_endtime {
display: flex;
align-items: center;
justify-content: space-between;
width: 18vw;
height: 4vh;
margin-left: 1vw;
margin-top: 4vh;
color: #fff;
position: relative;
.el-input--suffix .el-input__inner {
background-color: transparent;
width: 15vw;
}
.el-input--prefix .el-input__inner {
border-color: #00539f;
border-radius: 0%;
}
.prefix-icon-class {
display: none;
}
.time_icon1 {
width: 1vw;
height: 2vh;
background-image: url(../../../assets/icon-hza/bg_50.png);
position: absolute;
background-size: 100% auto;
background-repeat: no-repeat;
right: 0.4vw;
top: 0.4vh;
}
}
}
}
.live_card_body_right {
margin-left: 3vw;
width: 52vw;
height: 65vh;
background-image: url(../../../assets/picture/bg_right.png);
background-size: 100% auto;
background-repeat: no-repeat;
.video_button {
width: 52vw;
height: 5vh;
display: flex;
justify-content: center;
align-items: center;
.video_buton_style {
width: 13vw;
height: 3.5vh;
display: flex;
justify-content: space-around;
.video_icon {
width: 1vw;
height: 2vh;
margin-top: 1vh;
}
.video_icon1 {
background-image: url(../../../assets/picture/icon_butreset\(1\).png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon2 {
background-image: url(../../../assets/icon-hza/bg_68.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon3 {
background-image: url(../../../assets/icon-hza/bg_70.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon4 {
background-image: url(../../../assets/icon-hza/bg_60.png);
background-size: 100% auto;
background-repeat: no-repeat;
width: 2vw;
height: 4vh;
margin-top: 0;
}
.video_icon5 {
background-image: url(../../../assets/icon-hza/bg_74.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon6 {
background-image: url(../../../assets/icon-hza/bg_71.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon7 {
background-image: url(../../../assets/picture/icon_butreset.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
}
}
}
}
}
}
</style>

@ -0,0 +1,430 @@
<!-- 封装监控视频组件 -->
<template>
<div class="live">
<!-- 弹窗整体 -->
<div class="live_card">
<div class="live_card_header">
<div class="live_card_title">射阳县合德镇解放西路42号枪机</div>
<!-- 关闭弹窗 -->
<div class="delete" @click="handleClose"></div>
<!-- <div class="live_card_icon" @click="handleClose">
<i class="el-icon-close"></i>
</div> -->
</div>
<div class="live_card_body">
<div class="live_card_body_left">
<div class="live_card_body_left_top">
<h3>重点人员信息</h3>
</div>
<div class="live_card_body_left_bottom">
<!-- 设备名称信息 -->
<div class="live_card_body_left_bottom_div">
<div class="item">
设备名称
<div class="bottom_div_color">阿德飒飒打撒</div>
</div>
<div class="item">
设备Ip:
<div class="bottom_div_color2">阿德飒飒打撒</div>
</div>
<div class="item">
监控类型:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
国际编码:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备方位:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备品牌:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备经度:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
<div class="item">
设备维度:
<div class="bottom_div_color1">阿德飒飒打撒</div>
</div>
</div>
<!-- 视频按钮 -->
<div class="live_card_body_left_bottom_button">
<el-button class="button_left">
<span class="icon_left"></span>
<span class="add">视频回放</span>
</el-button>
<el-button class="button_right">
<div class="icon_left1"></div>
视频回放
</el-button>
</div>
<!-- 开始时间 -->
<div class="live_card_body_left_bottom_starttime">
<div class="time_icon"></div>
<span>开始时间:</span>
<span>
<el-date-picker
placeholder="请选择日期与时间"
prefix-icon="prefix-icon-class"
type="datetime"
></el-date-picker>
</span>
</div>
<!-- 结束时间 -->
<div class="live_card_body_left_bottom_endtime">
<div class="time_icon1"></div>
<span>结束时间:</span>
<span>
<el-date-picker
placeholder="请选择日期与时间"
prefix-icon="prefix-icon-class"
type="datetime"
>
</el-date-picker>
</span>
</div>
</div>
</div>
<!-- 视频 -->
<div class="live_card_body_right">
<!-- <LivePlayer></LivePlayer> -->
<div class="video_button">
<div class="video_buton_style">
<div class="video_icon video_icon1"></div>
<div class="video_icon video_icon2"></div>
<div class="video_icon video_icon3"></div>
<div class="video_icon video_icon4"></div>
<div class="video_icon video_icon5"></div>
<div class="video_icon video_icon6"></div>
<div class="video_icon video_icon7"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
// import LivePlayer from '@liveqing/liveplayer'
export default {
name: 'MapPlayer',
// components: { LivePlayer },
props: {
videoUrl: {
type: String
},
deviceName: {
type: String
}
},
data() {
return {
play: true
}
},
methods: {
handleClose() {
this.$emit('updateClose')
}
}
}
</script>
<style lang="scss">
* {
margin: 0;
padding: 0;
}
.live {
position: absolute;
top: 55%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 2;
background: url(../../../assets/icon-hza/bg_6.png);
background-size: 100% auto;
background-repeat: no-repeat;
.live_card {
display: flex;
flex-direction: column;
justify-content: space-between;
width: 83vw;
height: 75vh;
.live_card_header {
display: flex;
justify-content: space-between;
align-items: center;
width: 83vw;
height: 6vh;
color: #bfe7f9;
.delete {
width: 2vw;
height: 3vh;
background-color: #fff;
opacity: 0;
}
.live_card_title,
.live_card_icon {
margin-left: 5px;
font-size: 1.5rem;
}
.live_card_icon {
margin-right: 5px;
color: #14b9d2;
margin-right: 1vw;
&:hover {
color: #006d7e;
}
}
.live_card_title {
margin-left: 3vw;
}
}
.live_card_body {
display: flex;
align-items: center;
width: 83vw;
height: 76vh;
.live_card_body_left {
overflow: hidden;
width: 22vw;
height: 65vh;
margin-left: 3vw;
background-image: url(../../../assets/icon-hza/bg_left.png);
background-size: 100% auto;
background-repeat: no-repeat;
.live_card_body_left_top {
width: 100%;
height: 4vh;
background-image: url(../../../assets/icon-hza/bg_title.png);
background-size: 100% auto;
background-repeat: no-repeat;
display: flex;
align-items: center;
padding-left: 1vw;
color: #bfe7f9;
}
.live_card_body_left_bottom {
width: 100%;
height: 61;
.live_card_body_left_bottom_div {
width: 18vw;
height: 30vh;
margin-left: 1vw;
margin-top: 1vh;
display: flex;
flex-direction: column;
justify-content: space-around;
.item {
display: flex;
font-size: 1rem;
color: #ecf4f9;
letter-spacing: 0.1rem;
}
.bottom_div_color {
color: #00f5ff;
margin-left: 0.7vh;
}
.bottom_div_color1 {
color: #edf1f7;
margin-left: 1.7vh;
}
.bottom_div_color2 {
color: #edf1f7;
margin-left: 3vh;
}
}
.live_card_body_left_bottom_button {
height: 4vh;
width: 18vw;
margin-left: 1vw;
margin-top: 2vh;
display: flex;
.button_left {
background-color: #063d6c;
width: 9vw;
height: 4vh;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
border-radius: 0%;
border-color: #063d6c;
&:hover {
background-color: #005ea1;
}
.icon_left {
width: 1vw;
height: 2vh;
background: url('../../../assets/icon-hza/24gf-playCircle.png');
background-size: 100% auto;
background-repeat: no-repeat;
display: inline-block;
margin-right: 0.5vw;
}
}
.button_right {
background-color: #063d6c;
width: 9vw;
height: 4vh;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
border-radius: 0%;
border-color: #063d6c;
&:hover {
background-color: #005ea1;
}
.icon_left1 {
width: 1vw;
height: 2vh;
background: url(../../../assets/icon-hza/bg_105.png);
display: inline-block;
margin-right: 0.5vw;
background-size: 100% auto;
background-repeat: no-repeat;
}
}
}
.live_card_body_left_bottom_starttime {
width: 18vw;
height: 4vh;
margin-top: 4vh;
margin-left: 1vw;
display: flex;
align-items: center;
justify-content: space-between;
color: #ecf4f9;
position: relative;
.el-input--suffix .el-input__inner {
background-color: transparent;
width: 15vw;
}
.el-input--prefix .el-input__inner {
border-color: #00539f;
border-radius: 0%;
}
.time_icon {
width: 1vw;
height: 2vh;
background-image: url(../../../assets/icon-hza/bg_50.png);
position: absolute;
background-size: 100% auto;
background-repeat: no-repeat;
right: 0.4vw;
}
}
.live_card_body_left_bottom_endtime {
display: flex;
align-items: center;
justify-content: space-between;
width: 18vw;
height: 4vh;
margin-left: 1vw;
margin-top: 4vh;
color: #fff;
position: relative;
.el-input--suffix .el-input__inner {
background-color: transparent;
width: 15vw;
}
.el-input--prefix .el-input__inner {
border-color: #00539f;
border-radius: 0%;
}
.prefix-icon-class {
display: none;
}
.time_icon1 {
width: 1vw;
height: 2vh;
background-image: url(../../../assets/icon-hza/bg_50.png);
position: absolute;
background-size: 100% auto;
background-repeat: no-repeat;
right: 0.4vw;
top: 0.4vh;
}
}
}
}
.live_card_body_right {
margin-left: 3vw;
width: 52vw;
height: 65vh;
background-image: url(../../../assets/picture/bg_right.png);
background-size: 100% auto;
background-repeat: no-repeat;
.video_button {
width: 52vw;
height: 5vh;
display: flex;
justify-content: center;
align-items: center;
.video_buton_style {
width: 13vw;
height: 3.5vh;
display: flex;
justify-content: space-around;
.video_icon {
width: 1vw;
height: 2vh;
margin-top: 1vh;
}
.video_icon1 {
background-image: url(../../../assets/picture/icon_butreset\(1\).png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon2 {
background-image: url(../../../assets/icon-hza/bg_68.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon3 {
background-image: url(../../../assets/icon-hza/bg_70.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon4 {
background-image: url(../../../assets/icon-hza/bg_60.png);
background-size: 100% auto;
background-repeat: no-repeat;
width: 2vw;
height: 4vh;
margin-top: 0;
}
.video_icon5 {
background-image: url(../../../assets/icon-hza/bg_74.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon6 {
background-image: url(../../../assets/icon-hza/bg_71.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
.video_icon7 {
background-image: url(../../../assets/picture/icon_butreset.png);
background-size: 100% auto;
background-repeat: no-repeat;
}
}
}
}
}
}
}
</style>
Loading…
Cancel
Save