Răsfoiți Sursa

开单统计

shish 4 ani în urmă
părinte
comite
3f80eec6ff

+ 3 - 0
biz-ghs/order/services/OrderService.php

@@ -6,6 +6,7 @@ use biz\ghs\classes\GhsClass;
 use biz\shop\classes\ShopAdminClass;
 use biz\shop\classes\ShopCapitalClass;
 use biz\shop\classes\ShopClass;
+use biz\stat\classes\StatKdClass;
 use biz\stat\classes\StatSaleClass;
 use biz\wx\classes\WxMessageClass;
 use bizGhs\base\services\BaseService;
@@ -642,6 +643,8 @@ class OrderService extends BaseService
 
         //收入统计
         StatIncomeClass::updateOrInsert($shop, $amount);
+        //开单收入统计
+        StatKdClass::replace($shop, $amount, $payWay);
         //今日订单+1
         StatOrderClass::updateOrInsert($shop);
         //销售统计

+ 32 - 2
biz/stat/classes/StatKdMonthClass.php

@@ -4,6 +4,7 @@ namespace biz\stat\classes;
 
 use biz\base\classes\BaseClass;
 use biz\stat\models\StatCg;
+use common\components\dict;
 use common\components\util;
 
 class StatKdMonthClass extends BaseClass
@@ -26,9 +27,9 @@ class StatKdMonthClass extends BaseClass
         }
         $sjId = $shop->sjId ?? 0;
         $shopId = $shop->id ?? 0;
-        $stat = self::getByCondition(['sjId' => $sjId, 'shopId' => $shopId,  'time' => $time], true);
+        $stat = self::getByCondition(['sjId' => $sjId, 'shopId' => $shopId, 'time' => $time], true);
         if (empty($stat)) {
-            $stat = self::add(['shopId' => $shopId, 'sjId' => $sjId,'time' => $time, 'year' => $year, 'month' => $month], true);
+            $stat = self::add(['shopId' => $shopId, 'sjId' => $sjId, 'time' => $time, 'year' => $year, 'month' => $month], true);
         }
         $id = $stat->id;
         $unique = self::getLockById($id);
@@ -36,6 +37,35 @@ class StatKdMonthClass extends BaseClass
         $currentAmount = bcadd($unique->amount, $amount, 2);
         $unique->amount = $currentAmount;
 
+        $payWayMap = dict::getDict('payWay');
+        switch ($payWay) {
+            case $payWayMap['wxPay']:
+                $currentWx = bcadd($unique->wx, $amount, 2);
+                $unique->wx = $currentWx;
+                break;
+            case $payWayMap['alipay']:
+                $currentAliPay = bcadd($unique->alipay, $amount, 2);
+                $unique->alipay = $currentAliPay;
+                break;
+            case $payWayMap['balancePay']:
+                $currentBalance = bcadd($unique->balance, $amount, 2);
+                $unique->balance = $currentBalance;
+                break;
+            case $payWayMap['debtPay']:
+                $currentDebt = bcadd($unique->debt, $amount, 2);
+                $unique->debt = $currentDebt;
+                break;
+            case $payWayMap['cash']:
+                $currentCash = bcadd($unique->cash, $amount, 2);
+                $unique->cash = $currentCash;
+                break;
+            case $payWayMap['bankCard']:
+                $currentBank = bcadd($unique->bank, $amount, 2);
+                $unique->bank = $currentBank;
+                break;
+            default:
+        }
+
         $unique->save();
     }