|
|
@@ -75,6 +75,23 @@ class AuctionController
|
|
|
if (AuctionBooking::where([['uid', '=', $request->uid()], ['auction_id' , '=', $auction['id']], ['frequency', '=', $auction['frequency']]])->find()){
|
|
|
return app('json')->fail('当前场馆已预约');
|
|
|
}
|
|
|
+
|
|
|
+ $product = AuctionProduct::alias('a')
|
|
|
+ ->field('a.*')
|
|
|
+ ->where([['a.uid', '<>', $request->uid()], ['a.is_show', '=', 1], ['b.add_time', '<=', strtotime('today')], ['a.auction_id', '=', $data['id']], ['succeed_time', '<', strtotime('today')]])
|
|
|
+ ->leftJoin('auction_time b', 'a.id = b.product_id')
|
|
|
+ ->limit(1)
|
|
|
+ ->orderRaw('rand()')
|
|
|
+ ->select();
|
|
|
+ if (count($product) == 0) {
|
|
|
+ $product = AuctionProduct::where([['uid', '<>', $request->uid()], ['is_admin', '=', 1],['is_show', '=', 1], ['auction_id', '=', $data['id']], ['succeed_time', '<', strtotime('today')]])
|
|
|
+ ->limit(1)
|
|
|
+ ->orderRaw('rand()')
|
|
|
+ ->select();
|
|
|
+ if (count($product) == 0) {
|
|
|
+ return app('json')->fail('商品已认购完');
|
|
|
+ }
|
|
|
+ }
|
|
|
cache($request->uid(), 1, 5);
|
|
|
$userModel = new User();
|
|
|
$user = User::where('uid', $request->uid())->find();
|
|
|
@@ -82,9 +99,20 @@ class AuctionController
|
|
|
if ($user['anticipate'] < $auction['anticipate']) return app('json')->fail('易趣卷不足');
|
|
|
$user['anticipate'] = $user['anticipate'] - $auction['anticipate'];// 扣除预约卷
|
|
|
|
|
|
-
|
|
|
$res = $user->save();
|
|
|
if ($res){
|
|
|
+ AuctionOrder::create([
|
|
|
+ 'uid' => $request->uid(),
|
|
|
+ 'collection_id' => $product[0]['uid'],// 商品拥有有人
|
|
|
+ 'order_id' => getNewOrderId(),
|
|
|
+ 'name' => $product[0]['name'],
|
|
|
+ 'product_id' => $product[0]['id'],
|
|
|
+ 'auction_id' => $auction['id'],
|
|
|
+ 'image'=> $product[0]['image'],
|
|
|
+ 'price' => $product[0]['hanging_price'],
|
|
|
+ 'frequency' => $auction['frequency']
|
|
|
+ ]);
|
|
|
+ AuctionProduct::where('id', $product[0]['id'])->update(['succeed_time' => strtotime('today')]);
|
|
|
AuctionBooking::booking($user['uid'], $auction);
|
|
|
UserBill::expend('预约场馆', $user['uid'], 'anticipate','reduce_anticipate', $auction['anticipate'], 0, $user['anticipate'], '预约扣除易趣卷'); // 写入记录
|
|
|
|