Browse Source

积分规则配置页面开发

feature/syp_points
zhangyongzhangyong 6 years ago
parent
commit
0cbcd7c884
  1. 117
      src/views/modules/points/pointsrule-add-or-update.vue
  2. 84
      src/views/modules/points/pointsrule.vue

117
src/views/modules/points/pointsrule-add-or-update.vue

@ -1,35 +1,63 @@
<template>
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('update')" :close-on-click-modal="false" :close-on-press-escape="false">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '200px' : '120px'">
<el-form-item label="积分规则编码" prop="ruleCode">
<el-input v-model="dataForm.ruleCode" placeholder="请输入积分规则编码"></el-input>
<el-input v-model="dataForm.ruleCode" maxlength="10" placeholder="请输入积分规则编码" style="width: 740px;"></el-input>
</el-form-item>
<el-form-item label="动作编码" prop="behaviorCode">
<el-input v-model="dataForm.behaviorCode" placeholder="动作编码"></el-input>
<el-form-item label="动作" prop="behaviorCode">
<el-select v-model="dataForm.behaviorCode" placeholder="动作" filterable style="width: 740px;">
<el-option
v-for="item in optionBehaviorCode"
:key="item.behaviorCode"
:label="item.behaviorDesc"
:value="item.behaviorCode">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="积分规则描述" prop="ruleDesc">
<el-input v-model="dataForm.ruleDesc" placeholder="请输入积分规则描述"></el-input>
<el-input v-model="dataForm.ruleDesc" maxlength="80" type="textarea" :autosize="{ minRows: 2, maxRows: 4}" placeholder="请输入积分规则描述" style="width: 740px;"></el-input>
</el-form-item>
<el-form-item label="规则操作类型 0-减积分,1-加积分" prop="operationType">
<el-input v-model="dataForm.operationType" placeholder="规则操作类型 0-减积分,1-加积分"></el-input>
<el-form-item label="规则操作类型" prop="operationType">
<el-select v-model="dataForm.operationType" placeholder="请选择规则操作类型" style="width: 740px;">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="积分规则值" prop="points">
<el-input v-model="dataForm.points" placeholder="积分规则值"></el-input>
<el-input-number v-model="dataForm.points" :min="0" label="积分规则值"></el-input-number>
</el-form-item>
<el-form-item label="上线统计指标 0-分钟,1-小时,2-日,3-月,4-年" prop="limitType">
<el-input v-model="dataForm.limitType" placeholder="上线统计指标 0-分钟,1-小时,2-日,3-月,4-年"></el-input>
<el-form-item label="上线统计指标" prop="limitType">
<el-select v-model="dataForm.limitType" placeholder="请选择规则操作类型" style="width: 740px;">
<el-option
v-for="item in limitTypeOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="积分上限值" prop="upperLimitVal">
<el-input v-model="dataForm.upperLimitVal" placeholder="积分上限值"></el-input>
<el-input-number v-model="dataForm.upperLimitVal" :min="0" label="积分上限值"></el-input-number>
</el-form-item>
<el-form-item label="启用标识 0-否,1-是" prop="enableFlag">
<el-input v-model="dataForm.enableFlag" placeholder="启用标识 0-否,1-是"></el-input>
<el-form-item label="启用标识" prop="enableFlag">
<el-select v-model="dataForm.enableFlag" placeholder="启用标识" style="width: 740px;">
<el-option
v-for="item in enableFlagOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="附加值" prop="addedVal">
<el-input v-model="dataForm.addedVal" placeholder="附加值"></el-input>
<el-input v-model="dataForm.addedVal" maxlength="2000" type="textarea" :autosize="{ minRows: 4, maxRows: 4}" placeholder="请输入附加值" style="width: 740px;"></el-input>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="dataForm.remark" placeholder="备注"></el-input>
<el-input v-model="dataForm.remark" maxlength="100" type="textarea" :autosize="{ minRows: 2, maxRows: 4}" placeholder="请输入备注" style="width: 740px;"></el-input>
</el-form-item>
</el-form>
<template slot="footer">
@ -50,11 +78,11 @@ export default {
ruleCode: '',
behaviorCode: '',
ruleDesc: '',
operationType: '',
operationType: '1',
points: '',
limitType: '',
limitType: '2',
upperLimitVal: '',
enableFlag: '',
enableFlag: '1',
addedVal: '',
remark: '',
revision: '',
@ -63,7 +91,38 @@ export default {
createdTime: '',
updatedBy: '',
updatedTime: ''
}
},
options: [{
value: '0',
label: '减积分'
}, {
value: '1',
label: '加积分'
}],
limitTypeOptions: [{
value: '0',
label: '分钟'
}, {
value: '1',
label: '小时'
}, {
value: '2',
label: '日'
}, {
value: '3',
label: '月'
}, {
value: '4',
label: '年'
}],
enableFlagOptions: [{
value: '0',
label: '否'
}, {
value: '1',
label: '是'
}],
optionBehaviorCode: []
}
},
computed: {
@ -92,12 +151,6 @@ export default {
],
enableFlag: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
addedVal: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
remark: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
]
}
}
@ -111,6 +164,20 @@ export default {
this.getInfo()
}
})
//
this.getBehaviorDesc()
},
//
getBehaviorDesc () {
this.$http
.get(`/points/pointsbehavior/getBehaviorDesc`)
.then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.optionBehaviorCode = res.data
})
.catch(() => {})
},
//
getInfo () {

84
src/views/modules/points/pointsrule.vue

@ -2,8 +2,31 @@
<el-card shadow="never" class="aui-card--fill">
<div class="mod-__pointsrule}">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-input v-model="dataForm.id" placeholder="id" clearable></el-input>
<el-form-item label="积分编码">
<el-input v-model="dataForm.ruleCode" placeholder="请输入积分编码" clearable></el-input>
</el-form-item>
<el-form-item label="积分规则描述">
<el-input v-model="dataForm.ruleDesc" placeholder="请输入积分规则描述" clearable></el-input>
</el-form-item>
<el-form-item label="规则操作类型">
<el-select v-model="dataForm.operationType" placeholder="请选择规则操作类型" clearable>
<el-option
v-for="item in optionOperationType"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="是否可用">
<el-select v-model="dataForm.enableFlag" placeholder="请选择是否可用" clearable>
<el-option
v-for="item in optionEnableFlag"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
@ -17,11 +40,11 @@
<el-table-column prop="ruleCode" label="积分规则编码" header-align="center" align="center"></el-table-column>
<el-table-column prop="ruleDesc" label="积分规则描述" header-align="center" align="center"></el-table-column>
<el-table-column prop="behaviorCode" label="动作编码" header-align="center" align="center"></el-table-column>
<el-table-column prop="operationType" label="规则操作类型 0-减积分,1-加积分" header-align="center" align="center"></el-table-column>
<el-table-column prop="operationType" :formatter="formatOperationType" label="规则操作类型" header-align="center" align="center"></el-table-column>
<el-table-column prop="points" label="积分规则值" header-align="center" align="center"></el-table-column>
<el-table-column prop="limitType" label="上线统计指标 0-分钟,1-小时,2-日,3-月,4-年" header-align="center" align="center"></el-table-column>
<el-table-column prop="limitType" :formatter="formatLimitType" label="上线统计指标" header-align="center" align="center"></el-table-column>
<el-table-column prop="upperLimitVal" label="积分上限值" header-align="center" align="center"></el-table-column>
<el-table-column prop="enableFlag" label="是否可用 0-否,1-是" header-align="center" align="center"></el-table-column>
<el-table-column prop="enableFlag" :formatter="formatEnableFlag" label="是否可用" header-align="center" align="center"></el-table-column>
<el-table-column prop="addedVal" label="附加值" header-align="center" align="center"></el-table-column>
<el-table-column prop="remark" label="备注" header-align="center" align="center"></el-table-column>
<el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150">
@ -61,11 +84,60 @@ export default {
},
dataForm: {
id: ''
}
},
optionOperationType: [{
value: '0',
label: '减积分'
}, {
value: '1',
label: '加积分'
}],
optionEnableFlag: [{
value: '0',
label: '否'
}, {
value: '1',
label: '是'
}]
}
},
components: {
AddOrUpdate
},
methods: {
formatOperationType: function (row, column) {
if (row.operationType === '0') {
return '减积分'
}
if (row.operationType === '1') {
return '加积分'
}
},
formatLimitType: function (row, column) {
if (row.limitType === '0') {
return '分钟'
}
if (row.limitType === '1') {
return '小时'
}
if (row.limitType === '2') {
return '日'
}
if (row.limitType === '3') {
return '月'
}
if (row.limitType === '4') {
return '年'
}
},
formatEnableFlag: function (row, column) {
if (row.enableFlag === '0') {
return '否'
}
if (row.enableFlag === '1') {
return '是'
}
}
}
}
</script>

Loading…
Cancel
Save