123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- <?php
- /**
- * Created by PhpStorm.
- * User: tandunzhao
- * Date: 2017/12/4
- * Time: 上午9:56
- */
- namespace App\Modules\Finance\Services;
- use App\Modules\Finance\Models\Bill;
- use App\Modules\Finance\Models\CommissionRate;
- class CommissionRateService
- {
- /**
- *
- * @param $id
- * @return mixed
- */
- public static function getCommissionRateSingle($id) {
- $result = CommissionRate::where('id', $id)->first();
- return $result;
- }
- /**
- * 获取佣金结算比例列表
- * @param $channelId
- * @return mixed
- */
- public static function getCommissionRateList($channelId) {
- $result = CommissionRate::getListByDistributionChannel($channelId);
- return $result;
- }
- /**
- * 创建佣金结算
- * @param $channelId
- * @param $begin_amount 起始金额
- * @param $end_amount 结束金额
- * @param $rate 比例
- * @return mixed
- */
- public static function addCommissionRate($channelId, $begin_amount, $end_amount, $rate) {
- if(is_numeric($rate) && $rate >= 1) {
- $rate = '';
- }
- $data['distribution_channel_id'] = $channelId;
- $data['begin_amount'] = $begin_amount;
- $data['end_amount'] = $end_amount;
- $data['rate'] = $rate;
- $result = CommissionRate::create($data);
- return $result;
- }
- /**
- * 更新佣金结算
- * @param $id
- * @param string $begin_amount 起始金额
- * @param string $end_amount 结束金额
- * @param string $rate 比例
- * @param string $channelId
- */
- public static function updateCommissionRate($id, $begin_amount = '', $end_amount = '', $rate = '', $channelId = '') {
- $commissionRate = self::getCommissionRateSingle($id);
- if(empty($commissionRate)) {
- return;
- }
- if(is_numeric($rate) && $rate >= 1) {
- $rate = '';
- }
- if($begin_amount) {
- $commissionRate['begin_amount'] = $begin_amount;
- }
- if($end_amount) {
- $commissionRate['end_amount'] = $end_amount;
- }
- if($rate) {
- $commissionRate['rate'] = $rate;
- }
- if($channelId) {
- $commissionRate['distribution_channel_id'] = $channelId;
- }
- $commissionRate->save();
- }
- /**
- * 获取当前渠道当前佣金比例
- * @param $channelId
- * @return mixed
- */
- public static function getRateCommissionRate($channelId) {
- $rate = Bill::getRate($channelId);
- return $rate;
- }
- }
|