From 5173f8e31d106abd003e123c8679cf53c7940b33 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期一, 30 一月 2023 11:54:12 +0800
Subject: [PATCH] 网格绘制
---
src/views/systemSetting/device/point/index.vue | 406 ++++++++++++++++++++++++++++++++-------------------------
1 files changed, 226 insertions(+), 180 deletions(-)
diff --git a/src/views/systemSetting/device/point/index.vue b/src/views/systemSetting/device/point/index.vue
index 925d4b3..7bb4603 100644
--- a/src/views/systemSetting/device/point/index.vue
+++ b/src/views/systemSetting/device/point/index.vue
@@ -1,76 +1,191 @@
<template>
- <el-container style="height: 100%;">
+ <el-container style="height: 100%">
<el-aside heigth="100%" width="200px ">
- <div style="line-height: 40px;text-align: left;padding: 0 20px 0 10px;">
- <span style="color:rgb(75, 155, 183);font-weight: 500; width: 196px;">缁勭粐鏈烘瀯</span>
- <el-input placeholder="璇疯緭鍏ユ満鏋�"></el-input>
- </div>
- <el-tree :data="treedata" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
-
-
+ <department-aside @selectedDepartment="selectedDepartment" />
</el-aside>
- <el-container>
- <el-header style="display:flex;flex-direction: column;height: 120px;">
- <div style="display:flex;justify-content: space-between;height: 80px;">
- <span style="color:rgb(75, 155, 183);font-weight: 450;text-align: left; font-size: 16px;">褰撳墠鍏�8涓洃鎺х偣浣嶏紝鏈�澶氶厤缃�100璺棰戠洃鎺э紝鐩墠宸茬粡閰嶇疆200璺棰戠偣</span>
- <!-- <el-button type="primary" >鍒犻櫎</el-button> -->
+ <el-container class="point-container">
+ <el-header style="display: flex; flex-direction: column; height: 120px;padding: 0 40px">
+ <div
+ style="display: flex; justify-content: space-between; height: 80px"
+ >
+ <span
+ style="
+ color: rgb(75, 155, 183);
+ font-weight: 450;
+ text-align: left;
+ font-size: 16px;
+ "
+ >褰撳墠鍏�8涓洃鎺х偣浣嶏紝鏈�澶氶厤缃�100璺棰戠洃鎺э紝鐩墠宸茬粡閰嶇疆200璺棰戠偣</span
+ >
</div>
- <div style="height:60px;display: flex;justify-content: flex-start;">
- </div>
+ <div
+ style="height: 60px; display: flex; justify-content: flex-start"
+ ></div>
</el-header>
- <el-main style="display:flex;flex-wrap: wrap;overflow-y: scroll;">
- <div v-for="item in videoDate " style="height: 240px ;width: 210px; position: relative;margin-left:20px ;">
- <div
- style="color:rgb(75, 155, 183); font-size: 11px;line-height: 18px; position: absolute; z-index: 1;left: 50px;">
- {{ item.steert }}{{ item.community }}</div>
- <video id="my-video" class="video-js" controls preload="auto" width="210px" height="150px"
- :poster="item.imageUrl" data-setup="{}">
- <source :src="item.videoUrl" type="video/mp4" />
- </video>
- <div class="bottonOne" @click="">鏌ョ湅瑙嗛</div>
- <div class="bottonTwo">瑙嗛涓婃姤</div>
- <div class="bottonThird">瀵硅</div>
+ <el-main class="video-main">
+ <div
+ v-for="item in videoData"
+ :key="item.id"
+ style="position: relative"
+ >
+ <div class="video-title">{{ item.name }}{{ item.community }}</div>
+
+ <video
+ :id="item.id"
+ class="video-js"
+ controls
+ preload="auto"
+ width="400px"
+ height="300px"
+ type="video/mp4"
+ ></video>
+ <div class="button-div">
+ <div @click="loadVideo(item)">鏌ョ湅瑙嗛</div>
+ </div>
</div>
</el-main>
<el-footer>
- <div style="margin-bottom:0;">
- <el-pagination background :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
- :page-size="pageSize" @current-change="changeCurrentPage" @prev-click="handlePrev" @next-click="handleNext">
+ <div style="margin-bottom: 0">
+ <el-pagination
+ :current-page="currentPage"
+ @current-change="current_change"
+ layout="prev, pager, next"
+ :total="totalNum"
+ :page-size="pageSize"
+ >
</el-pagination>
</div>
</el-footer>
</el-container>
</el-container>
</template>
+<script>
+import departmentAside from "@/views/operate/fivepack/threepack/components/aside";
+import videoPoint from "@/api/system/videoPoint";
+
+export default {
+ name: "point",
+ components: { departmentAside },
+ created() {
+ this.hls = new Hls();
+ this.getVideoPointList();
+ },
+ data() {
+ return {
+ currentPage: 1,
+ totalNum: 10,
+ pageSize: 8,
+ videoData: [],
+ searchData: null,
+ hls: null,
+ videoList: [],
+ };
+ },
+ methods: {
+ async getVideoPointList(data) {
+ let communityId, streetId;
+ if (data) {
+ communityId = data.parentId;
+ streetId = data.id;
+ }
+ await videoPoint
+ .getVideoPointList({
+ current: this.currentPage,
+ size: this.pageSize,
+ communityId,
+ streetId,
+ })
+ .then(({ records, total }) => {
+ this.videoData = records;
+ this.totalNum = total;
+ })
+ .catch((err) => this.$message.error(err));
+ },
+ loadVideo(item) {
+ if (item.platResourceId) {
+ if (Hls.isSupported()) {
+ var video = document.getElementById(item.id);
+ var hls = new Hls();
+ videoPoint.getVideoPointUrl(item.platResourceId).then((res) => {
+ if (res.code === 0) {
+ hls.loadSource(res.data);
+ hls.attachMedia(video);
+ this.videoList.push(video);
+ // hls.on(Hls.Events.MANIFEST_PARSED, function () {
+ // // video.play();
+ // document.body.addEventListener(
+ // "click",
+ // function () {
+ // video.play();
+ // },
+ // false
+ // );
+ // });
+ setTimeout(() => {
+ video.play();
+ }, 2000);
+ }
+ });
+ }
+ } else {
+ this.$message.error("鏆傛棤瑙嗛");
+ }
+ },
+ selectedDepartment(data) {
+ this.currentPage = 1;
+ data.parentId = data.id;
+ data.id = null;
+ this.searchData = data;
+ this.getVideoPointList(data);
+ },
+ current_change(e) {
+ this.currentPage = e;
+ this.getVideoPointList(this.searchData);
+ },
+ },
+ beforeDestroy() {
+ this.videoList.forEach((element) => {
+ element.push();
+ });
+ },
+};
+</script>
<style lang="scss" scoped>
+.point-container{
+ margin-left: 5px;
+ border: 1px solid #ccc;
+ padding: 10px;
+}
.button-one {
height: 40px;
width: 80px;
- margin-left: 20px;
+ //margin-left: 20px;
padding: 0;
- background-color: #09152f;
+ // background-color: #09152f;
color: rgb(75, 155, 183);
border: 1px solid rgb(75, 155, 183);
}
-
+.title{
+ color: #333;
+}
.button-two {
height: 40px;
width: 80px;
padding: 0;
- background-color: #09152f;
+ // background-color: #09152f;
color: rgb(75, 155, 183);
border: 1px solid rgb(75, 155, 183);
}
-.el-button+.el-button{
+.el-button + .el-button {
margin: 0;
}
.button-third {
height: 40px;
width: 80px;
padding: 0;
- background-color: #09152f;
+ // background-color: #09152f;
color: rgb(75, 155, 183);
border: 1px solid rgb(75, 155, 183);
}
@@ -103,9 +218,47 @@
margin-left: 90px;
cursor: pointer;
}
-.el-pagination{
- line-height: 40px;
+.video-main {
+ display: flex;
+ flex-wrap: wrap;
+ overflow-y: scroll;
+ margin-left: 20px;
}
+.video-title {
+ color: rgb(75, 155, 183);
+ font-size: 11px;
+ line-height: 18px;
+ position: absolute;
+ z-index: 1;
+
+ left: 50px;
+}
+.button-div {
+ color: rgb(75, 155, 183);
+ position: absolute;
+ height: 30px;
+ line-height: 30px;
+ width: 100%;
+ margin-left: 20px;
+ cursor: pointer;
+ width: calc(100% - 20px);
+ border: 1px solid rgb(75, 155, 183);
+}
+
+.el-pagination {
+ // &::v-deep li,
+ // &::v-deep .btn-prev,
+ // &::v-deep .btn-next {
+ // background-color: #071f39;
+ // color: #4b9bb7;
+ // }
+
+ // &::v-deep .active {
+ // background-color: #409eff;
+ // color: #fff;
+ // }
+}
+
.bottonThird {
color: rgb(75, 155, 183);
font-size: 11px;
@@ -118,154 +271,47 @@
cursor: pointer;
}
-::v-deep .el-header {
- background-color: #09152f;
- color: #000;
- line-height: 60px;
-}
+// ::v-deep .el-header {
+// background-color: #09152f;
+// color: #000;
+// line-height: 60px;
+// }
-::v-deep .el-aside {
- background-color: #09152f;
-}
+// ::v-deep .el-aside {
+// background-color: #09152f;
+// }
-::v-deep .el-menu {
- background-color: #09152f;
-}
+// ::v-deep .el-menu {
+// background-color: #09152f;
+// }
-::v-deep .el-main,
-::v-deep .el-footer {
- background-color: #09152f;
-}
+// ::v-deep .el-main,
+// ::v-deep .el-footer {
+// background-color: #09152f;
+// }
::v-deep .el-tree-node__label {
line-height: 30px;
font-size: 14px;
- color: rgb(75, 155, 183);
+}
+
+video::-webkit-media-controls-timeline {
+ display: none;
+}
+
+video::-webkit-media-controls-current-time-display {
+ display: none;
+}
+
+video::-webkit-media-controls-time-remaining-display {
+ display: none;
+}
+
+video::-webkit-media-controls-mute-button {
+ display: none;
+}
+
+video::-webkit-media-controls-toggle-closed-captions-button {
+ display: none;
}
</style>
-<script src="https://vjs.zencdn.net/7.20.3/video.min.js"></script>
-<script>
- export default {
- data() {
- return {
- totalNum:7,
- pageSize:10,
- videoDate:[
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- },
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- },
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- }
- ,
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- },
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- }
- ,
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- },
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- },
- {
- id:12,
- steert:"xx琛楅亾",
- community:"xxx绀惧尯",
- imageUrl:"https://img2.baidu.com/it/u=2526846893,15288996&fm=253&fmt=auto&app=138&f=JPG?w=738&h=500",
- videoUrl:"http://vali-g1.cp31.ott.cibntv.net/youku/65730720cb94e7220271a3c96/0300080100632D30A3E43019FD116537F5162F-1035-48AC-BE1B-602DF0E92893.mp4?sid=166729534400010004780_00_Bda935cf9a33346c593fc27da8e694df3&sign=db39289573d143cf6e1ad8d8dff36682&ctype=50&si=183&psid=c732c4364319e7ef4685d8f1a568015941346"
- }
- ],
- treedata: [{
- label: '濡欓珮琛楅亾',
- children: [{
- label: '鍖楄鏉�',
- children: [{
- label: '铻鸿洺鍨�'
- }]
- },{
- label: '涓滆鏉�',
- children: [{
- label: '铻鸿洺鍨�'
- }]
- },{
- label: '鍙ら櫌绀惧尯',
- children: [{
- label: '铻鸿洺鍨�'
- }]
- }]
- }, {
- label: '浜戝嘲琛楅亾',
- children: [{
- label: '涓滀涵',
- children: [{
- label: '闅旀邯'
- }]
- }, {
- label: '椹ご',
- children: [{
- label: '榫欏彛'
- }]
- }]
- }, {
- label: '鏂拌矾婀鹃晣',
- children: [{
- label: '鏂拌矾婀鹃晣',
- children: [{
- label: '鏂拌矾婀鹃晣'
- }]
- }, {
- label: '鏂拌矾婀鹃晣',
- children: [{
- label: '鏂拌矾婀鹃晣'
- }]
- }]
- }],
- defaultProps: {
- children: 'children',
- label: 'label'
- },
- value:''
- };
- },
- methods: {
- handleNodeClick(data) {
- console.log(data);
- }
- }
- };
-</script>
\ No newline at end of file
--
Gitblit v1.8.0