diff --git a/plugins/team-dividend/src/admin/TeamAgencyController.php b/plugins/team-dividend/src/admin/TeamAgencyController.php index fcca5c37..61f7849d 100644 --- a/plugins/team-dividend/src/admin/TeamAgencyController.php +++ b/plugins/team-dividend/src/admin/TeamAgencyController.php @@ -152,12 +152,11 @@ class TeamAgencyController extends BaseController */ public function add() { - $level_list = TeamDividendLevelModel::getList()->get(); if (\Request::getMethod() == 'POST') { $agentData = \YunShop::request()->team; $agentData['uniacid'] = \YunShop::app()->uniacid; $agentData['upgrade_at'] = time(); - if((int)$agentData['level'] <= 0) return $this->message('添加失败,请选择代理等级!', '', 'error'); + if((int)$agentData['level'] <= 0 && (int)$agentData['cultural_level_id'] <= 0) return $this->message('添加失败,请选择代理等级!', '', 'error'); try{ TeamDividendAgencyModel::addTeamAgency($agentData); @@ -170,8 +169,12 @@ class TeamAgencyController extends BaseController } + $level_list = TeamDividendLevelModel::getList()->where('level_type',0)->get(); + $cultural_level = TeamDividendLevelModel::getList()->where('level_type',1)->get(); + return view('Yunshop\TeamDividend::admin.team-agency-add', [ - 'level' => $level_list + 'level' => $level_list, + 'cultural_level' => $cultural_level ])->render(); } @@ -327,7 +330,7 @@ class TeamAgencyController extends BaseController // $set = \Setting::get('plugin.team_dividend'); // (new NewUpgrateJob($model->uid, $set, $model->uniacid, TeamDividendLevelUpgrade::ORDER_PAY, $model))->handle(); - // $order = Order::find(169); + // $order = Order::find(3); // $TeamReturnService = ReturnConfig::getClass(); // if (app('plugins')->isEnabled('team-sideways')) debug('经销商订单创建终止:team-sideways'); // $set = $order->getSetting('plugin.team_dividend'); @@ -339,12 +342,7 @@ class TeamAgencyController extends BaseController // $TeamReturnService->setData($order, $set, $buyMember, $order_goods, $agents); // $TeamReturnService->handle(); // $this->totalDividend += $TeamReturnService->totalDividend; - // // 文创津贴(补贴)处理 - // $TeamReturnService->setData($order, $set, $buyMember, $order_goods, $agents,1); - // $TeamReturnService->handle(); - // $this->totalDividend += $TeamReturnService->totalDividend; // } - // debug(['总分红金额(包括津贴和补贴)'=>$this->totalDividend]); debug("结束"); } diff --git a/plugins/team-dividend/src/models/GoodsTeamDividend.php b/plugins/team-dividend/src/models/GoodsTeamDividend.php index cd19b3a7..a1f8d683 100644 --- a/plugins/team-dividend/src/models/GoodsTeamDividend.php +++ b/plugins/team-dividend/src/models/GoodsTeamDividend.php @@ -18,18 +18,17 @@ class GoodsTeamDividend extends BaseModel public $timestamps = true; protected $guarded = ['']; public $attributes = [ - 'is_dividend' => 1, - 'is_hierarchy' => 1, - 'is_restrict' => 0, - 'has_dividend' => 0, + 'is_dividend' => 1, + 'is_hierarchy' => 1, + 'is_restrict' => 0, + 'has_dividend' => 0, 'has_dividend_price' => 0, - 'has_dividend_rate' => 0, + 'has_dividend_rate' => 0, + 'commission_rates' => 0 ]; - public static function getGoodsByGoodsId($giidsId) - { - return self::where('goods_id', $giidsId) - ->where('is_dividend', '1'); + public static function getGoodsByGoodsId($giidsId){ + return self::where('goods_id', $giidsId)->where('is_dividend', '1'); } public static function relationSave($goodsId, $data, $operate) @@ -65,6 +64,7 @@ class GoodsTeamDividend extends BaseModel $data['has_dividend_rates'] = $data['has_dividend_rates'] ? serialize($data['has_dividend_rates']) : ''; $data['has_hierarchys'] = serialize($data['has_hierarchys']); $data['has_dividend_extra'] = $data['has_dividend_extra'] ? serialize($data['has_dividend_extra']) : ''; + $data['commission_rates'] = $data['commission_rates'] ? serialize($data['commission_rates']) : ''; $dividendModel->setRawAttributes($data); return $dividendModel->save(); } diff --git a/plugins/team-dividend/src/models/TeamDividendAgencyModel.php b/plugins/team-dividend/src/models/TeamDividendAgencyModel.php index 4af67d70..913c0276 100644 --- a/plugins/team-dividend/src/models/TeamDividendAgencyModel.php +++ b/plugins/team-dividend/src/models/TeamDividendAgencyModel.php @@ -173,9 +173,9 @@ class TeamDividendAgencyModel extends BackendModel { return self::uniacid() ->with(['hasOneLevel'=>function($query){ - $query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight']); + // $query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight','level_type','commission_ratio']); },'culturalLevel'=>function($query){ - $query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight']); + // $query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight','level_type','commission_ratio']); }]) ->where('uid', $uid) ->first(); diff --git a/plugins/team-dividend/src/models/TeamDividendModel.php b/plugins/team-dividend/src/models/TeamDividendModel.php index edd6d35d..132474a3 100644 --- a/plugins/team-dividend/src/models/TeamDividendModel.php +++ b/plugins/team-dividend/src/models/TeamDividendModel.php @@ -201,10 +201,13 @@ class TeamDividendModel extends BaseModel $this->TypeService = '额外分红'; break; case 4: - $this->TypeService = '津贴(补贴)'; + $this->TypeService = '生态建设'; break; case 5: - $this->TypeService = '津贴(补贴)平级奖'; + $this->TypeService = '生态贡献'; + break; + case 6: + $this->TypeService = '生态服务'; break; } } @@ -472,7 +475,7 @@ class TeamDividendModel extends BaseModel * Author: wu-hui * Time: 2023/11/20 15:15 * @param int $uid 用户id - * @param int $type 4=服务收益,5=贡献收益 + * @param int $type 4=生态建设,5=生态贡献,6=生态服务 * @param string $incomeStatus all=全部收益;undrawn=未提现收益,withdrawn=已提现收益 * @return mixed */ diff --git a/plugins/team-dividend/src/services/GetAmountService.php b/plugins/team-dividend/src/services/GetAmountService.php index 124290bb..771aa58f 100644 --- a/plugins/team-dividend/src/services/GetAmountService.php +++ b/plugins/team-dividend/src/services/GetAmountService.php @@ -37,7 +37,7 @@ class GetAmountService * @param $finish_price * @param $dividendType */ - public function __construct($agent, $order, $order_goods, $set, $team_goods, $finish_ratio, $finish_price, $dividendType = 0) + public function __construct($agent, $order, $order_goods, $set, $team_goods, $finish_ratio, $finish_price, $dividendType = 0,$finish_ratio_service = 0) { $this->dividendType = $dividendType; $this->agent = $agent; @@ -46,6 +46,7 @@ class GetAmountService $this->set = $set; $this->team_goods = $team_goods; $this->finish_ratio = $finish_ratio; + $this->finish_ratio_service = $finish_ratio_service; $this->finish_price = $finish_price; } @@ -59,6 +60,11 @@ class GetAmountService return unserialize($this->team_goods->has_dividend_rates); } + private function getCommissionRates() + { + return unserialize($this->team_goods->commission_rates); + } + /** * @name 商品独立设置-固定金额-解序列化 * @author @@ -305,7 +311,8 @@ class GetAmountService } return $ratio; - } else { + } + else { // 商城商品设置奖励比例 else 商城商品设置奖励固定金额 if ($this->hasDividendRates()) { $dividend_rates = $this->getDividendRates(); @@ -314,7 +321,9 @@ class GetAmountService return $ratio; } } - } else { + } + else { + // 基础设置 if($this->dividendType == 1){ $ratio = bcsub($this->agent['cultural_level']['dividend_ratio'], $this->finish_ratio,2); $this->finish_ratio = $this->agent['cultural_level']['dividend_ratio']; @@ -326,11 +335,53 @@ class GetAmountService } } + // 获取生态服务比例 + public function getServiceRatio(){ + // 商品独立设置 else 基础设置 + if($this->hasDividend()){ + // 收银台商品 与 存在独立奖励设置 else 商城 + if($this->hasDividendRate()){ + // 经销商奖励比例 - 下级经销商奖励比例 = 奖励比例 + if($this->dividendType == 1){ + $ratio = bcsub($this->agent['cultural_level']['commission_ratio'],$this->finish_ratio_service,2); + $this->finish_ratio_service = $this->agent['cultural_level']['commission_ratio']; + } + else{ + $ratio = bcsub($this->agent['has_one_level']['commission_ratio'],$this->finish_ratio_service,2); + $this->finish_ratio_service = $this->agent['has_one_level']['commission_ratio']; + } + return $ratio; + } + else{ + // 商城商品设置奖励比例 else 商城商品设置奖励固定金额 + if($this->hasDividendRates()){ + $dividend_rates = $this->getCommissionRates(); + $ratio = bcsub($dividend_rates['level_'.($this->dividendType == 1 ? $this->agent['cultural_level_id'] : $this->agent['level'])],$this->finish_ratio_service,2); + $this->finish_ratio_service = $dividend_rates['level_'.($this->dividendType == 1 ? $this->agent['cultural_level_id'] : $this->agent['level'])]; + return $ratio; + } + } + } + else{ + // 基础设置 + if($this->dividendType == 1){ + $ratio = bcsub($this->agent['cultural_level']['commission_ratio'],$this->finish_ratio_service,2); + $this->finish_ratio_service = $this->agent['cultural_level']['commission_ratio']; + } + else{ + $ratio = bcsub($this->agent['has_one_level']['commission_ratio'],$this->finish_ratio_service,2); + $this->finish_ratio_service = $this->agent['has_one_level']['commission_ratio']; + } + return $ratio; + } + } + + + /** * 获取最大奖励 */ - public function getTotalDividend() - { + public function getTotalDividend(){ $maxRatio = max(TeamDividendLevelModel::uniacid()->select('dividend_ratio')->get()->toArray()); if ($this->hasDividend()) { @@ -365,4 +416,13 @@ class GetAmountService } + + + + + + + + + } \ No newline at end of file diff --git a/plugins/team-dividend/src/services/TeamReturnService.php b/plugins/team-dividend/src/services/TeamReturnService.php index bda1afaf..f9c6f48b 100644 --- a/plugins/team-dividend/src/services/TeamReturnService.php +++ b/plugins/team-dividend/src/services/TeamReturnService.php @@ -33,6 +33,8 @@ class TeamReturnService private $lower_ratio = 0; // 已获得奖励的比例 private $finish_ratio = 0; + // 已获得服务奖励的比例 + private $finish_ratio_service = 0; // 已完成的经销商奖励 用于感恩奖 private $finish_team_award_amount = 0; // 已奖励金额 用于计算极差 @@ -59,9 +61,9 @@ class TeamReturnService protected $flat_prize_limit; - private $dividendType = 0;// 分红类型:0=普通经销商提成,1=文创经销商津贴(补贴) - + private $dividendType = 0;// 分红类型:0=普通经销商提成,1=文创经销商生态建设 + private $upUserDividendAmount = 0;// 上一位用户的经销商佣金提成金额 只有存在佣金时才会刷新该数据,如果用户为领取佣金则该金额保留 直到某位用户获取佣金为止 public function setData($order, $set, $buyMember, $order_goods, $agents){ $this->order = $order; @@ -93,7 +95,7 @@ class TeamReturnService private function running(){ foreach ($this->agents as $agent) { - $this->amount_service = new GetAmountService($agent, $this->order, $this->order_goods, $this->set, $this->team_goods, $this->finish_ratio, $this->finish_price, $this->dividendType); + $this->amount_service = new GetAmountService($agent, $this->order, $this->order_goods, $this->set, $this->team_goods, $this->finish_ratio, $this->finish_price, $this->dividendType, $this->finish_ratio_service); //商品分红限制 不计入平级奖层级 不算感恩奖 if ($agent['is_black'] || $this->getIsRestrict($agent)) { continue; @@ -117,9 +119,9 @@ class TeamReturnService private function totalDividend() { - $amount_service = new GetAmountService('', $this->order, $this->order_goods, $this->set, $this->team_goods, $this->finish_ratio, $this->finish_price); + $amount_service = new GetAmountService('', $this->order, $this->order_goods, $this->set, $this->team_goods, $this->finish_ratio, $this->finish_price,$this->dividendType,$this->finish_ratio_service); // 经销商奖励总金额 不包括感恩奖和平级奖 - $this->totalDividend = $amount_service->getTotalDividend(); + $this->totalDividend += $amount_service->getTotalDividend(); } // 感恩奖 @@ -205,7 +207,7 @@ class TeamReturnService return; } - + $this->upUserDividendAmount = $dividend_amount; // 计算基数 $amount = $this->amount_service->amount; @@ -218,7 +220,6 @@ class TeamReturnService ]; // 分红 $dividend_model = $this->addDividend($agent, $dividendData); - $member = Member::getMemberByUid($agent['uid'])->with('hasOneFans')->first(); $notice = [ 'lower_level_name' => $this->buyMember->nickname, @@ -243,6 +244,61 @@ class TeamReturnService } // 属性赋值 $this->setAttributeTheValue($dividendData['dividend_amount'], $agent); + + // 生态服务 + if($this->dividendType == 1) $this->dividendAwardService($agent); + } + + // 生态服务 + private function dividendAwardService($agent){ + // 生态服务比例 + $ratio = $this->amount_service->getServiceRatio(); + // 生态服务金额 + $dividend_amount = $this->amount_service->getDividendAmount($ratio); + if($dividend_amount <= 0) return; + // 计算基数 + $amount = $this->amount_service->amount; + $dividendData = [ + 'dividend_amount' => $dividend_amount, + 'type' => 6, + 'amount' => $amount, + 'dividend_rate' => $ratio, + 'lower_level_rate' => $this->finish_ratio_service ?: 0 + ]; + // 生态服务 + $dividend_model = $this->addDividend($agent,$dividendData); + $member = Member::getMemberByUid($agent['uid'])->with('hasOneFans')->first(); + $notice = [ + 'lower_level_name' => $this->buyMember->nickname, + 'order_amount' => $this->order->price, + 'amount' => $dividendData['amount'], + 'dividendRate' => $ratio, + 'rate' => $this->finish_ratio_service, + 'dividend_amount' => $dividendData['dividend_amount'], + 'order_sn' => $this->order->order_sn, + 'dividend_id' => $dividend_model ? $dividend_model->id : 0, + ]; + if($this->set['notice_event'] == 1){ + NoticeLog::create([ + 'uniacid' => \YunShop::app()->uniacid, + 'uid' => $agent['uid'], + 'order_id' => $this->order->id, + 'type' => $dividendData['type'], + 'notice_data' => json_encode($notice), + ]); + } + else{ + MessageService::dividendOrder($notice,$member->hasOneFans); + } + // 属性赋值 + $this->finish_ratio_service = $this->amount_service->finish_ratio_service; + //保存已获得分红的分红金额 感恩奖触发就清0 + $this->finish_team_award_amount = $dividend_amount; + //保存已获得分红的分红金额 (ps:上级是固定金额 减去 该金额) + $this->finish_price = $this->amount_service->amount; + // 获得奖励的UID + $this->award_uid = $agent['uid']; + $this->obtainInfos[$this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level']] = $dividend_amount; } // 平级奖 @@ -267,15 +323,17 @@ class TeamReturnService // 平级奖奖励比例 $award_ratio = $this->amount_service->getAwardHierarchyRatio(); - if (!isset($award_ratio) || $award_ratio <= 0) { - return; - } - $amount = $this->amount_service->getAwardHierarchyAmount(); - if ($amount <= 0) { - return; + if (!isset($award_ratio) || $award_ratio <= 0) return; + // 计算结算金额 普通经销商为订单金额,文创经销商为上一位的分红佣金 + if($this->dividendType == 1){ + // 文创等级 使用上一位的分红佣金 + $amount = $this->upUserDividendAmount; + }else{ + // 普通等级 使用订单金额 + $amount = $this->amount_service->getAwardHierarchyAmount(); } + if ($amount <= 0) return; $dividend_amount = proportionMath($amount, $award_ratio); - $dividendData = [ 'amount' => $amount, 'dividend_rate' => $award_ratio, @@ -476,9 +534,8 @@ class TeamReturnService 'culate_method' => intval($this->set['culate_method']) ?: 0, 'created_at' => time(), ]; - // 判断:如果当前是 文创津贴(补贴) 修改对应的类型值 - if($this->dividendType == 1) $dividendData['type'] = $dividendData['type'] == 1 ? 5 : 4; - + // 判断:如果当前是 文创生态建设 修改对应的类型值 + if($this->dividendType == 1 && $dividendData['type'] < 6) $dividendData['type'] = $dividendData['type'] == 1 ? 5 : 4; //取小数点后两位数四舍五入 例如设置独立金额0.003元 if (round($dividendData['dividend_amount'], 2) <= 0) return; @@ -566,5 +623,9 @@ class TeamReturnService $this->extraCount = 0; // 获得经销商奖励的等级id与金额 $this->obtainInfos = []; + // 上一位获取的佣金 只有存在新佣金时才会刷新,否则不刷新 + $this->upUserDividendAmount = 0; + // 已获得生态服务奖励的比例 + $this->finish_ratio_service = 0; } } \ No newline at end of file diff --git a/plugins/team-dividend/src/widgets/DividendVueWidget.php b/plugins/team-dividend/src/widgets/DividendVueWidget.php index e9afd5f5..c3b313a9 100644 --- a/plugins/team-dividend/src/widgets/DividendVueWidget.php +++ b/plugins/team-dividend/src/widgets/DividendVueWidget.php @@ -31,16 +31,17 @@ class DividendVueWidget extends BaseGoodsWidget $item['has_dividend_rates'] = unserialize($item['has_dividend_rates']); $item['has_hierarchys'] = unserialize($item['has_hierarchys']); $item['has_dividend_extra'] = unserialize($item['has_dividend_extra']); + $item['commission_rates'] = unserialize($item['commission_rates']); $dividendLevel = TeamDividendLevelModel::getList()->get()->toArray(); foreach ($dividendLevel as $key=>$value) { $dividendLevel[$key]['has_dividend_rates'] = isset($item['has_dividend_rates']['level_'.$value['id']])?$item['has_dividend_rates']['level_'.$value['id']]:''; //提成比例百分比 $dividendLevel[$key]['has_dividend_prices'] = isset($item['has_dividend_prices']['level_'.$value['id']])?$item['has_dividend_prices']['level_'.$value['id']]:''; //提成比例固定 $dividendLevel[$key]['has_dividend_extra'] = isset($item['has_dividend_extra']['level_'.$value['id']])?$item['has_dividend_extra']['level_'.$value['id']]:''; //提成比例-额外奖励 + $dividendLevel[$key]['commission_rates'] = isset($item['commission_rates']['level_'.$value['id']])?$item['commission_rates']['level_'.$value['id']]:''; // $dividendLevel[$key]['hierarchy'] = isset($item['has_hierarchys'][$value['id']]['hierarchy'])?$item['has_hierarchys'][$value['id']]['hierarchy']:''; //提成比例-额外奖励 $dividendLevel[$key]['ratio'] = isset($item['has_hierarchys'][$value['id']]['ratio'])?$item['has_hierarchys'][$value['id']]['ratio']:''; //提成比例-额外奖励 - } $data['teamSet'] = $set; diff --git a/plugins/team-dividend/src/widgets/DividendWidget.php b/plugins/team-dividend/src/widgets/DividendWidget.php index 856e12df..0ceca70c 100644 --- a/plugins/team-dividend/src/widgets/DividendWidget.php +++ b/plugins/team-dividend/src/widgets/DividendWidget.php @@ -18,6 +18,7 @@ class DividendWidget extends Widget $item['has_dividend_rates'] = unserialize($item['has_dividend_rates']); $item['has_hierarchys'] = unserialize($item['has_hierarchys']); $item['has_dividend_extra'] = unserialize($item['has_dividend_extra']); + $item['commission_rates'] = unserialize($item['commission_rates']); $dividendLevel = TeamDividendLevelModel::getList()->get()->toArray(); return view('Yunshop\TeamDividend::admin.goods', [ diff --git a/plugins/team-dividend/views/admin/dividend-list.blade.php b/plugins/team-dividend/views/admin/dividend-list.blade.php index caf9305b..21a7fcb8 100644 --- a/plugins/team-dividend/views/admin/dividend-list.blade.php +++ b/plugins/team-dividend/views/admin/dividend-list.blade.php @@ -65,8 +65,9 @@ - - + + + @@ -130,33 +131,33 @@ - - - - - - - - - - - - + + + + + + + + + + + + @foreach($list['data'] as $row) - - - - + + + - - - - - - - - + + + + + diff --git a/plugins/team-dividend/views/admin/goods.blade.php b/plugins/team-dividend/views/admin/goods.blade.php index 46a3b20d..4b2c164b 100644 --- a/plugins/team-dividend/views/admin/goods.blade.php +++ b/plugins/team-dividend/views/admin/goods.blade.php @@ -67,7 +67,8 @@ - + + @if( $teamSet['is_extra_award'] ) @endif @@ -81,34 +82,38 @@ + @if( $teamSet['is_extra_award'] ) - + @endif @endforeach -
ID提成时间会员ID订单号经销商经销商等级
分红类型 / 分红比例
订单金额提成结算金额下级经销商提成提成金额提成状态操作ID提成时间会员ID订单号经销商经销商等级
分红类型 / 分红比例
订单金额提成结算金额下级经销商提成提成金额提成状态操作
{{$row['id']}}{{$row['created_at']}}{{$row['member_id']}} + {{$row['id']}}{{$row['created_at']}}{{$row['member_id']}} {{$row['order_sn']}} + + {{$row['level_name']}}
{{ $row['type_name'] }} - 比例:{{$row['dividend_rate']}}%
{{$row['order_amount']}}{{$row['amount']}}{{$row['lower_level_rate']}}%{{$row['dividend_amount']}}{{$row['status_name']}} + {{$row['order_amount']}}{{$row['amount']}}{{$row['lower_level_rate']}}%{{$row['dividend_amount']}}{{$row['status_name']}} 查看详情
经销商等级提成比例提成比例/生态建设比例生态服务比例额外奖励
- +
% 固定
- +
+
+ +
%
+
+
-
- -
-
-
+
+ +
+
+
- 如果比例都为空或等于0,则使用固定金额规则,如果比例和金额都为空或等于0则不获得提成
(ps:为了确保经销商能获得提成,建议统一设置为比例或者统一设置为固定金额,如果高等级设置比例低等级设置固定金额,有可能会造成部分经销商无提成)
- 商品启用经销商独立提成:如果商品经销商独立提成设置的是比例,那么平级奖计算金额则按照商品实际支付金额计算; - 如果商品经销商独立提成设置的是固定金额,那么平级奖计算金额则按照固定金额计算 + + 如果比例都为空或等于0,则使用固定金额规则,如果比例和金额都为空或等于0则不获得提成
+ (ps:为了确保经销商能获得提成,建议统一设置为比例或者统一设置为固定金额,如果高等级设置比例低等级设置固定金额,有可能会造成部分经销商无提成) +
+ + 商品启用经销商独立提成:如果商品经销商独立提成设置的是比例,那么平级奖计算金额则按照商品实际支付金额计算; + 如果商品经销商独立提成设置的是固定金额,那么平级奖计算金额则按照固定金额计算 + diff --git a/plugins/team-dividend/views/admin/level-set-add.blade.php b/plugins/team-dividend/views/admin/level-set-add.blade.php index 27594f1d..fcb18d7c 100644 --- a/plugins/team-dividend/views/admin/level-set-add.blade.php +++ b/plugins/team-dividend/views/admin/level-set-add.blade.php @@ -164,7 +164,7 @@
@@ -176,6 +176,19 @@
+ + +
+ +
+
+ +
%
+
+
+
+ +
@@ -1252,7 +1265,13 @@ let val = $(this).val(); val = parseInt(val) && !isNaN(parseInt(val)) ? parseInt(val) : parseInt(0); // 0=普通等级 1=文创等级 - $("#dividend_ratio_text").html(val === parseInt(1) ? '补贴(津贴)比例' : '提成比例'); + if(val === parseInt(1)){ + $("#dividend_ratio_text").html('生态建设比例'); + $("#commission_ratio_set_content").removeClass('hide'); + }else{ + $("#dividend_ratio_text").html('提成比例'); + $("#commission_ratio_set_content").addClass('hide'); + } }); diff --git a/plugins/team-dividend/views/admin/level-set.blade.php b/plugins/team-dividend/views/admin/level-set.blade.php index 17746e79..01747337 100644 --- a/plugins/team-dividend/views/admin/level-set.blade.php +++ b/plugins/team-dividend/views/admin/level-set.blade.php @@ -29,7 +29,8 @@ 等级名称 等级类型 提成比例(%) - 补贴(津贴)比例(%) + 生态建设比例(%) + 生态服务比例(%) {{--激活码发放--}} 平级奖励层级 平级奖励比例 @@ -65,6 +66,13 @@ - @endif + + @if($item['level_type'] == 1) + {{$item['commission_ratio']}} + @else + - + @endif + {{--{{array_sum(unserialize($item['code_num']))}}--}} {{$item['award_hierarchy']}} {{$item['award_ratio']}} diff --git a/plugins/team-dividend/views/admin/team-agency-add.blade.php b/plugins/team-dividend/views/admin/team-agency-add.blade.php index 951671ac..2064b1bc 100644 --- a/plugins/team-dividend/views/admin/team-agency-add.blade.php +++ b/plugins/team-dividend/views/admin/team-agency-add.blade.php @@ -8,7 +8,6 @@
  • 添加团队代理
  • -
    @@ -39,7 +38,6 @@ {{----}}
    -
    @@ -47,14 +45,24 @@ {{----}}
    -
    +
    +
    +
    + +
    +
    diff --git a/plugins/team-dividend/views/admin/team-agency.blade.php b/plugins/team-dividend/views/admin/team-agency.blade.php index 7194cdcf..4e066982 100644 --- a/plugins/team-dividend/views/admin/team-agency.blade.php +++ b/plugins/team-dividend/views/admin/team-agency.blade.php @@ -132,7 +132,7 @@ 提成比例
    累计提成
    - 补贴(津贴)比例
    累计补贴(津贴) + 生态建设比例
    累计生态建设 已结算提成
    未结算提成 黑名单
    变动时间 diff --git a/plugins/team-dividend/views/widget/profit/dealerCommission.js b/plugins/team-dividend/views/widget/profit/dealerCommission.js index 6acd432e..351ca733 100644 --- a/plugins/team-dividend/views/widget/profit/dealerCommission.js +++ b/plugins/team-dividend/views/widget/profit/dealerCommission.js @@ -36,21 +36,24 @@ define({ - +
    经销商等级
    - -
    提成比例
    + +
    提成比例/生态建设比例
    - + +
    生态服务比例
    +
    +
    额外奖励
    - +
    {{level.level_name}}
    - + @@ -58,7 +61,12 @@ define({ - + + + + + + @@ -177,15 +185,17 @@ define({ 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, has_dividend_prices, has_dividend_extra, hierarchy, ratio} = item; + 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) { @@ -199,7 +209,7 @@ define({ } } }); - return {ratesList, pricesList, extraList, gradeList} + return {ratesList, commissionList, pricesList, extraList, gradeList} }, validate () { let aggregate = this.filterList(this.levelList); @@ -212,6 +222,7 @@ define({ // 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 }