Browse Source

update: optimize commission calculation

tokumeikoi 3 years ago
parent
commit
1d5a493ef1

+ 2 - 2
app/Console/Commands/V2boardStatistics.php

@@ -56,9 +56,9 @@ class V2boardStatistics extends Command
             ->whereNotIn('status', [0, 2]);
         $orderCount = $builder->count();
         $orderAmount = $builder->sum('total_amount');
-        $builder = $builder->where('commission_balance', '!=', 0);
+        $builder = $builder->where('actual_commission_balance', '!=', 0);
         $commissionCount = $builder->count();
-        $commissionAmount = $builder->sum('commission_balance');
+        $commissionAmount = $builder->sum('actual_commission_balance');
         $data = [
             'order_count' => $orderCount,
             'order_amount' => $orderAmount,

+ 14 - 0
app/Http/Controllers/Admin/OrderController.php

@@ -5,6 +5,7 @@ namespace App\Http\Controllers\Admin;
 use App\Http\Requests\Admin\OrderAssign;
 use App\Http\Requests\Admin\OrderUpdate;
 use App\Http\Requests\Admin\OrderFetch;
+use App\Models\CommissionLog;
 use App\Services\OrderService;
 use App\Services\UserService;
 use App\Utils\Helper;
@@ -36,6 +37,19 @@ class OrderController extends Controller
         }
     }
 
+    public function detail(Request $request)
+    {
+        $order = Order::find($request->input('id'));
+        if (!$order) abort(500, '订单不存在');
+        $order['commission_log'] = CommissionLog::where('trade_no', $order->trade_no)->get();
+        if ($order->surplus_order_ids) {
+            $order['surplus_orders'] = Order::whereIn('id', $order->surplus_order_ids)->get();
+        }
+        return response([
+            'data' => $order
+        ]);
+    }
+
     public function fetch(OrderFetch $request)
     {
         $current = $request->input('current') ? $request->input('current') : 1;

+ 1 - 0
app/Http/Routes/AdminRoute.php

@@ -68,6 +68,7 @@ class AdminRoute
             $router->post('/order/assign', 'Admin\\OrderController@assign');
             $router->post('/order/paid', 'Admin\\OrderController@paid');
             $router->post('/order/cancel', 'Admin\\OrderController@cancel');
+            $router->post('/order/detail', 'Admin\\OrderController@detail');
             // User
             $router->get ('/user/fetch', 'Admin\\UserController@fetch');
             $router->post('/user/update', 'Admin\\UserController@update');

File diff suppressed because it is too large
+ 0 - 0
public/assets/admin/umi.js


Some files were not shown because too many files changed in this diff