|
@@ -2,7 +2,7 @@
|
|
|
<div class="all-box">
|
|
|
<!-- 头部提示 -->
|
|
|
<el-alert class="diy-tip" title="如何使用积分规则?" type="success" @close="tips_close" v-if="tips_show" description show-icon>
|
|
|
- <p>先【添加规则分类】,再【添加规则】;或者直接【导入规则】</p>
|
|
|
+ <p>先【添加规则分类】,再【添加规则】</p>
|
|
|
</el-alert>
|
|
|
<div class="all">
|
|
|
<div class="flex-box" v-loading="rule_loading">
|
|
@@ -12,7 +12,6 @@
|
|
|
<el-tree
|
|
|
accordion
|
|
|
:data="rule_tree"
|
|
|
- :expand-on-click-node="false"
|
|
|
class="cate-tree"
|
|
|
:props="defaultProps"
|
|
|
:highlight-current="true"
|
|
@@ -64,11 +63,12 @@
|
|
|
clearable
|
|
|
></el-cascader>
|
|
|
</el-form-item>
|
|
|
- <el-form-item style="text-align: right; margin-bottom:0;">
|
|
|
+ <div class="flex-box">
|
|
|
<el-button type="danger" @click="del_dept" v-show="class_type == 'edit'">删除分类</el-button>
|
|
|
+ <div class="flex-1"></div>
|
|
|
<el-button @click="add_dept_close('dept_formdata')">取消</el-button>
|
|
|
<el-button type="primary" @click="submit_add_dept('dept_formdata')" :loading="dept_loading">确定</el-button>
|
|
|
- </el-form-item>
|
|
|
+ </div>
|
|
|
</el-form>
|
|
|
</el-dialog>
|
|
|
|
|
@@ -104,15 +104,38 @@
|
|
|
<el-radio :label="item.value" v-for="(item, index) in range_type_arr" :key="index">{{ item.name }}</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
- <el-form-item>
|
|
|
+ <div class="flex-box flex-v-ce">
|
|
|
+ <el-form-item prop="min_point" class="select_width">
|
|
|
+ <el-input
|
|
|
+ placeholder="请输入分值"
|
|
|
+ v-model.number="rules_detail_form.min_point"
|
|
|
+ type="age" class="input-with-select"
|
|
|
+ >
|
|
|
+ <el-select v-model="integral_select_name1" slot="prepend" placeholder="请选择类型">
|
|
|
+ <el-option v-for="(item, index) in integral_select" :key="index" :label="item.name" :value="item.value"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <div v-if="rules_detail_form.range_type == 2" style="position: relative;bottom: 10px;padding: 0 10px;">至</div>
|
|
|
+ <el-form-item prop="max_point" v-if="rules_detail_form.range_type == 2" class="form-right select_width">
|
|
|
+ <el-input
|
|
|
+ placeholder="请输入分值"
|
|
|
+ v-model.number="rules_detail_form.max_point"
|
|
|
+ type="age" class="input-with-select"
|
|
|
+ >
|
|
|
+ <el-select v-model="integral_select_name2" slot="prepend" placeholder="请选择类型">
|
|
|
+ <el-option v-for="(item, index) in integral_select" :key="index" :label="item.name" :value="item.value"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+<!-- <el-form-item prop="min_point">
|
|
|
<el-row :gutter="20" class="select_width">
|
|
|
<el-col :span="11">
|
|
|
<el-input
|
|
|
placeholder="请输入分值"
|
|
|
- :rules="[{ required: true, message: '请输入加分项名称', trigger: 'blur' }]"
|
|
|
- v-model="rules_detail_form.min_point"
|
|
|
- type="Number"
|
|
|
- class="input-with-select"
|
|
|
+ v-model.number="rules_detail_form.min_point"
|
|
|
+ type="age" class="input-with-select"
|
|
|
>
|
|
|
<el-select v-model="integral_select_name1" slot="prepend" placeholder="请选择类型">
|
|
|
<el-option v-for="(item, index) in integral_select" :key="index" :label="item.name" :value="item.value"></el-option>
|
|
@@ -123,10 +146,8 @@
|
|
|
<el-col :span="11" v-show="rules_detail_form.range_type == 2">
|
|
|
<el-input
|
|
|
placeholder="请输入分值"
|
|
|
- :rules="[{ required: true, message: '请输入加分项名称', trigger: 'blur' }]"
|
|
|
- v-model="rules_detail_form.max_point"
|
|
|
- type="Number"
|
|
|
- class="input-with-select"
|
|
|
+ v-model.number="rules_detail_form.max_point"
|
|
|
+ type="age" class="input-with-select"
|
|
|
>
|
|
|
<el-select v-model="integral_select_name2" slot="prepend" placeholder="请选择类型">
|
|
|
<el-option v-for="(item, index) in integral_select" :key="index" :label="item.name" :value="item.value"></el-option>
|
|
@@ -134,7 +155,7 @@
|
|
|
</el-input>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- </el-form-item>
|
|
|
+ </el-form-item> -->
|
|
|
<div class="flex-box flex-v-ce">
|
|
|
<el-button type="danger" @click="del_rule" :loading="delRule_loading" v-show="rule_type == 'edit'">删除规则</el-button>
|
|
|
<div class="flex-1"></div>
|
|
@@ -261,7 +282,9 @@ export default {
|
|
|
message: '请选择分类',
|
|
|
trigger: 'change'
|
|
|
}
|
|
|
- ]
|
|
|
+ ],
|
|
|
+ min_point:[{ required: true, message: '分值不能为空'},{ pattern: /^[1-9]\d*$/, message: '分值必须为数字值'}],
|
|
|
+ max_point:[{ required: true, message: '分值不能为空'},{ pattern: /^[1-9]\d*$/, message: '分值必须为数字值'}],
|
|
|
},
|
|
|
integral_select_name1: '1',
|
|
|
integral_select_name2: '1',
|
|
@@ -373,7 +396,6 @@ export default {
|
|
|
},
|
|
|
|
|
|
edit_submit_rule(form) {
|
|
|
- this.rule_loading2=true;
|
|
|
let self = this;
|
|
|
self.$refs[form].validate(valid => {
|
|
|
if (valid) {
|
|
@@ -405,6 +427,7 @@ export default {
|
|
|
}
|
|
|
)
|
|
|
.then(() => {
|
|
|
+ this.rule_loading2=true;
|
|
|
let min_point = self.rules_detail_form.min_point;
|
|
|
self.rules_detail_form.min_point = self.rules_detail_form.max_point;
|
|
|
self.rules_detail_form.max_point = min_point;
|
|
@@ -427,6 +450,7 @@ export default {
|
|
|
|
|
|
})
|
|
|
} else {
|
|
|
+ this.rule_loading2=true;
|
|
|
self.rules_detail_form.item_id = self.rules_detail_form.id;
|
|
|
let data = self.rules_detail_form;
|
|
|
data.item_id = self.rules_detail_form.id;
|
|
@@ -453,7 +477,6 @@ export default {
|
|
|
},
|
|
|
//添加规则
|
|
|
add_submit_rule(form) {
|
|
|
- this.rule_loading2=true;
|
|
|
let self = this;
|
|
|
self.$refs[form].validate(valid => {
|
|
|
if (valid) {
|
|
@@ -484,6 +507,7 @@ export default {
|
|
|
type: 'warning'
|
|
|
}
|
|
|
).then(() => {
|
|
|
+ this.rule_loading2=true;
|
|
|
let min_point = self.rules_detail_form.min_point;
|
|
|
self.rules_detail_form.min_point = self.rules_detail_form.max_point;
|
|
|
self.rules_detail_form.max_point = min_point;
|
|
@@ -495,7 +519,7 @@ export default {
|
|
|
let data = {
|
|
|
items: [self.rules_detail_form]
|
|
|
};
|
|
|
- this.$axios.post('/api/integral/rule/items', data).then(res => {
|
|
|
+ this.$axios('post','/api/integral/rule/items', data).then(res => {
|
|
|
if (res.data.code == 1) {
|
|
|
self.$message.success(res.data.msg);
|
|
|
self.getData();
|
|
@@ -506,6 +530,7 @@ export default {
|
|
|
});
|
|
|
});
|
|
|
} else {
|
|
|
+ this.rule_loading2=true;
|
|
|
self.rules_detail_form.item_id = self.rules_detail_form.id;
|
|
|
if (self.rules_detail_form.min_point == 0 && self.rules_detail_form.range_type == 1) {
|
|
|
self.$message.error('积分不能为零');
|
|
@@ -589,6 +614,7 @@ export default {
|
|
|
this.integral_select_name1 = '1';
|
|
|
this.integral_select_name2 = '1';
|
|
|
},
|
|
|
+ //批量删除
|
|
|
del_item() {
|
|
|
if (this.del_item_id.length == 0) {
|
|
|
this.$message.error('请选择积分细则');
|
|
@@ -602,10 +628,10 @@ export default {
|
|
|
let data = {
|
|
|
item_id: this.del_item_id
|
|
|
};
|
|
|
- this.$axios.post('/api/integral/rule/items/destroy', data).then(res => {
|
|
|
+ this.$axios('post','/api/integral/rule/items/destroy', data).then(res => {
|
|
|
if (res.data.code == 1) {
|
|
|
this.$message.success(res.data.msg);
|
|
|
- this.getData(true);
|
|
|
+ this.getData();
|
|
|
this.handleNodeClick(this.selectItem);
|
|
|
}
|
|
|
})
|
|
@@ -812,6 +838,11 @@ export default {
|
|
|
<style scoped lang="scss">
|
|
|
.select_width .el-select {
|
|
|
width: 80px;
|
|
|
+ background-color: #fff;
|
|
|
+ border: 1px solid #f1f1f1;
|
|
|
+ border-left: none;
|
|
|
+ color: #222;
|
|
|
+ border-radius: 5px;
|
|
|
}
|
|
|
.text-center {
|
|
|
text-align: center;
|
|
@@ -859,6 +890,9 @@ export default {
|
|
|
white-space: nowrap;
|
|
|
}
|
|
|
}
|
|
|
+.form-right ::v-deep .el-form-item__content{
|
|
|
+ margin-left: 0px !important;
|
|
|
+}
|
|
|
.terr-left button {
|
|
|
margin: 0 auto;
|
|
|
display: block;
|