Files
crmeb_java/admin/src/views/maintain/devconfig/combineDataList.vue
stivepeim 0d32da772d 圣诞快乐
# v1.3 更新列表
    1. 【新增】砍价
	2. 【新增】拼团
	3. 【新增】一号通
	4. 【修复】商品sku 编辑时出现商品属性对应错误的问题
	5. 【修复】商品推广海报生成二维码可能会出错的问题【小程序调试中】
	6. 【修复】微信公众号和小程序头像可能获取不到的问题
	7. 【修复】下单时可能会出错的问题
	8. 【修复】pc管理端用户访问量
	9. 【修复】微信退款
	10. 【修复】管理端订单状态可能出现不正确的情况
	11. 【修复】WEB管理端-菜单色调,短信API更新,首页用户访问量,系统设置tab是自动选择下一及表单
	12. 【修复】系统设置出现更新不正确的问题
2020-12-23 15:56:45 +08:00

183 lines
5.8 KiB
Vue

<template>
<div class="components-container">
<div class="container">
<el-form inline>
<el-form-item label="状态">
<el-select v-model="listPram.status" placeholder="状态" clearable @change="handlerSearch" class="selWidth">
<el-option
v-for="item in constants.roleListStatus"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<!-- <el-form-item label="关键词">-->
<!-- <el-input v-model="listPram.keywords" placeholder="请输入关键词" clearable></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item>-->
<!-- <el-button type="primary" @click="handlerSearch">查询</el-button>-->
<!-- </el-form-item>-->
</el-form>
</div>
<el-button type="primary" size="mini" @click="handlerOpenEditData({},0)" v-if="((formData.id==55 || formData.name==='签到天数配置') && dataList.list.length<7) || (formData.id!=55|| formData.name!=='签到天数配置')">添加数据</el-button>
<el-dialog
:title="editDataConfig.isCreate === 0?'添加数据':'编辑数据'"
:visible.sync="editDataConfig.visible"
append-to-body
destroy-on-close
>
<edit
v-if="editDataConfig.visible"
:form-data="formData"
:edit-data="editDataConfig.editData"
:is-create="editDataConfig.isCreate"
@hideDialog="handlerHideDia"
/>
</el-dialog>
<el-table
:data="dataList.list"
style="width: 100%;margin-bottom: 20px;"
>
<el-table-column label="编号" prop="id" />
<el-table-column
v-for="item,index in formConf.fields"
:key="index"
:label="item.__config__.label"
:prop="item.__vModel__"
>
<template slot-scope="scope">
<div v-if="['img','image','pic'].indexOf(item.__vModel__) > -1" class="demo-image__preview">
<el-image
style="width: 36px; height: 36px"
:src="scope.row[item.__vModel__]"
:preview-src-list="[scope.row[item.__vModel__]]"
/>
</div>
<span v-else>{{ scope.row[item.__vModel__] }}</span>
</template>
</el-table-column>
<el-table-column label="状态" prop="status">
<template slot-scope="scope">
<span>{{ scope.row.status | filterShowOrHide }}</span>
</template>
</el-table-column>
<el-table-column label="操作" width="200">
<template slot-scope="scope">
<el-button type="text" size="small" @click="handlerOpenEditData(scope.row,1)">编辑</el-button>
<el-button type="text" size="small" @click="handlerDelete(scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination
:current-page="listPram.page"
:page-sizes="constants.page.limit"
:layout="constants.page.layout"
:total="dataList.total"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
/>
</div>
</template>
<script>
import edit from './combineEdit'
import * as constants from '@/utils/constants.js'
import * as systemGroupDataApi from '@/api/systemGroupData.js'
import * as systemFormConfigApi from '@/api/systemFormConfig.js'
export default {
// name: "combineDataList"
components: { edit },
props: {
formData: {
type: Object,
required: true
}
},
data() {
return {
constants,
listPram: {
gid: null,
keywords: null,
status: null, // 1=开启 2=关闭
page: 1,
pageSize: constants.page.limit[0]
},
editDataConfig: {
visible: false,
isCreate: 0, // 0=create 1=edit
editData: {}
},
formConf: { fields: [] },
dataList: { list: [], total: 0 }
}
},
mounted() {
this.handlerGetFormConfig()
this.listPram.gid = this.formData.id
this.handlerGetListData(this.listPram)
},
methods: {
handlerSearch() {
this.listPram.page = 1
this.handlerGetListData(this.listPram)
},
handlerGetListData(pram) { // 获取列表数据
systemGroupDataApi.groupDataList(pram).then(data => {
const _selfList = []
data.list.forEach(_lItem => {
_lItem.value = JSON.parse(_lItem.value)
const _fields = _lItem.value.fields
const _rowData = {}
_fields.map((item) => {
_rowData[item.name] = item.value
})
_rowData.id = _lItem.id
_rowData.sort = _lItem.sort
_rowData.status = _lItem.status
_selfList.push(_rowData)
})
this.dataList.list = _selfList
this.dataList.total = data.total
})
},
handlerGetFormConfig() { // 获取表单配置后生成table列
const _pram = { id: this.formData.formId }
systemFormConfigApi.getFormConfigInfo(_pram).then(data => {
this.formConf = JSON.parse(data.content)
})
},
handlerOpenEditData(rowData, isCreate) {
this.editDataConfig.editData = rowData
this.editDataConfig.isCreate = isCreate
this.editDataConfig.visible = true
},
handlerHideDia() {
this.handlerGetListData(this.listPram)
this.editDataConfig.visible = false
},
handlerDelete(rowData) {
this.$confirm('确实删除当前数据', '提示').then(() => {
systemGroupDataApi.groupDataDelete(rowData).then(data => {
this.$message.success('删除数据成功')
this.handlerHideDia()
})
})
},
handleSizeChange(val) {
this.listPram.limit = val
this.handlerGetListData(this.listPram)
},
handleCurrentChange(val) {
this.listPram.page = val
this.handlerGetListData(this.listPram)
}
}
}
</script>
<style scoped>
</style>