sunhao 5 years ago
parent
commit
37d051704e

+ 8 - 0
app/GoodsSkus.php

@@ -13,5 +13,13 @@ class GoodsSkus extends Model
13 13
 {
14 14
     public $timestamps = false;
15 15
     protected $table = "goods_skus";
16
+
17
+    public static function actualQuantity($sku_id){
18
+    	//计算实际库存 -还未到卖家云的量
19
+    	$sku_quantity = GoodsSkus::where('id', $sku_id)->pluck('quantity');
20
+        $w_num = OrderGoodsSkus::where('sku_id', $sku_id)->where('is_del',0)->where('mj_status',0)->sum('num');
21
+        $quantity = $sku_quantity - $w_num;
22
+        return $quantity;
23
+    }
16 24
    
17 25
 }

+ 3 - 0
app/Http/Controllers/Admin/GoodsController.php

@@ -61,6 +61,9 @@ class GoodsController extends Controller
61 61
         foreach($result as $k=>&$v){
62 62
             # 获取sku
63 63
             $skuList = GoodsSkus::where('goodsCode', $v['id'])->where('is_del', 0)->get();
64
+            foreach($skuList as $k=>&$item){
65
+                $item->quantity = GoodsSkus::actualQuantity($item->id);
66
+            }
64 67
             $v['sku_list'] = $skuList;            
65 68
         }
66 69
 

+ 3 - 6
app/Http/Controllers/Admin/OrderController.php

@@ -499,8 +499,7 @@ class OrderController extends Controller
499 499
             })->first();
500 500
             if(empty($sku)) continue;
501 501
             //计算实际库存 -还未到卖家云的量
502
-            $w_num = DB::table('order_goods_skus')->where('sku_id', $v['sku_id'])->where('is_del',0)->where('mj_status',0)->sum('num');
503
-            $quantity = $sku->quantity - $w_num;
502
+            $quantity = GoodsSkus::actualQuantity($v['sku_id']);
504 503
             if($quantity<=0){
505 504
                 continue;
506 505
             }
@@ -870,8 +869,7 @@ class OrderController extends Controller
870 869
             foreach($goods as $k=>&$v){
871 870
                 $v['num'] = $order_skus[$v['sku_id']];
872 871
                 //计算实际库存 -还未到卖家云的量
873
-                $w_num = DB::table('order_goods_skus')->where('sku_id', $v['sku_id'])->where('is_del',0)->where('order_id','!=',$id)->where('mj_status',0)->sum('num');
874
-                $v['quantity'] = $v['quantity'] - $w_num;
872
+                $v['quantity'] = GoodsSkus::actualQuantity($v['sku_id']);
875 873
             }
876 874
             $order['goods'] = $goods;
877 875
         }
@@ -896,8 +894,7 @@ class OrderController extends Controller
896 894
             })->first();
897 895
             if(empty($sku)) continue;
898 896
             //计算实际库存 -还未到卖家云的量
899
-            $w_num = DB::table('order_goods_skus')->where('sku_id', $val['sku_id'])->where('is_del',0)->where('mj_status',0)->sum('num');
900
-            $quantity = $sku->quantity - $w_num;
897
+            $quantity = GoodsSkus::actualQuantity($val['sku_id']);
901 898
             if($quantity<=0){
902 899
                 continue;
903 900
             }