public static function cronYouCheater() { $date = Tools::getNow(false); $now = $date->format('Y-m-d H:i:s'); $date->modify('-2 days'); $end = $date->format('Y-m-dH:i:s'); $auction = Auction::join('event_items', function ($q) { $q->on('event_items.e_id', '=', 'auctions.e_id'); })->where('event_items.e_end_at', '<', $end)->where(function ($q) { $q->where('auctions.a_status', '=', 2)->orWhere('auctions.a_status', '=', 1); })->first(); if (empty($auction)) { throw new Exception("没有需要处理的竞拍", 2000); } if ($auction->a_status == 2 && $auction->a_win_id) { $win = AuctionBid::find($auction->a_win_id); if (!empty($win)) { $date->modify('+10 days'); $end = $date->format('Y-m-d H:i:s'); $blacklist = new AuctionBlacklist(); $blacklist->u_id = $win->u_id; $blacklist->a_id = $auction->a_id; $blacklist->start_at = $now; $blacklist->end_at = $end; $blacklist->remart = '超时未购买'; $blacklist->save(); } } $auction->a_status = 4; $auction->save(); return true; }