define({
name: "dealerCommission",
template: `
关闭
开启
如果不开启经销商提成,则不产生提成金额
关闭
开启
如果开启了,经销商推广该商品计算分红时,如果经销商没有购买过该商品,则不能获得经销商全部的分红奖励(包括经销商分红、平级奖等),并不计入平级奖层级,但计入经销提成层级限制
关闭
开启
如果不开启经销商平级奖,则不产生平级奖
启用独立提成比例
启用独立提成金额设置,此商品拥有独自的提成金额,不受默认设置限制
经销商等级
提成比例/经销商受益比例
生态服务比例
额外奖励
{{level.level_name}}
%
元 固定
%
元
如果比例都为空或等于0,则使用固定金额规则,如果比例和金额都为空或等于0则不获得提成(ps:为了确保经销商能获得提成,建议统一设置为比例或者统一设置为固定金额,如果高等级设置比例低等级设置固定金额,有可能会造成部分经销商无提成)
商品启用经销商独立提成:如果商品经销商独立提成设置的是比例,那么平级奖计算金额则按照商品实际支付金额计算; 如果商品经销商独立提成设置的是固定金额,那么平级奖计算金额则按照固定金额计算
启用独立提成比例
比例为空或等于0则则无平级奖
经销商等级
平级奖
{{level.level_name}}
层级
层
%
`,
style: `
.help-block{
font-size:12px;
}
.help-block-detail{
white-space:pre-wrap;
display: flex;
flex-direction: column;
}
.location{
display:flex;
justify-content:flex-end;
}
.gutter{
text-align:center;
}
.flex-col{
display:flex;
margin-top:5px;
}
.el-input-group__append, .el-input-group__prepend {
padding: 0 10px;
}
`,
props: {
form: {
type: Object,
default() {
return {}
}
}
},
data(){
return {
is_dividend: 1,
is_restrict: 0,
is_hierarchy: 0,
has_dividend: 0,
has_peers: 0,
teamSet: {},
levelList: [],
}
},
mounted(){
if (this.form.item && !Array.isArray(this.form.item)) {
this.is_dividend = this.form.item.is_dividend;
this.is_restrict = this.form.item.is_restrict;
this.is_hierarchy = this.form.item.is_hierarchy;
this.has_dividend = this.form.item.has_dividend;
this.has_peers = this.form.item.has_peers;
}
this.teamSet = JSON.parse(JSON.stringify(this.form.teamSet !== null ? this.form.teamSet : {}));
this.levelList = JSON.parse(JSON.stringify(this.form.dividendLevel));
},
methods: {
pick (obj, arr) {
arr.reduce((iter, val) => (val in obj && (iter[val] = obj[val]), iter), {});
},
filterList (list=[]) {
let ratesList = {};
let pricesList = {};
let commissionList = {};
let extraList = {};
let gradeList = {};
list.forEach((item, index) => {
let key = 'level_' + item.id;
let {has_dividend_rates, commission_rates, has_dividend_prices, has_dividend_extra, hierarchy, ratio} = item;
// 独立规则
if (this.has_dividend) {
ratesList[key] = has_dividend_rates;
pricesList[key] = has_dividend_prices;
commissionList[key] = commission_rates;
}
// 额外奖励
if (this.has_dividend && this.teamSet.is_extra_award == 1) {
extraList[key] = has_dividend_extra;
}
// 平级奖
if (this.has_peers) {
gradeList[item.id] = {
hierarchy,
ratio
}
}
});
return {ratesList, commissionList, pricesList, extraList, gradeList}
},
validate () {
let aggregate = this.filterList(this.levelList);
return {
has_peers: this.has_peers,
is_dividend: this.is_dividend,
is_restrict: this.is_restrict,
is_hierarchy: this.is_hierarchy,
has_dividend: this.has_dividend,
// dividendLevel: this.filterList(this.levelList)
has_dividend_rates: aggregate.ratesList,
has_dividend_prices: aggregate.pricesList,
commission_rates: aggregate.commissionList,
has_dividend_extra: aggregate.extraList,
has_hierarchys: aggregate.gradeList
}
},
},
})