Merge branch 'bjxz-dev' of http://139.9.66.234:18023/dhp/zhgdyunapp into bjxz-dev
This commit is contained in:
commit
b31b1fe53b
72
components/tree-node/index.vue
Normal file
72
components/tree-node/index.vue
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
|
||||||
|
<template>
|
||||||
|
<view class="tree-content-compontent">
|
||||||
|
<view class="content-box" @click="expandFn">
|
||||||
|
<text class="box-text" @click.stop="toggleNodes(item)">{{ item.groupName }}</text>
|
||||||
|
<u-icon name="arrow-right" color="#D5D5D5" size="44" v-if="!expanded && item.children && item.children.length"></u-icon>
|
||||||
|
<u-icon name="arrow-down" color="#D5D5D5" size="44" v-if="expanded && item.children && item.children.length"></u-icon>
|
||||||
|
<!-- <image style="width:80rpx;height:80rpx;float:left" src="../../static/icon-down-black.png" mode="">
|
||||||
|
</image> -->
|
||||||
|
</view>
|
||||||
|
<view class="sub-component">
|
||||||
|
<view :class="expanded == true ? 'expandedStyle' : ''" v-if="item.children && item.children.length && expanded">
|
||||||
|
<tree-menu v-for="child in item.children" :key="child.id" :item="child" :treeIndex="treeIndex + 1" @clickItem="clickTreeItem"></tree-menu>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'TreeMenu',
|
||||||
|
props: ['item','treeIndex'],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
expanded: false,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
clickTreeItem(item){
|
||||||
|
console.log(item,777888)
|
||||||
|
uni.navigateTo({
|
||||||
|
url: './videoList?obj=' + JSON.stringify(item)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
expandFn(){
|
||||||
|
this.expanded = !this.expanded;
|
||||||
|
},
|
||||||
|
toggleNodes(item) {
|
||||||
|
this.$emit('clickItem', item);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.tree-content-compontent{
|
||||||
|
background: #FFFFFF;
|
||||||
|
.content-box{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: start;
|
||||||
|
padding: 20rpx 36rpx;
|
||||||
|
position: relative;
|
||||||
|
// border-bottom: 2px solid #D6D6D6;
|
||||||
|
>text{
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 32rpx;
|
||||||
|
color: #272D45;
|
||||||
|
margin-right: auto;
|
||||||
|
display: inline-block;
|
||||||
|
flex: 1;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.expandedStyle{
|
||||||
|
margin-left: 40rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
4
main.js
4
main.js
@ -44,8 +44,8 @@ if (process.env.NODE_ENV === 'development') {
|
|||||||
// Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地
|
// Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地
|
||||||
// Vue.prototype.work_url = 'http://47.93.215.234:19997' // 工作流线上地址(弃用)
|
// Vue.prototype.work_url = 'http://47.93.215.234:19997' // 工作流线上地址(弃用)
|
||||||
// Vue.prototype.work_url = 'http://42.180.188.17:19997' // 工作流线上地址
|
// Vue.prototype.work_url = 'http://42.180.188.17:19997' // 工作流线上地址
|
||||||
Vue.prototype.work_url = 'http://42.180.188.17:19097' // 工作流测试地址
|
// Vue.prototype.work_url = 'http://42.180.188.17:19097' // 工作流测试地址
|
||||||
// Vue.prototype.work_url = 'http://192.168.34.138:5173' // 工作流地址
|
Vue.prototype.work_url = 'http://192.168.34.138:5173' // 工作流地址
|
||||||
// Vue.prototype.work_url = 'http://139.9.66.234:5173' // 工作流地址
|
// Vue.prototype.work_url = 'http://139.9.66.234:5173' // 工作流地址
|
||||||
// Vue.prototype.work_url = 'http://192.168.34.126:5173' // 工作流地址
|
// Vue.prototype.work_url = 'http://192.168.34.126:5173' // 工作流地址
|
||||||
// Vue.prototype.url_config = 'http://8.142.139.165:7080/' // 湖里
|
// Vue.prototype.url_config = 'http://8.142.139.165:7080/' // 湖里
|
||||||
|
|||||||
@ -23,6 +23,10 @@
|
|||||||
"path": "pages/videoManage/videoList",
|
"path": "pages/videoManage/videoList",
|
||||||
"style": {}
|
"style": {}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"path": "pages/videoManage/videoGroup",
|
||||||
|
"style": {}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "pages/videoManage/safeMeeting",
|
"path": "pages/videoManage/safeMeeting",
|
||||||
"style": {}
|
"style": {}
|
||||||
|
|||||||
@ -296,6 +296,7 @@
|
|||||||
let that = this;
|
let that = this;
|
||||||
let data = {
|
let data = {
|
||||||
projectSn: uni.getStorageSync("dept"),
|
projectSn: uni.getStorageSync("dept"),
|
||||||
|
ignoreDataScope: "ignoreDataScope"
|
||||||
};
|
};
|
||||||
this.sendRequest({
|
this.sendRequest({
|
||||||
url: 'xmgl/qualityRegion/notTreeList',
|
url: 'xmgl/qualityRegion/notTreeList',
|
||||||
|
|||||||
@ -559,10 +559,13 @@
|
|||||||
})
|
})
|
||||||
break
|
break
|
||||||
case 'videoMonitor':
|
case 'videoMonitor':
|
||||||
|
// uni.navigateTo({
|
||||||
|
// url: '../../videoManage/videoList?sn=' +
|
||||||
|
// this.projectDetail.projectSn +
|
||||||
|
// '&pageType=backEnd'
|
||||||
|
// })
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: '../../videoManage/videoList?sn=' +
|
url: '../../videoManage/videoGroup'
|
||||||
this.projectDetail.projectSn +
|
|
||||||
'&pageType=backEnd'
|
|
||||||
})
|
})
|
||||||
break
|
break
|
||||||
case 'projectInfo':
|
case 'projectInfo':
|
||||||
|
|||||||
@ -26,9 +26,9 @@
|
|||||||
<view class="zoom zoomout" @click="controlVideoFn(0,0,-0.2,'ZOOM_OUT')"></view>
|
<view class="zoom zoomout" @click="controlVideoFn(0,0,-0.2,'ZOOM_OUT')"></view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="video-playback" @click="toBackList">
|
<!-- <view class="video-playback" @click="toBackList">
|
||||||
视频回放
|
视频回放
|
||||||
</view>
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
61
pages/videoManage/videoGroup.vue
Normal file
61
pages/videoManage/videoGroup.vue
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
<template>
|
||||||
|
<view class="main-content">
|
||||||
|
<headers :showBack="true">
|
||||||
|
<view class="headerName">
|
||||||
|
视频播放列表
|
||||||
|
</view>
|
||||||
|
</headers>
|
||||||
|
<view class="content-part">
|
||||||
|
<tree-menu v-for="(item,index) in treeData" :key="item.id" :item="item" :treeIndex="treeIndex" @clickItem="clickTreeItem"></tree-menu>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import TreeMenu from '../../components/tree-node/index.vue'
|
||||||
|
export default {
|
||||||
|
name: 'Study',
|
||||||
|
components: {
|
||||||
|
TreeMenu
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
treeIndex: 1, // 树形层级index
|
||||||
|
treeData: [],
|
||||||
|
projectSn: ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad() {
|
||||||
|
this.projectSn = JSON.parse(uni.getStorageSync('projectDetail')).projectSn;
|
||||||
|
this.getVideoGroup();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
clickTreeItem(item){
|
||||||
|
console.log(item,777888)
|
||||||
|
uni.navigateTo({
|
||||||
|
url: './videoList?obj=' + JSON.stringify(item)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getVideoGroup(){
|
||||||
|
var that = this
|
||||||
|
let requestData = {
|
||||||
|
projectSn: this.projectSn
|
||||||
|
}
|
||||||
|
this.sendRequest({
|
||||||
|
url: "xmgl/videoGroup/tree/list",
|
||||||
|
data: requestData,
|
||||||
|
success(res){
|
||||||
|
console.log('视频分组列表',res)
|
||||||
|
that.treeData = res.result;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.main-content {
|
||||||
|
background: #F4F5FD;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -13,7 +13,7 @@
|
|||||||
<image src="/static/no_poster.png" class="no_poster"></image>
|
<image src="/static/no_poster.png" class="no_poster"></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="videoName">
|
<view class="videoName">
|
||||||
{{item.name}}
|
{{item.videoName}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@ -32,81 +32,112 @@
|
|||||||
import footers from "../../components/footers/footers.vue"
|
import footers from "../../components/footers/footers.vue"
|
||||||
import headers from "../../components/headers/headers.vue"
|
import headers from "../../components/headers/headers.vue"
|
||||||
export default {
|
export default {
|
||||||
components:{footers},
|
components: {
|
||||||
|
footers
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
videoList:[],
|
videoList: [],
|
||||||
pageType:'company'
|
pageType: 'company',
|
||||||
|
groupInfo: {},
|
||||||
|
projectSn: ""
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
if(options.pageType){
|
if (options.pageType) {
|
||||||
this.pageType=options.pageType
|
this.pageType = options.pageType
|
||||||
}
|
}
|
||||||
this.loadData(options.sn)
|
if (options.obj) {
|
||||||
|
this.groupInfo = JSON.parse(options.obj)
|
||||||
|
}
|
||||||
|
this.projectSn = JSON.parse(uni.getStorageSync('projectDetail')).projectSn;
|
||||||
|
this.loadData()
|
||||||
},
|
},
|
||||||
methods:{
|
methods: {
|
||||||
playVideoFn(item){
|
playVideoFn(item) {
|
||||||
// console.log(item)
|
// console.log(item)
|
||||||
uni.setStorageSync('videoInfo',item)
|
uni.setStorageSync('videoInfo', item)
|
||||||
// if(item.liveRadioUrl){
|
// if(item.liveRadioUrl){
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
// url:'./playVideo?url='+item.liveRadioUrl,
|
// url:'./playVideo?url='+item.liveRadioUrl,
|
||||||
url:'playVideo'
|
url: 'playVideo'
|
||||||
})
|
})
|
||||||
// }
|
// }
|
||||||
|
|
||||||
},
|
},
|
||||||
//获取项目视频
|
//获取项目分组视频
|
||||||
loadData(sn) {
|
loadData(sn) {
|
||||||
var that = this
|
var that = this
|
||||||
|
let requestData = {
|
||||||
|
groupId: this.groupInfo.id,
|
||||||
|
projectSn: this.projectSn,
|
||||||
|
videoType: 3
|
||||||
|
}
|
||||||
this.sendRequest({
|
this.sendRequest({
|
||||||
url: "xmgl/company/getComapnyStatisticsList",
|
url: "xmgl/videoItem/selectVideoItemListByType",
|
||||||
data: {sn: sn,videoType:1},
|
data: requestData,
|
||||||
method: "POST",
|
method: "POST",
|
||||||
success(res){
|
success(res) {
|
||||||
console.log('找封面',res)
|
console.log('找封面', res)
|
||||||
that.videoList = res.result.videoList
|
that.videoList = res.result
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
// //获取项目视频
|
||||||
|
// loadData(sn) {
|
||||||
|
// var that = this
|
||||||
|
// this.sendRequest({
|
||||||
|
// url: "xmgl/company/getComapnyStatisticsList",
|
||||||
|
// data: {sn: sn,videoType:1},
|
||||||
|
// method: "POST",
|
||||||
|
// success(res){
|
||||||
|
// console.log('找封面',res)
|
||||||
|
// that.videoList = res.result.videoList
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// },
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.videoBox{
|
.videoBox {
|
||||||
padding: 20px 10px 10px;
|
padding: 20px 10px 10px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
.videoItem{
|
|
||||||
float: left;
|
.videoItem {
|
||||||
background-color: white;
|
float: left;
|
||||||
width: calc(50% - 5px);
|
background-color: white;
|
||||||
margin-bottom: 10px;
|
width: calc(50% - 5px);
|
||||||
&:nth-child(2n-1){
|
margin-bottom: 10px;
|
||||||
margin-right: 10px;
|
|
||||||
}
|
&:nth-child(2n-1) {
|
||||||
.videoPoster{
|
margin-right: 10px;
|
||||||
height: 90px;
|
}
|
||||||
width: 100%;
|
|
||||||
background-color: #282828;
|
.videoPoster {
|
||||||
text-align: center;
|
height: 90px;
|
||||||
.no_poster{
|
width: 100%;
|
||||||
width: 55px;
|
background-color: #282828;
|
||||||
height: 50px;
|
text-align: center;
|
||||||
margin-top: 20px;
|
|
||||||
|
.no_poster {
|
||||||
|
width: 55px;
|
||||||
|
height: 50px;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.videoName {
|
||||||
|
font-size: 14px;
|
||||||
|
color: $uni-text-color;
|
||||||
|
padding: 3px 0 8px;
|
||||||
|
width: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.videoName{
|
</style>
|
||||||
font-size: 14px;
|
|
||||||
color: $uni-text-color;
|
|
||||||
padding: 3px 0 8px;
|
|
||||||
width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
Loading…
x
Reference in New Issue
Block a user