|
@@ -21,10 +21,9 @@
|
|
|
display:item.IsVisibility ? 'black' : 'none',
|
|
|
}"
|
|
|
>
|
|
|
- <!--<VueDragResize
|
|
|
- v-for="itemV in signalPreList" :key="itemV.deviceID" class="sitem"
|
|
|
+ <VueDragResize
|
|
|
+ v-for="itemV in signalPreList" :key="itemV.Id" class="sitem"
|
|
|
:w="item.Width*bigScale/itemV.splitScreenStatus" :h="item.Height*bigScale/itemV.splitScreenStatus"
|
|
|
- :parentLimitation="false"
|
|
|
@dragstop="dragStop"
|
|
|
@resizestop="(obj) => reSizeSignal(obj,itemV)"
|
|
|
>
|
|
@@ -39,21 +38,19 @@
|
|
|
</div>
|
|
|
</VueDragResize>
|
|
|
|
|
|
- <div v-for="(itemD,index) in divArr" :key="index" class="sitem2">
|
|
|
+ <div v-for="itemD in divArr" :key="itemD" class="sitem2">
|
|
|
{{itemD}}
|
|
|
- </div>-->
|
|
|
-
|
|
|
+ </div>
|
|
|
|
|
|
- <div v-for="item in signalPreList">
|
|
|
+ <!--<div v-for="item in [...signalPreList,...divArr]">
|
|
|
<VueDragResize
|
|
|
- v-for="itemV in signalPreList" v-if="itemV.deviceID" :key="itemV.deviceID" class="sitem"
|
|
|
- :w="item.Width*bigScale/itemV.splitScreenStatus" :h="item.Height*bigScale/itemV.splitScreenStatus"
|
|
|
- :parentLimitation="false"
|
|
|
+ v-if="item.deviceID" :key="item" class="sitem"
|
|
|
+ :w="item.Width*bigScale/item.splitdeviceIDScreenStatus" :h="item.Height*bigScale/item.splitScreenStatus"
|
|
|
@dragstop="dragStop"
|
|
|
- @resizestop="(obj) => reSizeSignal(obj,itemV)"
|
|
|
+ @resizestop="(obj) => reSizeSignal(obj,item)"
|
|
|
>
|
|
|
<div ref="signal">
|
|
|
- <div class="closeBtn" @click.stop="closeSignal(itemV)">×</div>
|
|
|
+ <div class="closeBtn" @click.stop="closeSignal(item)">×</div>
|
|
|
<video-player
|
|
|
ref="videoPlayer"
|
|
|
:options="playerOptions"
|
|
@@ -63,10 +60,10 @@
|
|
|
</div>
|
|
|
</VueDragResize>
|
|
|
|
|
|
- <div v-for="(itemD,index) in divArr" :key="index" class="sitem2">
|
|
|
- {{itemD}}
|
|
|
+ <div v-else :key="item" class="sitem2">
|
|
|
+ {{item}}
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ </div>-->
|
|
|
|
|
|
</draggable>
|
|
|
</div>
|
|
@@ -78,7 +75,7 @@
|
|
|
import VueDragResize from 'vue-drag-resize'
|
|
|
|
|
|
import '../assets/less/splitscreen.less'
|
|
|
- import {getElementLeft, getElementTop, getStaticFile} from "../../utils/tools"
|
|
|
+ import {getElementLeft, getElementTop, getStaticFile, guId} from "../../utils/tools"
|
|
|
import {reqRefreshView} from "../api"
|
|
|
import VideoPlayer from "./player.vue"
|
|
|
|
|
@@ -117,8 +114,6 @@
|
|
|
async beforeCreate() {
|
|
|
this.bigScreenJson = await getStaticFile('EnityBigScreen.Data')
|
|
|
this.currentBigshow = this.bigScreenJson.filter(item => item.IsVisibility === true)
|
|
|
- /*this.videoSourceJson = await getStaticFile('video_source.json')
|
|
|
- this.$set(this.playerOptions,'sources',this.videoSourceJson)*/
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
@@ -131,7 +126,7 @@
|
|
|
)
|
|
|
},
|
|
|
|
|
|
- // 大屏开窗
|
|
|
+ // 大屏开窗接口提交
|
|
|
reqRefreshBigScreen(arr) {
|
|
|
const streamWindows = []
|
|
|
setTimeout(async () => {
|
|
@@ -189,7 +184,7 @@
|
|
|
// 关闭信号源
|
|
|
closeSignal(signal) {
|
|
|
const signalPreList = this.$store.state.signalPreList
|
|
|
- const newSignalPreList = signalPreList.filter(item => item.sourceId !== signal.sourceId)
|
|
|
+ const newSignalPreList = signalPreList.filter(item => item.Id !== signal.Id)
|
|
|
this.$store.dispatch('updateSignalPreList',newSignalPreList)
|
|
|
}
|
|
|
},
|
|
@@ -201,18 +196,26 @@
|
|
|
get() {
|
|
|
return this.$store.state.signalPreList
|
|
|
},
|
|
|
+
|
|
|
set(arr) {
|
|
|
- if(arr.length>0){
|
|
|
- let index = arr.length-1
|
|
|
- arr[index].splitScreenStatus = this.$store.state.splitScreenStatus+1
|
|
|
- arr[index].width = this.currentBigshow[0].Width*this.$store.state.bigScale/arr[index].splitScreenStatus
|
|
|
- arr[index].height = this.currentBigshow[0].Height*this.$store.state.bigScale/arr[index].splitScreenStatus
|
|
|
- arr[index].widthScale = arr[index].width/(this.currentBigshow[0].Width*this.$store.state.bigScale)
|
|
|
- arr[index].heightScale = arr[index].height/(this.currentBigshow[0].Height*this.$store.state.bigScale)
|
|
|
- this.$store.dispatch('updateSignalPreList',arr)
|
|
|
+ const arr2 = []
|
|
|
+ arr.forEach(item => {
|
|
|
+ arr2.push(JSON.parse(JSON.stringify(item)))
|
|
|
+ })
|
|
|
+ arr2.forEach(item => item.Id = guId())
|
|
|
+ console.log(arr2)
|
|
|
+
|
|
|
+ if(arr2.length>0){
|
|
|
+ let index = arr2.length-1
|
|
|
+ arr2[index].splitScreenStatus = this.$store.state.splitScreenStatus+1
|
|
|
+ arr2[index].width = this.currentBigshow[0].Width*this.$store.state.bigScale/arr2[index].splitScreenStatus
|
|
|
+ arr2[index].height = this.currentBigshow[0].Height*this.$store.state.bigScale/arr2[index].splitScreenStatus
|
|
|
+ arr2[index].widthScale = arr2[index].width/(this.currentBigshow[0].Width*this.$store.state.bigScale)
|
|
|
+ arr2[index].heightScale = arr2[index].height/(this.currentBigshow[0].Height*this.$store.state.bigScale)
|
|
|
+ this.$store.dispatch('updateSignalPreList',arr2)
|
|
|
return
|
|
|
}
|
|
|
- this.$store.dispatch('updateSignalPreList',arr)
|
|
|
+ this.$store.dispatch('updateSignalPreList',arr2)
|
|
|
}
|
|
|
},
|
|
|
|
|
@@ -253,10 +256,6 @@
|
|
|
this.$data.divArr.push(i+1)
|
|
|
}
|
|
|
|
|
|
- /*const arr = this.$store.state.signalPreList
|
|
|
- this.reqRefreshBigScreen(arr)*/
|
|
|
- // this.$store.dispatch('updateSignalPreList',this.$data.streamWindows)
|
|
|
- // console.log(this.$data.streamWindows)
|
|
|
this.reqRefreshBigScreen(this.$data.streamWindows)
|
|
|
}
|
|
|
}
|