From 22d9bd7152c6de2d71afade6ab7b5f788d023578 Mon Sep 17 00:00:00 2001
From: Oliver <1070107765@qq.com>
Date: 星期一, 12 十二月 2022 18:07:39 +0800
Subject: [PATCH] fix bug
---
src/views/systemSetting/device/point/index.vue | 209 ++++++++++++++++++++++++++++++++++++---------------
1 files changed, 147 insertions(+), 62 deletions(-)
diff --git a/src/views/systemSetting/device/point/index.vue b/src/views/systemSetting/device/point/index.vue
index 32368c0..924bbde 100644
--- a/src/views/systemSetting/device/point/index.vue
+++ b/src/views/systemSetting/device/point/index.vue
@@ -1,40 +1,143 @@
<template>
- <el-container style="height: 100%;">
+ <el-container style="height: 100%">
<el-aside heigth="100%" width="200px ">
<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-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
+ >
</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 videoData" style="height: 240px ;width: 210px; position: relative;margin-left:20px ;">
+ <el-main style="display: flex; flex-wrap: wrap; overflow-y: scroll">
+ <div
+ v-for="item in videoData"
+ style="
+ width: 240px;
+ 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.name }}{{ item.community }}</div>
- <video id="my-video" :src="item.urlAddress" class="video-js" controls preload="auto" width="210px" height="150px">
+ style="
+ color: rgb(75, 155, 183);
+ font-size: 11px;
+ line-height: 18px;
+ position: absolute;
+ z-index: 1;
+ left: 50px;
+ "
+ >
+ {{ item.name }}{{ item.community }}
+ </div>
+ <video
+ :id="item.id"
+ class="video-js vjs-default-skin"
+ controls
+ preload="auto"
+ width="240px"
+ height="200px"
+ type="video/mp4"
+ :src="item.urlAddress"
+ >
</video>
- <div class="bottonOne" @click="">鏌ョ湅瑙嗛</div>
- <div class="bottonTwo">瑙嗛涓婃姤</div>
- <div class="bottonThird">瀵硅</div>
+ <div @click="loadVideo(item)" class="button-div">鏌ョ湅瑙嗛</div>
</div>
</el-main>
<el-footer>
- <div style="margin-bottom:0;">
- <el-pagination :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
- :page-size="pageSize">
+ <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: 10,
+ videoData: [],
+ searchData: null,
+ hls: null
+ };
+ },
+ 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(data) {
+ if (Hls.isSupported()) {
+ const videoPlayer = document.getElementById(data.id);
+ this.hls.loadSource(data.urlAddress);
+ this.hls.attachMedia(videoPlayer);
+ }
+ },
+ 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.hls = null;
+ }
+};
+</script>
<style lang="scss" scoped>
.button-one {
height: 40px;
@@ -54,7 +157,7 @@
color: rgb(75, 155, 183);
border: 1px solid rgb(75, 155, 183);
}
-.el-button+.el-button{
+.el-button + .el-button {
margin: 0;
}
.button-third {
@@ -94,9 +197,32 @@
margin-left: 90px;
cursor: pointer;
}
-.el-pagination{
- line-height: 40px;
+
+.button-div {
+ color: rgb(75, 155, 183);
+ position: absolute;
+ height: 30px;
+ line-height: 30px;
+ width: 100%;
+ margin-left: 20px;
+ cursor: pointer;
+ 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;
@@ -131,46 +257,5 @@
::v-deep .el-tree-node__label {
line-height: 30px;
font-size: 14px;
- color: rgb(75, 155, 183);
}
-</style>
-<script>
-import departmentAside from "@/views/operate/fivepack/threepack/components/aside";
-import videoPoint from "@/api/system/videoPoint";
-
- export default {
- components: { departmentAside },
- created() {
- this.getVideoPointList();
- },
- data() {
- return {
- currentPage: 1,
- totalNum: 10,
- pageSize: 10,
- videoData: [],
- value:''
- };
- },
- methods: {
- getVideoPointList(data) {
- let communityId, streetId;
- if (data) {
- communityId = data.parentId;
- streetId = data.id;
- }
- 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))
- },
- selectedDepartment(data) {
- if (!data.children) {
- this.getVideoPointList(data);
- }
- }
- }
- };
-</script>
\ No newline at end of file
+</style>
\ No newline at end of file
--
Gitblit v1.8.0