mirror of
https://github.com/ericasch6/scrum-poker-internal.git
synced 2026-10-13 17:12:08 +00:00
feat: some fixes to the ui, imlemented user and guest user, ans used the dahboard
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Models\Room;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Queue\Queueable;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class CloseInactiveRooms implements ShouldQueue
|
||||
{
|
||||
use Queueable;
|
||||
|
||||
public function handle(): void
|
||||
{
|
||||
$closedAt = now();
|
||||
$guestCutoff = $closedAt->subDays(config('rooms.guest_retention_days'));
|
||||
$accountCutoff = $closedAt->subDays(config('rooms.account_retention_days'));
|
||||
|
||||
Room::query()
|
||||
->whereNull('closed_at')
|
||||
->where(function ($query) use ($guestCutoff, $accountCutoff): void {
|
||||
$query
|
||||
->where(function ($query) use ($guestCutoff): void {
|
||||
$query->whereNull('owner_id')
|
||||
->where('last_activity_at', '<=', $guestCutoff);
|
||||
})
|
||||
->orWhere(function ($query) use ($accountCutoff): void {
|
||||
$query->whereNotNull('owner_id')
|
||||
->where('last_activity_at', '<=', $accountCutoff);
|
||||
});
|
||||
})
|
||||
->select('id')
|
||||
->chunkById(100, function ($rooms) use ($closedAt, $guestCutoff, $accountCutoff): void {
|
||||
Room::query()
|
||||
->whereKey($rooms->pluck('id'))
|
||||
->whereNull('closed_at')
|
||||
->where(function ($query) use ($guestCutoff, $accountCutoff): void {
|
||||
$query
|
||||
->where(function ($query) use ($guestCutoff): void {
|
||||
$query->whereNull('owner_id')
|
||||
->where('last_activity_at', '<=', $guestCutoff);
|
||||
})
|
||||
->orWhere(function ($query) use ($accountCutoff): void {
|
||||
$query->whereNotNull('owner_id')
|
||||
->where('last_activity_at', '<=', $accountCutoff);
|
||||
});
|
||||
})
|
||||
->update([
|
||||
'closed_at' => $closedAt,
|
||||
'state_version' => DB::raw('state_version + 1'),
|
||||
'updated_at' => $closedAt,
|
||||
]);
|
||||
}, 'id');
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user