Browse Source

经营概况

shish 5 years ago
parent
commit
292cb902ed

+ 23 - 28
app-ghs/controllers/MainController.php

@@ -3,6 +3,7 @@
 namespace ghs\controllers;
 
 use biz\shop\classes\ShopClass;
+use biz\stat\classes\StatCgClass;
 use bizGhs\order\classes\PurchaseOrderClass;
 use bizGhs\product\classes\ProductClass;
 use bizHd\stat\classes\StatIncomeClass;
@@ -68,7 +69,7 @@ class MainController extends BaseController
         //余额
         $shopInfo = ShopClass::getById($this->shopId);
         //库存情况
-        $stockInfo = ProductClass::getProductStockByShopId($this->sjId,$this->shopId);
+        $stockInfo = ProductClass::getProductStockByShopId($this->sjId, $this->shopId);
         //今日销售金额
         $today = StatIncomeClass::getAmountToday($this->shopId);
         //近七天销售金额
@@ -95,7 +96,7 @@ class MainController extends BaseController
         //今日订单数
         $saleNum = StatOrderClass::getRiseNumToday($this->shopId);
         //今日销售金额
-        $saleAmount =$today;
+        $saleAmount = $today;
 
         //昨日订单数
         $ySaleNum = StatOrderClass::getRiseNumYesterday($this->shopId);
@@ -108,27 +109,21 @@ class MainController extends BaseController
         //7天销售金额
         $sevenSaleAmount = $latestSeven;
         //30天订单数
-        $thirtySaleNum =  StatOrderClass::getRiseNumThirty($this->shopId);
+        $thirtySaleNum = StatOrderClass::getRiseNumThirty($this->shopId);
         //30天销售金额
         $thirtySaleAmount = $latestThirty;
 
+        //今日采购
+        $todayCg = StatCgClass::getTodayCg($this->shop);
 
-        //采购相关信息
-        //今日采购数
-        //今日采购金额
-        $todayPurchaseStat = PurchaseOrderClass::statOrderInfo($this->shopId,"today");
+        //昨日采购
+        $yesCg = StatCgClass::getYesterdayCg($this->shop);
 
-        //昨日采购数
-        //昨日采购金额
-        $yesterdayPurchaseStat = PurchaseOrderClass::statOrderInfo($this->shopId,"yesterday");
+        //7日采购
+        $sevenCg = StatCgClass::getSevenCg($this->shop);
 
-        //7日采购数
-        //7日采购金额
-        $sevendayPurchaseStat = PurchaseOrderClass::statOrderInfo($this->shopId,"seven");
-
-        //30日采购数
-        //30日采购金额
-        $thirtydayPurchaseStat = PurchaseOrderClass::statOrderInfo($this->shopId,"thirty");
+        //30日采购
+        $thirtyCg = StatCgClass::getThirtyCg($this->shop);
 
         $more = [
             'today' => [
@@ -136,32 +131,32 @@ class MainController extends BaseController
                 'expend' => 0,
                 'saleNum' => $saleNum,
                 'saleAmount' => $saleAmount,
-                'purchaseNum' => $todayPurchaseStat['totalNum'],
-                'purchaseAmount' => $todayPurchaseStat['totalAmount'],
+                'purchaseNum' => $todayCg['num'] ?? 0,
+                'purchaseAmount' => $todayCg['amount'] ?? 0.00,
             ],
             'yesterday' => [
                 'income' => 0,
                 'expend' => 0,
                 'saleNum' => $ySaleNum,
                 'saleAmount' => $ySaleAmount,
-                'purchaseNum' => $yesterdayPurchaseStat['totalNum'],
-                'purchaseAmount' => $yesterdayPurchaseStat['totalAmount'],
+                'purchaseNum' => $yesCg['num'] ?? 0,
+                'purchaseAmount' => $yesCg['amount'] ?? 0.00,
             ],
             'latestSeven' => [
                 'income' => 0,
                 'expend' => 0,
                 'saleNum' => $sevenSaleNum,
                 'saleAmount' => $sevenSaleAmount,
-                'purchaseNum' => $sevendayPurchaseStat['totalNum'],
-                'purchaseAmount' => $sevendayPurchaseStat['totalAmount'],
+                'purchaseNum' => $sevenCg['num'] ?? 0,
+                'purchaseAmount' => $sevenCg['amount'] ?? 0.00,
             ],
             'latestThirty' => [
                 'income' => 0,
                 'expend' => 0,
                 'saleNum' => $thirtySaleNum,
                 'saleAmount' => $thirtySaleAmount,
-                'purchaseNum' => $thirtydayPurchaseStat['totalNum'],
-                'purchaseAmount' => $thirtydayPurchaseStat['totalAmount'],
+                'purchaseNum' => $thirtyCg['num'] ?? 0,
+                'purchaseAmount' => $thirtyCg['amount'] ?? 0.00,
             ],
         ];
         util::success(['base' => $base, 'more' => $more]);
@@ -173,10 +168,10 @@ class MainController extends BaseController
         $shop = $this->shop;
         $balance = $shop->balance ?? 0.00;
         $txBalance = $shop->txBalance ?? 0.00;
-        $sj = $this->sj->attributes;
+        $sj = isset($this->sj) && !empty($this->sj) ? $this->sj->attributes : [];
         $shopImg = $shop->avatar ?? '';
         $deadline = $sj['deadline'] ?? '';
-        $relation = $this->shopAdmin->attributes;
+        $relation = isset($this->shopAdmin) && !empty($this->shopAdmin) ? $this->shopAdmin->attributes : [];
         $adminName = $relation['name'];
         $shopAdminId = $relation['id'];
         $mobile = $relation['mobile'] ?? '';
@@ -195,7 +190,7 @@ class MainController extends BaseController
             'cashAccount' => $cashAccount,
             'shopAdminId' => $shopAdminId,
             'shopId' => $this->shopId,
-            'sjId'=>$this->sjId,
+            'sjId' => $this->sjId,
         ];
         util::success($data);
     }

+ 19 - 59
app-hd/controllers/MainController.php

@@ -2,6 +2,7 @@
 
 namespace hd\controllers;
 
+use biz\stat\classes\StatCgClass;
 use bizHd\purchase\classes\PurchaseClass;
 use GatewayClient\Gateway;
 use bizHd\ad\services\AdService;
@@ -162,58 +163,17 @@ class MainController extends BaseController
         //30天销售金额
         $thirtySaleAmount = $latestThirty;
 
+        //今日采购
+        $todayCg = StatCgClass::getTodayCg($this->shop);
 
-        //采购相关信息
-        //今日采购数
-        //今日采购金额
-        $todayPurchaseStat = PurchaseClass::statOrderInfo($this->shopId, "today");
-
-        //昨日采购数
-        //昨日采购金额
-        $yesterdayPurchaseStat = PurchaseClass::statOrderInfo($this->shopId, "yesterday");
-
-        //7日采购数
-        //7日采购金额
-        $sevendayPurchaseStat = PurchaseClass::statOrderInfo($this->shopId, "seven");
-
-        //30日采购数
-        //30日采购金额
-        $thirtydayPurchaseStat = PurchaseClass::statOrderInfo($this->shopId, "thirty");
-//
-//        $more = [
-//            'today' => [
-//                'income' => 10,
-//                'expend' => 2,
-//                'saleNum' => 1,
-//                'saleAmount' => 100,
-//                'purchaseNum' => 2,
-//                'purchaseAmount' => 3,
-//            ],
-//            'yesterday' => [
-//                'income' => 10,
-//                'expend' => 2,
-//                'saleNum' => 1,
-//                'saleAmount' => 100,
-//                'purchaseNum' => 2,
-//                'purchaseAmount' => 3,
-//            ],
-//            'latestSeven' => [
-//                'income' => 10,
-//                'expend' => 2,
-//                'saleNum' => 1,
-//                'saleAmount' => 100,
-//                'purchaseNum' => 2,
-//                'purchaseAmount' => 3,
-//            ],
-//            'latestThirty' => [
-//                'income' => 10,
-//                'expend' => 2,
-//                'saleNum' => 1,
-//                'saleAmount' => 100,
-//                'purchaseNum' => 2,
-//                'purchaseAmount' => 3,
-//            ],
-//        ];
+        //昨日采购
+        $yesCg = StatCgClass::getYesterdayCg($this->shop);
+
+        //7日采购
+        $sevenCg = StatCgClass::getSevenCg($this->shop);
+
+        //30日采购
+        $thirtyCg = StatCgClass::getThirtyCg($this->shop);
 
         $more = [
             'today' => [
@@ -221,32 +181,32 @@ class MainController extends BaseController
                 'expend' => 0,
                 'saleNum' => $saleNum,
                 'saleAmount' => $saleAmount,
-                'purchaseNum' => $todayPurchaseStat['totalNum'],
-                'purchaseAmount' => $todayPurchaseStat['totalAmount'],
+                'purchaseNum' => $todayCg['num'] ?? 0,
+                'purchaseAmount' => $todayCg['amount'] ?? 0.00,
             ],
             'yesterday' => [
                 'income' => 0,
                 'expend' => 0,
                 'saleNum' => $ySaleNum,
                 'saleAmount' => $ySaleAmount,
-                'purchaseNum' => $yesterdayPurchaseStat['totalNum'],
-                'purchaseAmount' => $yesterdayPurchaseStat['totalAmount'],
+                'purchaseNum' => $yesCg['num'] ?? 0,
+                'purchaseAmount' => $yesCg['amount'] ?? 0.00,
             ],
             'latestSeven' => [
                 'income' => 0,
                 'expend' => 0,
                 'saleNum' => $sevenSaleNum,
                 'saleAmount' => $sevenSaleAmount,
-                'purchaseNum' => $sevendayPurchaseStat['totalNum'],
-                'purchaseAmount' => $sevendayPurchaseStat['totalAmount'],
+                'purchaseNum' => $sevenCg['num'] ?? 0,
+                'purchaseAmount' => $sevenCg['amount'] ?? 0.00,
             ],
             'latestThirty' => [
                 'income' => 0,
                 'expend' => 0,
                 'saleNum' => $thirtySaleNum,
                 'saleAmount' => $thirtySaleAmount,
-                'purchaseNum' => $thirtydayPurchaseStat['totalNum'],
-                'purchaseAmount' => $thirtydayPurchaseStat['totalAmount'],
+                'purchaseNum' => $thirtyCg['num'] ?? 0,
+                'purchaseAmount' => $thirtyCg['amount'] ?? 0.00,
             ],
         ];
         util::success(['base' => $base, 'more' => $more]);

+ 2 - 1
biz-hd/stat/classes/StatOrderClass.php

@@ -86,9 +86,10 @@ class StatOrderClass extends BaseClass
         $riseNum = 0;
         if ($res) {
             foreach ($res as $v) {
-                $riseNum = bcadd($riseNum, $v['riseNum'], 2);
+                $riseNum = bcadd($riseNum, $v['riseNum'], 0);
             }
         }
         return $riseNum;
     }
+
 }

+ 58 - 0
biz/stat/classes/StatCgClass.php

@@ -34,4 +34,62 @@ class StatCgClass extends BaseClass
         StatCgMonthClass::replace($shop, $amount);
     }
 
+    //今日采购
+    public static function getTodayCg($shop)
+    {
+        $start = date('Ymd');
+        $end = date("Ymd");
+        $shopId = $shop->id;
+        $sjId = $shop->sjId;
+        return self::getByTime($sjId, $shopId, $start, $end);
+    }
+
+    //昨日采购
+    public static function getYesterdayCg($shop)
+    {
+        $start = date('Ymd', strtotime("-1 days"));
+        $end = date('Ymd', strtotime("-1 days"));
+        $shopId = $shop->id;
+        $sjId = $shop->sjId;
+        return self::getByTime($sjId, $shopId, $start, $end);
+    }
+
+    //7日采购
+    public static function getSevenCg($shop)
+    {
+        $end = date('Ymd');
+        $start = date('Ymd', strtotime("-6 days"));
+        $shopId = $shop->id;
+        $sjId = $shop->sjId;
+        return self::getByTime($sjId, $shopId, $start, $end);
+    }
+
+    //30日采购
+    public static function getThirtyCg($shop)
+    {
+        $end = date('Ymd');
+        $start = date('Ymd', strtotime("-29 days"));
+        $shopId = $shop->id;
+        $sjId = $shop->sjId;
+        return self::getByTime($sjId, $shopId, $start, $end);
+    }
+
+    public static function getByTime($sjId, $shopId, $start, $end)
+    {
+        $where = [];
+        $where['sjId'] = $sjId;
+        $where['shopId'] = $shopId;
+        $where['time'] = ['between', [$start, $end]];
+        $res = self::getAllByCondition($where, null, "num,amount");
+        $num = 0;
+        $amount = 0;
+        if ($res) {
+            foreach ($res as $v) {
+                $num += $v['num'];
+                $amount = bcadd($v['amount'], $amount, 2);
+            }
+        }
+        return ['num' => $num, 'amount' => $amount];
+    }
+
 }