<template>
|
<div class="configForm-style">
|
<el-row>
|
<h6>经验值规则配置</h6>
|
<el-col class="configForm" :span="10">
|
<el-form size="mini" ref="form" :model="form" :disabled="formDisabled" label-width="120px"
|
:rules="formRules">
|
<!-- <el-form-item label="每日登录:" prop="loginEmpirical">
|
<el-input-number :min="0" v-model="form.loginEmpirical" @keydown.native="limiInputType"></el-input-number> 经验值。
|
</el-form-item> -->
|
<el-form-item label="完善基本信息:" prop="baseInfo">
|
<el-input-number :min="0" v-model="form.baseInfo" @keydown.native="limiInputType">
|
</el-input-number> 经验值。
|
</el-form-item>
|
<el-form-item label="购物消费:" prop="content">
|
<span>订单交易成功,每实际消费 </span>
|
<el-input-number :min="1" v-model="form.orderAmount" @keydown.native="limiInputType">
|
</el-input-number>
|
<span> 元,获取 </span>
|
<el-input-number :min="0" v-model="form.sallEmpir" @keydown.native="limiInputType">
|
</el-input-number>
|
<span> 经验值</span>
|
</el-form-item>
|
<el-form-item label="评价商品:" prop="evalEmpir">
|
<el-input-number :min="0" v-model="form.evalEmpir" @keydown.native="limiInputType">
|
</el-input-number> 经验值。
|
</el-form-item>
|
<el-form-item label="分享:" prop="shareEmpir">
|
<el-input-number :min="0" v-model="form.shareEmpir" @keydown.native="limiInputType">
|
</el-input-number> 经验值。
|
</el-form-item>
|
</el-form>
|
<el-row class="buttonPosition">
|
<el-button size="mini" type="primary" v-if="formDisabled" @click="edit">编辑</el-button>
|
<el-button type="primary" v-else size="mini" @click="submit">保存</el-button>
|
<el-button size="mini" v-if="!formDisabled" @click="cancel">取消</el-button>
|
</el-row>
|
</el-col>
|
</el-row>
|
</div>
|
</template>
|
<script>
|
import { limiInputType } from '@/utils/limiInputType'
|
import empiricalConfigApi from '@/api/member/empiricalConfig'
|
export default {
|
data () {
|
const inputValid = (rule, value, callback) => {
|
if (!value) {
|
callback(new Error('请输入大于 0 的数'))
|
} else {
|
callback()
|
}
|
}
|
const contentValid = (rule, value, callback) => {
|
const reg = /^(?!0+$)(?!0*\.0*$)\d{1,9}(\.\d{1,2})?$/ // 最多输入两位小数
|
if (!this.form.orderAmount) {
|
callback(new Error('请输入实际消费金额'))
|
} else if (!this.form.sallEmpir) {
|
callback(new Error('请输入获取经验值'))
|
} else if (this.form.orderAmount > 999999999) {
|
callback(new Error('消费金额不能超过 999999999'))
|
} else if (!reg.test(this.form.orderAmount)) {
|
callback(new Error('消费金额最多输入两位小数'))
|
} else {
|
callback()
|
}
|
}
|
return {
|
form: {},
|
formDisabled: true,
|
formRules: {
|
loginEmpirical: [{ required: true, message: '请输入每日登录经验值' }, { validator: inputValid }],
|
baseInfo: [{ required: true, message: '请输入完善资料经验值' }, { validator: inputValid }],
|
content: [{ required: true, validator: contentValid }],
|
evalEmpir: [{ required: true, message: '请输入评价商品经验值' }, { validator: inputValid }],
|
shareEmpir: [{ required: true, message: '请输入分享经验值' }, { validator: inputValid }
|
]
|
}
|
}
|
},
|
created () {
|
this.getDetails()
|
},
|
methods: {
|
/**
|
* 限制不能输入数字
|
*/
|
limiInputType (e) {
|
limiInputType(e)
|
},
|
/**
|
* 查询详情
|
*/
|
getDetails () {
|
empiricalConfigApi
|
.detailsInfo({})
|
.then((res) => {
|
if (res.data) {
|
res.data.operationDesc = null
|
this.form = res.data
|
}
|
})
|
},
|
/**
|
* 保存
|
*/
|
submit () {
|
this.$refs.form.validate().then((res) => {
|
empiricalConfigApi.addInfo(this.form).then(res => {
|
this.$message({
|
message: '配置成功',
|
type: 'success'
|
})
|
this.formDisabled = true
|
})
|
}).catch(() => { })
|
},
|
// 取消
|
cancel () {
|
this.getDetails()
|
this.formDisabled = true
|
},
|
/**
|
* 编辑
|
*/
|
edit () {
|
this.formDisabled = false
|
}
|
}
|
}
|
</script>
|
<style>
|
.configForm {
|
width: 700px;
|
}
|
.buttonPosition {
|
text-align: center;
|
margin-top: 10px;
|
}
|
.configForm-style {
|
background-color: #fff;
|
padding:0 0 76px 30px;
|
border-radius: 4px;
|
}
|
</style>
|