Browse Source

志愿者banner管理,增加banner类型

feature/syp_points
zhangyongzhangyong 5 years ago
parent
commit
720e4b4bb7
  1. 24
      src/views/modules/heart/actbanner-add-or-update.vue
  2. 24
      src/views/modules/heart/actbanner.vue

24
src/views/modules/heart/actbanner-add-or-update.vue

@ -23,6 +23,16 @@
class="el-upload__tip">只能上传jpg/png文件且不超过500kb</div>
</el-upload>
</el-form-item>
<el-form-item label="banner类型" prop="bannerType">
<el-select v-model="dataForm.bannerType" placeholder="请选择类型">
<el-option
v-for="item in optionBannerType"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
</el-row>
<el-form-item label="排序" prop="sort">
<el-input-number v-model="dataForm.sort" :min="0" :max="4"></el-input-number>
@ -62,6 +72,7 @@ export default {
updatedTime: '',
sort: 0
},
optionBannerType: [],
//
loading: false,
uploadUrl: ''
@ -76,6 +87,9 @@ export default {
bannerImg: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
bannerType: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
sort: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
]
@ -83,6 +97,7 @@ export default {
}
},
created () {
this.getListBannerTypeByHeartImgType()
this.uploadUrl = `${window.SITE_CONFIG['apiURL']}/oss/file/upload?token=${Cookies.get('token')}`
this.dataForm.bannerImg = ''
},
@ -96,6 +111,15 @@ export default {
}
})
},
// banner
getListBannerTypeByHeartImgType () {
this.$http.get(`/heart/actbanner/getBannerType/volunteerBannerType`).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.optionBannerType = res.data
}).catch(() => {})
},
//
getInfo () {
this.$http.get(`/heart/actbanner/${this.dataForm.id}`).then(({ data: res }) => {

24
src/views/modules/heart/actbanner.vue

@ -18,6 +18,7 @@
<el-table v-loading="dataListLoading" :data="dataList" border @selection-change="dataListSelectionChangeHandle" style="width: 100%;">
<el-table-column label="序号" type="index" show-overflow-tooltip align="center" width="50"></el-table-column>
<el-table-column prop="title" label="标题" header-align="center" align="center"></el-table-column>
<el-table-column align="center" label="Banner类型" :show-overflow-tooltip="true" prop="bannerType" :formatter="bannerTypeFormat"></el-table-column>
<el-table-column align="center" label="Banner图片" :show-overflow-tooltip="true" prop="bannerImg">
<template slot-scope="scope">
<el-popover placement="right"
@ -78,12 +79,16 @@ export default {
status: '',
startTime: '',
endTime: ''
}
},
optionBannerType: []
}
},
components: {
AddOrUpdate
},
created () {
this.getListBannerTypeByHeartImgType()
},
methods: {
changeGroundingText (status) {
let state = status
@ -101,7 +106,22 @@ export default {
return '下架'
}
},
// banner
getListBannerTypeByHeartImgType () {
this.$http.get(`/heart/actbanner/getBannerType/volunteerBannerType`).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.optionBannerType = res.data
}).catch(() => {})
},
bannerTypeFormat (row, column) {
for (var property in this.optionBannerType) {
if (row.bannerType === this.optionBannerType[property].dictValue) {
return this.optionBannerType[property].dictName
}
}
},
changeGroundingHandle: debounce(function (row) {
this.$confirm(this.$t('prompt.info', { 'handle': this.changeGroundingText(row.status) }), this.$t('prompt.title'), {
confirmButtonText: this.$t('confirm'),

Loading…
Cancel
Save