|
@@ -290,17 +290,38 @@ a {
|
|
</div>
|
|
</div>
|
|
<div v-else>
|
|
<div v-else>
|
|
<a-table :columns="columns" :dataSource="dataList" :pagination="false">
|
|
<a-table :columns="columns" :dataSource="dataList" :pagination="false">
|
|
- <span slot="VIDEO_HEAD" slot-scope="text">
|
|
|
|
- <div v-if="text != ''"></div>
|
|
|
|
- <a-button @click="dirVideoGet" type="primary" icon="plus" v-else>选择素材</a-button>
|
|
|
|
|
|
+ <span slot="VIDEO_HEAD" slot-scope="text, record, index">
|
|
|
|
+ <div v-if="text != ''">
|
|
|
|
+ <video class="video" :src="text" controls="controls" style="height:160px">
|
|
|
|
+ 您的浏览器不支持 video 标签。
|
|
|
|
+ </video>
|
|
|
|
+ </div>
|
|
|
|
+ <a-button @click="checkMatemal('VIDEO_HEAD', index, record)" type="primary" icon="plus" v-else
|
|
|
|
+ >选择素材</a-button
|
|
|
|
+ >
|
|
</span>
|
|
</span>
|
|
- <span slot="VIDEO_PART" slot-scope="text">
|
|
|
|
- <div v-if="text.length > 0"></div>
|
|
|
|
- <a-button @click="dirVideoGet" type="primary" icon="plus" v-else>选择素材</a-button>
|
|
|
|
|
|
+ <span slot="VIDEO_PART" slot-scope="text, record, index">
|
|
|
|
+ <div>
|
|
|
|
+ <video
|
|
|
|
+ class="video"
|
|
|
|
+ :src="item"
|
|
|
|
+ controls="controls"
|
|
|
|
+ style="height:160px"
|
|
|
|
+ v-for="item of text"
|
|
|
|
+ :key="item"
|
|
|
|
+ >
|
|
|
|
+ 您的浏览器不支持 video 标签。
|
|
|
|
+ </video>
|
|
|
|
+ </div>
|
|
|
|
+ <a-button @click="checkMatemal('VIDEO_PART', index, record)" type="primary" icon="plus"
|
|
|
|
+ >选择素材</a-button
|
|
|
|
+ >
|
|
</span>
|
|
</span>
|
|
- <span slot="VIDEO_TAIL" slot-scope="text">
|
|
|
|
|
|
+ <span slot="VIDEO_TAIL" slot-scope="text, record, index">
|
|
<div v-if="text != ''"></div>
|
|
<div v-if="text != ''"></div>
|
|
- <a-button @click="dirVideoGet" type="primary" icon="plus" v-else>选择素材</a-button>
|
|
|
|
|
|
+ <a-button @click="checkMatemal('VIDEO_TAIL', index, record)" type="primary" icon="plus" v-else
|
|
|
|
+ >选择素材</a-button
|
|
|
|
+ >
|
|
</span>
|
|
</span>
|
|
</a-table>
|
|
</a-table>
|
|
</div>
|
|
</div>
|
|
@@ -466,8 +487,8 @@ a {
|
|
</div>
|
|
</div>
|
|
</a-modal>
|
|
</a-modal>
|
|
|
|
|
|
-
|
|
|
|
<account-check ref="check" @synchro="implement"></account-check>
|
|
<account-check ref="check" @synchro="implement"></account-check>
|
|
|
|
+ <check-matemal ref="matemal" @showVideo="showVideoFun" />
|
|
</a-card>
|
|
</a-card>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
@@ -477,20 +498,22 @@ import JEllipsis from '@/components/jeecg/JEllipsis'
|
|
import UploadToAli from '@femessage/upload-to-ali'
|
|
import UploadToAli from '@femessage/upload-to-ali'
|
|
import { fileCheck, fileInsert, fileEdit } from '@/api/actor'
|
|
import { fileCheck, fileInsert, fileEdit } from '@/api/actor'
|
|
import { getAction, postAction, postFile } from '@/api/manage'
|
|
import { getAction, postAction, postFile } from '@/api/manage'
|
|
-
|
|
|
|
|
|
+import { stopOtherVideo, closeAllVideoFun } from '@/utils/videoControl' // 停止除当前外的其他视频播放,及停止所有视频播放的方法
|
|
import { mapGetters } from 'vuex'
|
|
import { mapGetters } from 'vuex'
|
|
import moment from 'moment'
|
|
import moment from 'moment'
|
|
|
|
|
|
import BMF from 'browser-md5-file'
|
|
import BMF from 'browser-md5-file'
|
|
|
|
|
|
import accountCheck from './accountCheck'
|
|
import accountCheck from './accountCheck'
|
|
|
|
+import checkMatemal from './checkMatemal'
|
|
export default {
|
|
export default {
|
|
name: 'YardList',
|
|
name: 'YardList',
|
|
mixins: [JeecgListMixin],
|
|
mixins: [JeecgListMixin],
|
|
components: {
|
|
components: {
|
|
JEllipsis,
|
|
JEllipsis,
|
|
UploadToAli,
|
|
UploadToAli,
|
|
- accountCheck
|
|
|
|
|
|
+ accountCheck,
|
|
|
|
+ checkMatemal
|
|
},
|
|
},
|
|
|
|
|
|
data() {
|
|
data() {
|
|
@@ -499,26 +522,23 @@ export default {
|
|
{
|
|
{
|
|
title: '片头',
|
|
title: '片头',
|
|
dataIndex: 'VIDEO_HEAD',
|
|
dataIndex: 'VIDEO_HEAD',
|
|
- key: 1,
|
|
|
|
scopedSlots: { customRender: 'VIDEO_HEAD' },
|
|
scopedSlots: { customRender: 'VIDEO_HEAD' },
|
|
align: 'center'
|
|
align: 'center'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
title: '内容',
|
|
title: '内容',
|
|
dataIndex: 'VIDEO_PART',
|
|
dataIndex: 'VIDEO_PART',
|
|
- key: 2,
|
|
|
|
scopedSlots: { customRender: 'VIDEO_PART' },
|
|
scopedSlots: { customRender: 'VIDEO_PART' },
|
|
align: 'center'
|
|
align: 'center'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
title: '片尾',
|
|
title: '片尾',
|
|
dataIndex: 'VIDEO_TAIL',
|
|
dataIndex: 'VIDEO_TAIL',
|
|
- key: 3,
|
|
|
|
scopedSlots: { customRender: 'VIDEO_TAIL' },
|
|
scopedSlots: { customRender: 'VIDEO_TAIL' },
|
|
align: 'center'
|
|
align: 'center'
|
|
}
|
|
}
|
|
],
|
|
],
|
|
- dataList: [{ VIDEO_HEAD: '', VIDEO_PART: [], VIDEO_TAIL: '' }],
|
|
|
|
|
|
+ dataList: [{ key: 1, VIDEO_HEAD: '', VIDEO_PART: [], VIDEO_TAIL: '' }],
|
|
inputVisible: false,
|
|
inputVisible: false,
|
|
inputValue: '',
|
|
inputValue: '',
|
|
labelCol: {
|
|
labelCol: {
|
|
@@ -600,6 +620,9 @@ export default {
|
|
return y + '-' + MM + '-' + d
|
|
return y + '-' + MM + '-' + d
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ updated() {
|
|
|
|
+ stopOtherVideo()
|
|
|
|
+ },
|
|
computed: {
|
|
computed: {
|
|
dirImg() {
|
|
dirImg() {
|
|
let date = new Date()
|
|
let date = new Date()
|
|
@@ -632,6 +655,9 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
|
|
+ checkMatemal(type, number, item) {
|
|
|
|
+ this.$refs.matemal.showCheck(type, number, item)
|
|
|
|
+ },
|
|
moment,
|
|
moment,
|
|
a(item) {
|
|
a(item) {
|
|
item.showVideo = true
|
|
item.showVideo = true
|
|
@@ -680,6 +706,17 @@ export default {
|
|
})
|
|
})
|
|
// /ctop/materialUpload/uploadAccount
|
|
// /ctop/materialUpload/uploadAccount
|
|
},
|
|
},
|
|
|
|
+ showVideoFun(data, typeName) {
|
|
|
|
+ console.log(data)
|
|
|
|
+ if (typeName == 'VIDEO_HEAD') {
|
|
|
|
+ //片头
|
|
|
|
+ this.dataList[data.key].VIDEO_HEAD = data.head
|
|
|
|
+ } else if (typeName == 'VIDEO_TAIL') {
|
|
|
|
+ this.dataList[data.key].VIDEO_TAIL = data.foot
|
|
|
|
+ } else {
|
|
|
|
+ this.dataList[data.key].VIDEO_PART = data.content
|
|
|
|
+ }
|
|
|
|
+ },
|
|
downloadByBlob() {
|
|
downloadByBlob() {
|
|
fetch(this.showUrlWater)
|
|
fetch(this.showUrlWater)
|
|
.then(res => res.blob())
|
|
.then(res => res.blob())
|