| 123456789101112131415161718192021222324252627282930313233343536 | 
							- <?php
 
- namespace app\api\controller\commission;
 
- use think\Request;
 
- use app\common\model\Goods as GoodsModel;
 
- use app\common\model\commission\CommissionGoods as CommissionGoodsModel;
 
- use app\common\Service\commission\Goods as CommissionGoodsService;
 
- class Goods extends Commission
 
- {
 
-     protected $noNeedLogin = [];
 
-     protected $noNeedRight = ['*'];
 
-     public function index()
 
-     {
 
-         $goods_table_name = (new GoodsModel)->getQuery()->getTable();
 
-         $list = GoodsModel
 
-             ::hasWhere('commissionGoods', ['status' => CommissionGoodsModel::GOODS_COMMISSION_STATUS_ON])
 
-             ->where($goods_table_name . '.status', 'up')
 
-             ->order('weigh desc, id desc')
 
-             ->paginate($this->request->param('list_rows', 8))
 
-             ->each(function ($goods) {
 
-                 $this->caculateMyCommission($goods);
 
-             });
 
-         $this->success("", $list);
 
-     }
 
-     private function caculateMyCommission($goods)
 
-     {
 
-         $commissionGoodsService = new CommissionGoodsService($goods->commission_goods, $goods->sku_prices[0]['id']);
 
-         $commissionRule = $commissionGoodsService->getCommissionLevelRule($this->service->agent->level ?? 1);
 
-         $goods->commission = $commissionGoodsService->caculateGoodsCommission($commissionRule, $goods->sku_prices[0]['price']);
 
-     }
 
- }
 
 
  |