quanwei
18 hours ago c441dea81bd86bdfb12dff35821fed51f4cc91c2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
<template>
  <!--
      作者 luoyiming
      时间:2020-06-09
      描述:会员-等级管理-编辑等级
  -->
  <el-dialog title="编辑等级" :visible.sync="dialogVisible" @close='dialogFormVisible' :close-on-click-modal="false"
    :close-on-press-escape="false" width="600px">
    <el-form size="small" :model="form" ref="form">
      <el-form-item label="等级名称" :label-width="formLabelWidth" prop="name" :rules="[{required: true,message: ' '}]">
        <el-input v-model="form.name" autocomplete="off"></el-input>
      </el-form-item>
      <template v-if="form.is_default == 0">
        <el-form-item label="等级权重" :label-width="formLabelWidth" prop="weight" :rules="[{required: true,message: '请输入等级权重'}]">
          <el-input v-model="form.weight" type="number" placeholder="请输入等级权重"></el-input>
          <div class="gray9">权重越大,等级越高</div>
        </el-form-item>
        <el-form-item label="一级上调" v-if="grade_level >= 1 && commission_type == 0" :label-width="formLabelWidth" prop="first_percent" :rules="[{required: true,message: '请输入一级上调比例'}]">
          <el-input v-model="form.first_percent" type="number" placeholder="请输入上调比例"></el-input>
          <div class="gray9">在默认分佣比例上上调如果原来是5%,这里上调3%,那么一级拿8%佣金</div>
        </el-form-item>
        <el-form-item label="一级上调" v-if="grade_level >= 1 && commission_type == 1" :label-width="formLabelWidth">
        <div class="max-w460">
          <el-table :data="form.first_loop_percent" border size="mini" style="width: 100%">
            <el-table-column type="index" label="序号">
            </el-table-column>
            <el-table-column prop="name" label="上调比例">
              <template v-slot="scope">
                <div class="d-s-c">
                  <el-input v-model="scope.row.ratio" type="number" placeholder="请输入上调比例"></el-input>
                  <span class="ml10">%</span>
                </div>
              </template>
            </el-table-column>
          </el-table>
        </div>
        <div class="lh18 mt10 gray9">
          <p> 注:当前开启了循环比例,如需更改请到基础设置里更改</p>
        </div>
      </el-form-item>
        <el-form-item label="二级上调" v-if="grade_level >= 2" :label-width="formLabelWidth" prop="second_percent" :rules="[{required: true,message: '请输入二级上调比例'}]">
          <el-input v-model="form.second_percent" type="number" placeholder="请输入上调比例"></el-input>
        </el-form-item>
        <el-form-item label="三级上调" v-if="grade_level >= 3" :label-width="formLabelWidth" prop="third_percent" :rules="[{required: true,message: '请输入三级上调比例'}]">
          <el-input v-model="form.third_percent" type="number" placeholder="请输入上调比例"></el-input>
        </el-form-item>
        <el-form-item label="自动升级" :label-width="formLabelWidth" prop="auto_upgrade">
          <el-radio-group v-model="form.auto_upgrade">
            <el-radio :label="1">允许自动升级</el-radio>
            <el-radio :label="0">禁止自动升级</el-radio>
          </el-radio-group>
        </el-form-item>
        <el-form-item label="升级条件" :label-width="formLabelWidth">
          <div>
            <el-radio-group v-model="form.condition_type">
              <el-radio label="and">满足以下所有条件</el-radio>
              <el-radio label="or">满足以下任意条件</el-radio>
            </el-radio-group>
          </div>
          <div class="d-s-c mt16">
            <el-checkbox v-model="form.open_agent_money">累计佣金</el-checkbox>
            <el-input v-model="form.agent_money" type="number" :disabled="form.open_agent_money==0" style="width: 160px; margin-left: 10px;" ></el-input>
            <span class="ml10">元</span>
          </div>
          <div class="d-s-c mt16">
            <el-checkbox v-model="form.open_agent_user">直推分销商</el-checkbox>
            <el-input v-model="form.agent_user" type="number" :disabled="form.open_agent_user==0" style="width: 160px;margin-left: 10px;"></el-input>
            <span class="ml10">人</span>
          </div>
          <div class="d-s-c mt16">
            <el-checkbox v-model="form.is_purchase_count">购买VIP专区商品次数</el-checkbox>
            <el-input v-model="form.purchase_count" type="number" :disabled="form.is_purchase_count==0" style="width: 160px;margin-left: 10px;"></el-input>
            <span class="ml10">次</span>
          </div>
        </el-form-item>
      </template>
    </el-form>
    <div slot="footer" class="dialog-footer">
      <el-button @click="dialogFormVisible">取 消</el-button>
      <el-button type="primary" @click="editGrade" :disabled="submit_loading">确 定</el-button>
    </div>
  </el-dialog>
</template>
 
<script>
  import GradeApi from '@/api/plus/agent/grade.js';
  export default {
    data() {
      return {
        /*左边长度*/
        formLabelWidth: '120px',
        /*是否显示*/
        dialogVisible: false,
        /*是否正在提交*/
        submit_loading: false,
        grade_level: 3,
        commission_type: 0,
        loop_num: 1
      };
    },
    props: ['open_edit', 'form'],
    created() {
      this.form.open_agent_money=this.form.open_agent_money==1?true:false;
      this.form.open_agent_user=this.form.open_agent_user==1?true:false;
      this.form.is_purchase_count=this.form.is_purchase_count==1?true:false;
      this.dialogVisible = this.open_edit;
      this.getData();
    },
    methods: {
      getData(){
        let self = this;
        console.log(self.form);
        GradeApi.toEditgrade({}, true).then(res => {
          self.grade_level = parseInt(res.data.basicSetting.level);
          self.commission_type = parseInt(res.data.basicSetting.commission_type);
          self.loop_num = parseInt(res.data.basicSetting.loop_num);
          if (self.form.first_loop_percent.length == 0 || self.form.first_loop_percent.length != self.loop_num) {
            for (let index = 0; index < self.loop_num; index++) {
              self.form.first_loop_percent.push({ratio: 0});
            }
          }
        })
        .catch(error => {
 
        });
      },
      /*修改用户*/
      editGrade() {
        let self = this;
        let params = this.form;
        self.$refs.form.validate((valid) => {
          if (valid) {
            self.submit_loading = true;
            if(params.is_default==0){
              params.open_agent_money=params.open_agent_money==true?1:0;
              params.open_agent_user=params.open_agent_user==true?1:0;
              params.is_purchase_count=params.is_purchase_count==true?1:0;
            }else{
              delete params.open_agent_money;
              delete params.open_agent_user;
              delete params.agent_money;
              delete params.agent_user;
              delete params.is_purchase_count;
              delete params.purchase_count;
            }
            GradeApi.editGrade(params, true)
              .then(data => {
                self.submit_loading = false;
                self.$message({
                  message: '恭喜你,等级修改成功',
                  type: 'success'
                });
                self.dialogFormVisible(true);
 
              })
              .catch(error => {
                self.submit_loading = false;
              });
 
          }
        });
      },
 
      /*关闭弹窗*/
      dialogFormVisible(e) {
        if (e) {
          this.$emit('closeDialog', {
            type: 'success',
            openDialog: false
          })
        } else {
          this.$emit('closeDialog', {
            type: 'error',
            openDialog: false
          })
        }
      }
 
    }
  };
</script>
 
<style></style>