hrjy 2 سال پیش
والد
کامیت
75b91ca16c

+ 3 - 3
app/api/controller/auction/AuctionProductController.php

@@ -82,8 +82,8 @@ class AuctionProductController
             ['product_id'],
         ]);
         if (!$data['product_id']) return app('json')->fail('数据传入错误');
-
-        $product = AuctionProduct::where('id', $data['product_id'])->find();
+        AuctionOrder::beginTrans();
+        $product = AuctionProduct::where('id', $data['product_id'])->lock(true)->find();
         if ($product['is_show'] == 0) return app('json')->fail('商品未挂售');
         $auction  = Auction::where('id', $product['auction_id'])->find();
         $user = $request->user();
@@ -109,7 +109,6 @@ class AuctionProductController
 
         if ($product['uid'] == $request->uid()) return app('json')->fail('无法购买自己商品');
         if ($product){
-            AuctionOrder::beginTrans();
             //查询商品是否以卖出
             $order = AuctionOrder::where('product_id', $data['product_id'])->where('status', '>', 0)->where('auction_id', $auction['id'])->where('frequency', $auction['frequency'])->find();
             if ($order){
@@ -379,6 +378,7 @@ class AuctionProductController
         if (($money+$product['hanging_price']) > (float)$max) return app('json')->fail('今天挂售金额已超出上限');
 
         $datas = AuctionProduct::bs($data['id']);// 获取挂售详情
+        if($datas == false) return app('json')->fail('计算错误,请重新挂售');
         if ($user['anticipate'] < $datas['anticipate']) return app('json')->fail('预约券不足');
         $product['price'] = $product['hanging_price'];
         $product['hanging_price'] = $datas['hanging_price']; // 商品变为挂售价格

+ 1 - 0
app/models/auction/AuctionProduct.php

@@ -165,6 +165,7 @@ class AuctionProduct extends BaseModel
 
         $data['price'] = $product['hanging_price'];
         $data['hanging_price'] = ($product['hanging_price'] + ($hanging_price * $bs));
+        if($data['hanging_price'] < $product['hanging_price']) return false;
         $data['anticipate'] = round($anticipate*$bs,2);
         $data['give'] = round($give*$bs,2);
 

+ 1 - 3
app/models/user/UserBill.php

@@ -132,9 +132,7 @@ class UserBill extends BaseModel
                 $data['zj'][] = $v;
             }
             if ($v['pm'] == 0){
-                if ($v['type'] != 'dec_anticipate'){
-                    $data['zc'] += $v['number'];
-                }
+                $data['zc'] += $v['number'];
                 $data['kc'][] = $v;
             }