| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- define({
- name: "areaDividend",
- template: `
- <div>
- <el-form ref="setForm" :model="jsonData" label-width="130px">
- <div id="vue_head">
- <div class="base_set">
- <div class="vue-main-title">
- <div class="vue-main-title-left"></div>
- <div class="vue-main-title-content">区域分红设置</div>
- </div>
- <el-divider></el-divider>
- <div class="vue-main-form">
- <el-form-item label="开启区域分红">
- <el-radio v-model="jsonData.is_dividend" :label="0">关闭</el-radio>
- <el-radio v-model="jsonData.is_dividend" :label="1">开启</el-radio>
- <div class="help-block">如果不开启区域分红,则不产生分红佣金</div>
- </el-form-item>
- <el-form-item label="独立规则">
- <el-switch v-model="jsonData.has_dividend" :active-value="1" :inactive-value="0"></el-switch>
- <span>启用独立佣金比例</span>
- <div class="help-block">启用独立分红金额设置,此商品拥有独自的分红金额,不受默认设置限制</div>
- </el-form-item>
- <el-form-item label="独立分红金额" v-show="jsonData.has_dividend">
- <el-col :span="6">
- <el-form-item>
- <el-input placeholder="请输入金额" v-model="jsonData.has_dividend_rate" maxlength="10" size="small" oninput="if(value<0)value=''" type="number">
- <template slot="append">% 固定</template>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item>
- <el-input placeholder="请输入金额" v-model="jsonData.has_dividend_price" maxlength="10" size="small" oninput="if(value<0)value=''" type="number">
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- </el-form-item>
- <el-form-item v-show="jsonData.has_dividend">
- <div class="help-block">如果比例为空或等于0,则使用固定规则,如果都为空或等于0则使用默认规则</div>
- </el-form-item>
- <el-form-item label="独立设置">
- <el-switch v-model="jsonData.alone_rule" :active-value="1" :inactive-value="0"></el-switch>
- <span>启用独立佣金比例</span>
- <div class="help-block">启用独立设置,如果比例为空为0则无分红佣金(开启了第一个独立规则,独立设置就无法开启)</div>
- </el-form-item>
- <div v-show="jsonData.alone_rule">
- <el-form-item>
- <el-input style="width: 300px;" v-model="jsonData.province_rate" >
- <template slot="prepend">省</template>
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- <el-form-item>
- <el-input style="width: 300px;" v-model="jsonData.city_rate" >
- <template slot="prepend">市</template>
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- <el-form-item>
- <el-input style="width: 300px;" v-model="jsonData.area_rate" >
- <template slot="prepend">区/县</template>
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- <el-form-item>
- <el-input style="width: 300px;" v-model="jsonData.street_rate" >
- <template slot="prepend">街道/乡镇</template>
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- </div>
- <el-divider></el-divider>
- </div>
- </div>
- </div>
- </el-form>
- </div>
- `,
- style: `
- .help-block{
- font-size:12px;
- }
- .location{
- display:flex;
- justify-content:flex-end;
- }
- `,
- props: {
- form: {
- type: Object,
- default() {
- return {}
- }
- },
- },
- data(){
- return {
- jsonData: {
- is_dividend: 0,
- has_dividend: 0,
- has_dividend_rate: '',
- has_dividend_price: '',
- alone_rule: 0,
- province_rate:'',
- city_rate:'',
- area_rate: '',
- street_rate: '',
- },
- }
- },
- mounted() {
- if (this.form.item && !Array.isArray(this.form.item)) {
- this.jsonData = {...this.form.item};
- }
- },
- methods: {
- validate(){
- let result = {
- is_dividend: this.jsonData.is_dividend,
- has_dividend: this.jsonData.has_dividend,
- alone_rule:this.jsonData.alone_rule,
- };
- if (this.jsonData.has_dividend) {
- result.has_dividend_rate = this.jsonData.has_dividend_rate?this.jsonData.has_dividend_rate:0;
- result.has_dividend_price = this.jsonData.has_dividend_price?this.jsonData.has_dividend_price:0;
- }
- if (this.jsonData.alone_rule) {
- result.province_rate = this.jsonData.province_rate?this.jsonData.province_rate:0;
- result.city_rate = this.jsonData.city_rate?this.jsonData.city_rate:0;
- result.area_rate = this.jsonData.area_rate?this.jsonData.area_rate:0;
- result.street_rate = this.jsonData.street_rate?this.jsonData.street_rate:0;
- }
- return result;
- },
- },
- });
|