Browse Source

发布2

dev
xuhuajiao 3 years ago
parent
commit
62c2703218
  1. 33
      src/views/components/MaterialCompontentList.vue
  2. 109
      src/views/immediateRelease/index.vue
  3. 1
      src/views/materialContent/materialList/index.vue

33
src/views/components/MaterialCompontentList.vue

@ -13,11 +13,7 @@
</div>
<p class="file_name">{{ item.name }}</p>
</div>
<div
v-for="(item, index) in materialList"
:key="'list-'+index"
:class="['material_item', 'item_cont', { 'item_multi': selectedListId.includes(item.material_id) }]"
>
<div v-for="(item, index) in materialList" :key="'list-'+index" :class="['material_item', 'item_cont', { 'item_multi': selectedListId.includes(item.material_id) }]">
<img v-if="item.img_path || item.material_type == 1" :src="item.img_path" :onerror="defaultImg" alt />
<div v-if="item.material_type == 2" class="radio_img"></div>
<div class="item_format">
@ -35,9 +31,9 @@ import { getMaterialList } from '@/api/material/material'
import { getSeconds } from '@/utils/index.js'
export default {
name: 'MaterialList',
components: { },
components: {},
filters: {
getSeconds(s) {
getSeconds (s) {
return getSeconds(s)
}
},
@ -47,7 +43,7 @@ export default {
required: true
}
},
data() {
data () {
return {
orga_id: '133221333123111', // ID
rootFolderId: null, // ID
@ -64,26 +60,26 @@ export default {
}
},
computed: {
changePlaceholder() {
changePlaceholder () {
return this.publishType === 0 ? '即时发布 2022-01-01' : '定时发布 2022-01-01'
},
defaultImg() {
defaultImg () {
return 'this.src="' + require('@/assets/images/menu_bg_02.png') + '"'
}
},
watch: {
isMultiSelected(newName, oldName) {
isMultiSelected (newName, oldName) {
if (newName === false) {
this.selectedListId = []
}
}
},
mounted() {
mounted () {
this.getMaterialList()
},
methods: {
// list
getMaterialList() {
getMaterialList () {
this.materialFolders = []
this.materialList = []
let params
@ -100,6 +96,7 @@ export default {
'folder_id': folder_id,
'material_name': null,
'material_type': null,
'material_type_not': '2',
'orga_id': this.orga_id
}
} else {
@ -109,6 +106,7 @@ export default {
'folder_id': null,
'material_name': null,
'material_type': null,
'material_type_not': '2',
'orga_id': this.orga_id
}
}
@ -119,6 +117,7 @@ export default {
}
this.materialFolders = res.data.materialFolders
this.materialList = res.data.pageThemeVO
// data
this.thisFoldId = res.data.thisFoldId
//
@ -136,14 +135,14 @@ export default {
}
})
},
returnFolder() {
returnFolder () {
this.isReturn = false
this.isToFolder = false
this.rootFolderId = localStorage.getItem('rootFolderId')
this.getMaterialList()
},
//
floderDbClick(item, index) {
floderDbClick (item, index) {
this.isToFolder = true
this.currentFolderId = item.id
localStorage.setItem('currentFolderId', this.currentFolderId)
@ -151,8 +150,8 @@ export default {
this.selectedListId = []
},
// -
checkedItem(item) {
const id = item.material_id
checkedItem (item) {
let id = item.material_id
const inFolderId = item.in_folder_id
const type = item.material_type
const arr = this.selectedListId

109
src/views/immediateRelease/index.vue

@ -139,7 +139,7 @@
<div class="mulit_btn" @click="multiSelectBtn">{{ mulitText }}</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" round> </el-button>
<el-button type="primary" round @click="uploadSelected()"> </el-button>
<el-button round @click="cancelContSelect"> </el-button>
</div>
</el-dialog>
@ -191,7 +191,7 @@
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" round @click="editMaterialSubmit()"> </el-button>
<el-button type="primary" round @click="listEditVisible = false"> </el-button>
<el-button round @click="listEditVisible = false"> </el-button>
</div>
</el-dialog>
@ -382,7 +382,6 @@ export default {
],
activeIndex: 0,
activeItemIndex: 0,
uploadContentIds: [] // 素材 / 主题库已选择的
}
},
computed: {
@ -394,14 +393,17 @@ export default {
}
},
created () {
this.selectedMaterial = []
this.selectedMaterial = JSON.parse(localStorage.getItem('selectedMaterial'))
//
this.selectedMaterial.forEach((item, key) => {
this.materialPostfix[key] = item.deposit_url.substring(
item.deposit_url.lastIndexOf('.') + 1,
item.deposit_url.length
)
})
if (this.selectedMaterial.length != 0) {
this.selectedMaterial.forEach((item, key) => {
this.materialPostfix[key] = item.deposit_url.substring(
item.deposit_url.lastIndexOf('.') + 1,
item.deposit_url.length
)
})
}
},
mounted () {
if (this.$route.path === '/release') {
@ -447,10 +449,6 @@ export default {
this.form.release_start = arrDate[0]
this.form.release_end = arrDate[1]
}
console.log("看这里这里")
console.log(this.selectedEditData)
console.log(this.selectedMaterial)
console.log("看这里这里")
this.form.release_materialDTOs = this.selectedMaterial.map((item, index) => {
const json = {}
if (item.material_type == 0) {
@ -481,7 +479,7 @@ export default {
saveRelease(this.form).then(res => {
if (res.code == 200) {
this.$message.success('发布成功!')
// this.selectedMaterial = []
localStorage.removeItem('selectedMaterial')
} else {
this.$message.error(res.msg)
}
@ -565,6 +563,7 @@ export default {
this.contentIds.splice(index, 1)
this.selectedEditData.splice(index, 1)
this.selectedMaterial.splice(i, 1)
localStorage.setItem('selectedMaterial', JSON.stringify(this.selectedMaterial))
},
//
clickMaterialItem (id, item) {
@ -624,13 +623,16 @@ export default {
if (this.audioChecked != -1) {
const index = this.audioChecked
if (!this.isMainBgm) {
this.selectedMaterial.find((item, key) => {
if (item.material_type == 2) {
this.selectedMaterial.splice(key, 1)
this.audioListData[index].material_type = 2
this.selectedMaterial.push(this.audioListData[index])
}
this.audioListData[index].material_type = 2
const resultIndex = this.selectedMaterial.findIndex((item, key) => {
return item.material_type == 2
})
if (resultIndex == -1) {
this.selectedMaterial.push(this.audioListData[index])
} else {
this.selectedMaterial.splice(resultIndex, 1, this.audioListData[index])
}
localStorage.setItem('selectedMaterial', JSON.stringify(this.selectedMaterial))
} else {
this.selectedEditData[this.thisEditIndex].showAudioName = this.audioListData[index].material_name
this.selectedEditData[this.thisEditIndex].showAudioUrl = this.audioListData[index].deposit_url
@ -640,59 +642,61 @@ export default {
this.selectedEditData[this.thisEditIndex].showAudioUrl = ''
}
},
// -
clearCheckbox () {
if (this.form.release_cycle == 2) {
this.selectWeekly = []
this.form.release_weekly = []
}
},
//
selectAnimation (event, item) {
item.showAnimationName = event.name
item.showAnimation = event.key
},
// -
editMaterialSubmit () {
this.listEditVisible = false
// -/ tab
tabAll (index) {
this.activeIndex = index
this.activeItemIndex = 0
this.isMultiSelected = false
this.mulitText = '多选'
},
tab (index) {
this.activeItemIndex = index
},
// btn
multiSelectBtn (type) {
this.isMultiSelected = !this.isMultiSelected
if (this.isMultiSelected) {
this.mulitText = '取消'
// -list
this.selectedMaterial.forEach(item => {
this.$refs.MaterialList.selectedListId.push(item.material_id)
this.$refs.MaterialList.selectedMaterial.push(item)
})
} else {
if (type == 'audio') {
this.mulitText = '选择'
this.audioChecked = -1
} else {
this.mulitText = '多选'
this.uploadContentIds = []
}
}
},
//
selectedListItem (id) {
const arr = this.uploadContentIds
if (arr.includes(id)) {
const index = arr.indexOf(id)
if (index > -1) {
arr.splice(index, 1)
}
} else {
this.uploadContentIds.push(id)
}
},
// -/ tab
tabAll (index) {
this.activeIndex = index
this.activeItemIndex = 0
this.isMultiSelected = false
// -
uploadSelected () {
this.selectContVisible = false
this.selectedMaterial = []
this.selectedMaterial = this.$refs.MaterialList.selectedMaterial
//
this.selectedMaterial.forEach((item, key) => {
this.materialPostfix[key] = item.deposit_url.substring(
item.deposit_url.lastIndexOf('.') + 1,
item.deposit_url.length
)
})
localStorage.setItem('selectedMaterial', JSON.stringify(this.selectedMaterial))
this.mulitText = '多选'
this.uploadContentIds = []
},
tab (index) {
this.activeItemIndex = index
},
// -
clearCheckbox () {
if (this.form.release_cycle == 2) {
this.selectWeekly = []
this.form.release_weekly = []
}
},
// -
cancelContSelect (type) {
@ -702,7 +706,6 @@ export default {
} else {
this.selectContVisible = false
this.mulitText = '多选'
this.uploadContentIds = []
}
}
}

1
src/views/materialContent/materialList/index.vue

@ -206,6 +206,7 @@ export default {
'folder_id': null,
'material_name': null,
'material_type': null,
'material_type_not': null,
'orga_id': this.orga_id
}
}

Loading…
Cancel
Save