diff --git a/app/jobs/store/platformCommission/SparateLegumesJob.php b/app/jobs/store/platformCommission/SparateLegumesJob.php index c574636..2bd4e99 100644 --- a/app/jobs/store/platformCommission/SparateLegumesJob.php +++ b/app/jobs/store/platformCommission/SparateLegumesJob.php @@ -4,6 +4,7 @@ namespace app\jobs\store\platformCommission; use app\common\model\store\order\StoreOrder; +use app\common\model\store\platformCommission\Record; use app\common\repositories\store\platformCommission\LegumesLogRepository; use app\common\repositories\store\platformCommission\LegumesRepository; use crmeb\interfaces\JobInterface; @@ -34,10 +35,22 @@ class SparateLegumesJob implements JobInterface{ ->select() ->toArray(); $totalMoney = array_sum(array_column($orderList,'sum_money')); + // 获取平台抽成信息 + $orderIds = array_column($orderList,'order_id'); + $platformCommissionRecord = Record::whereIn('order_id',$orderIds) + ->field('order_id,uid,platform_commission_money') + ->select() + ->toArray(); + $totalPlatformCommission = array_sum(array_column($platformCommissionRecord,'platform_commission_money')); + $platformCommissionRecord = array_column($platformCommissionRecord,null,'order_id'); + $insertData = []; foreach($orderList as $orderInfo){ + // 获取平台抽成信息 + $platformCommissionInfo = $platformCommissionRecord[$orderInfo['order_id']] ?? []; // 计算订单金额占比 必须进行100的偏移计算 - $rate = (float)sprintf("%.3f",$orderInfo['sum_money'] / $totalMoney * 100); + // $rate = (float)sprintf("%.3f",$orderInfo['sum_money'] / $totalMoney * 100); + $rate = (float)sprintf("%.3f",$platformCommissionInfo['platform_commission_money'] / $totalPlatformCommission * 100); $getLegumes = sprintf("%.3f",$cycleLegumes['legumes_num'] * $rate / 100); // 信息记录 $insertData[] = [