Commit d55dfa9f authored by 高宇's avatar 高宇

会员权益

parent c5582996
......@@ -45,3 +45,54 @@ export function deleteIntegralLogic(id) {
method: 'delete'
})
}
// 查询会员等级信息
export function queryMemberBenefits(query) {
return request({
url: '/system/memberfits/selectActivityInfoByPagination',
method: 'get',
params: query
})
}
// 查询后端给返回的会员等级
export function queryMemberLevel() {
return request({
url: '/system/memberfits/selectMemberLevel',
method: 'get'
})
}
// 新增会员等级
export function addMemberBenefits(data){
return request({
url: '/system/memberfits/add',
method: 'put',
data,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})
}
// 根据会员等级id查询会员等级信息
export function getMemberBenefits(id) {
return request({
url: '/system/memberfits/detail/' + id,
method: 'get'
})
}
// 更新会员等级信息
export function updataMemberBenefits(data){
return request({
url: '/system/memberfits/update',
method: 'put',
data,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})
}
// 上次会员等级信息
export function deleteMemberBenefits(id) {
return request({
url: '/system/memberfits/delete/' + id,
method: 'delete'
})
}
......@@ -15,3 +15,4 @@ export function deleteMember(businessId) {
method: 'delete'
})
}
<template>
<div class="equityseting">
<div class="equityseting-title">会员权益设定</div>
<!-- <div>-->
<!-- <div style="margin-bottom: 20px;display: flex;justify-content: space-between">-->
<!-- <div>积分兑换</div>-->
<!-- </div>-->
<!-- <div class="form2">-->
<!-- <el-form ref="dynamicValidateForm" :model="dynamicValidateForm" label-width="100px" class="demo-dynamic">-->
<!-- <div style="display: flex;justify-content: space-between">-->
<!-- <div style="width: 100%;flex: 1">-->
<!-- <el-form-item prop="amount" label="消费金额">-->
<!-- <el-input v-model="dynamicValidateForm.amount" placeholder="请输入消费金额" />-->
<!-- </el-form-item>-->
<!-- </div>-->
<!-- <div style="width: 100%;flex: 1">-->
<!-- <el-form-item prop="integral" label="兑换积分">-->
<!-- <el-input v-model="dynamicValidateForm.integral" placeholder="请输入兑换积分" />-->
<!-- </el-form-item>-->
<!-- </div>-->
<!-- &lt;!&ndash; <el-button v-if="dynamicValidateForm.length > 1" style="width: 60px;height:32px;margin-left: 20px" @click.prevent="remove(domain)">删除</el-button>&ndash;&gt;-->
<!-- </div>-->
<!-- </el-form>-->
<!-- </div>-->
<!-- </div>-->
<div class="form1">
<div style="margin-bottom: 20px;display: flex;justify-content: space-between">
<div>会员等级</div>
......@@ -114,19 +92,22 @@
<!-- <el-button @click="resetForm">重置</el-button>-->
<!-- </div>-->
<!--新增会员等级弹窗-->
<el-dialog title="新增会员等级" :visible.sync="open" width="779px" append-to-body @close="reset">
<el-dialog :title="formTitle" :close-on-click-modal="false" :visible.sync="open" width="779px" append-to-body @close="reset">
<el-form ref="addForm" :model="form" :rules="rule" label-width="100px" class="demo-dynamic">
<el-form-item prop="name" label="会员名称">
<el-input v-model="form.name" placeholder="请输入会员名称" :maxlength="120" />
</el-form-item>
<el-form-item prop="level" label="会员等级">
<el-input v-model="form.level" placeholder="请输入会员等级" :maxlength="10" />
<el-input v-model="form.level" disabled placeholder="请输入会员等级" :maxlength="10" />
</el-form-item>
<el-form-item prop="integral" label="积分条件">
<el-input v-model="form.integral" placeholder="请输入积分条件" :maxlength="10" />
</el-form-item>
<el-form-item prop="discount" label="折扣">
<el-input v-model="form.discount" placeholder="请输入折扣" :maxlength="10" />
<div style="display:flex;">
<el-input v-model="form.discount" placeholder="请输入折扣" :maxlength="10" />
<span style="margin-left: 12px">{{ '%' }}</span>
</div>
</el-form-item>
<div style="text-align: center">
<el-button type="primary" @click="addsubmitForm">提交</el-button>
......@@ -135,7 +116,7 @@
</el-form>
</el-dialog>
<!-- 新增积分对换弹窗 -->
<el-dialog title="新增会员等级" :visible.sync="opens" width="779px" append-to-body @close="resets">
<el-dialog :title="dynamicTitle" :close-on-click-modal="false" :visible.sync="opens" width="779px" append-to-body @close="resets">
<el-form ref="dynamicFrom" :model="dynamicFrom" :rules="dynamicRule" label-width="100px" class="demo-dynamic">
<el-form-item prop="amount" label="消费金额">
<el-input
......@@ -157,11 +138,13 @@
</template>
<script>
import { queryIntegralList, addIntegralInfo, queryInfoById, updataInfo, deleteIntegralLogic } from '@/api/equitySeting/equitySeting'
import { queryIntegralList, addIntegralInfo, queryInfoById, updataInfo, deleteIntegralLogic, queryMemberBenefits, queryMemberLevel, addMemberBenefits, getMemberBenefits, updataMemberBenefits, deleteMemberBenefits } from '@/api/equitySeting/equitySeting'
export default {
data() {
return {
dynamicTitle: '',
formTitle: '',
twoloading: true,
form: {
name: '',
......@@ -193,50 +176,19 @@ export default {
{ required: true, message: '请输入会员等级', trigger: 'blur' }
],
integral: [
{ required: true, message: '请输入积分条件', trigger: 'blur' }
{ required: true, message: '请输入积分条件', trigger: 'blur' },
{
pattern: /^[0-9]+$/,
message: '只能输入数字',
trigger: 'change'
}
],
discount: [
{ required: true, message: '请输入折扣', trigger: 'blur' }
{ required: true, message: '请输入折扣', trigger: 'blur' },
{ pattern: /^100$|^(\d{1,2}(\.\d{1,2})?)$/, message: '数值在0到100之间,最多两位小数', trigger: 'blur' }
]
},
membershiplevel: [
{
name: '青铜',
level: '1',
integral: '0',
discount: '0.99'
},
{
name: '白银',
level: '2',
integral: '50',
discount: '0.95'
},
{
name: '黄金',
level: '3',
integral: '100',
discount: '0.9'
},
{
name: '铂金',
level: '4',
integral: '200',
discount: '0.85'
},
{
name: '钻石',
level: '5',
integral: '400',
discount: '0.8'
},
{
name: '至尊',
level: '6',
integral: '800',
discount: '0.75'
}
],
membershiplevel: [],
dynamicValidate: [],
dynamicValidateForm: {
amount: '100',
......@@ -246,16 +198,35 @@ export default {
},
created() {
this.getDynamicList()
this.getBenefitsList()
},
methods: {
/** 获取会员等级列表**/
getBenefitsList() {
queryMemberBenefits().then(res => {
console.log('会员等级列表', res)
if (res.code === 200) {
this.membershiplevel = res.data
}
})
},
reset() {
this.resetForm()
this.open = false
},
resetdynamicFrom() {
this.dynamicFrom = {
amount: '',
integral: ''
}
this.$refs.dynamicFrom.resetFields()
},
resets() {
this.resetdynamicFrom()
this.opens = false
},
addDynamic() {
this.dynamicTitle = '新增积分兑换'
this.dynamicFrom = {
amount: '',
integral: ''
......@@ -274,13 +245,35 @@ export default {
},
// 新增会员等级提交按钮
addsubmitForm() {
this.$refs['addForm'].validate((valid) => {
console.log('form', this.form.businessId)
this.$refs.addForm.validate(valid => {
if (valid) {
this.resetForm()
this.open = false
} else {
console.log('error submit!!')
return false
if (this.form.businessId !== undefined) {
console.log('更新')
updataMemberBenefits(this.form).then(res => {
if (res.code === 200) {
this.$message.success('操作成功')
this.resetForm()
this.getBenefitsList()
this.open = false
} else if (res.code === null) {
this.$message.error(res.message)
}
})
} else {
console.log('新增')
addMemberBenefits(this.form).then(res => {
console.log('res', res)
if (res.code === 200) {
this.$message.success('操作成功')
this.resetForm()
this.getBenefitsList()
this.open = false
} else if (res.code === null){
this.$message.error(res.message)
}
})
}
}
})
},
......@@ -314,7 +307,25 @@ export default {
})
},
handleDelete(row) {
this.$confirm('此操作将永久删除该条记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteMemberBenefits(row.businessId).then(res => {
if (res.code === 200) {
this.$message.success('操作成功')
this.getBenefitsList()
} else if (res.code === null) {
this.$message.error(res.message)
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
// 删除积分兑换
dynamicHandleDelete(row) {
......@@ -344,32 +355,53 @@ export default {
}
},
// 积分兑换提交按钮
submitForm() {
this.$refs['dynamicValidateForm'].validate((valid) => {
if (valid) {
console.log('submit!!')
} else {
console.log('error submit!!')
return false
}
})
},
// submitForm() {
// this.$refs['dynamicValidateForm'].validate((valid) => {
// if (valid) {
// console.log('submit!!')
// } else {
// console.log('error submit!!')
// return false
// }
// })
// },
// 重置表单
resetForm() {
this.form = {}
this.form = {
name: '',
level: '',
integral: '',
discount: '',
businessId: undefined
}
this.$refs.addForm.resetFields()
},
// 会员等级新增方法
addDomain() {
this.resetForm()
this.open = true
this.formTitle = '新增会员等级'
// this.resetForm()
queryMemberLevel().then(res => {
console.log('会员等级', res)
if (res.code === 200) {
this.form.level = res.data.count
this.open = true
}
})
},
// 会员等级编辑
update(row) {
this.form = row
this.open = true
console.log('row', row)
this.formTitle = '编辑会员等级'
const id = row.businessId
getMemberBenefits(id).then(res => {
console.log('查询到会员等级信息', res)
this.form = res.data
this.open = true
})
},
// 兑换积分编辑
dynamicUpdate(row) {
this.dynamicTitle = '编辑兑换积分'
const id = row.businessId
queryInfoById(id).then(res => {
console.log('查询信息', res)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment