$drawActivity->id, 'user_id' => $user->id, ])->first(); if ($drawTicket === null || $drawTicket->number + $number < 0) { throw new BizException('抽奖次数不足'); } } else { $drawTicket = DrawTicket::firstOrCreate([ 'draw_activity_id' => $drawActivity->id, 'user_id' => $user->id, ], [ 'number' => 0, ]); } $drawTicket->increment('number', $number); DrawTicketLog::create([ 'draw_activity_id' => $drawActivity->id, 'user_id' => $user->id, 'number' => $number, 'remark' => $remark, ]); } }