diff --git a/app/Livewire/Tables/RoomStatusLogTable.php b/app/Livewire/Tables/RoomStatusLogTable.php index 4252e8c..4b2fa91 100644 --- a/app/Livewire/Tables/RoomStatusLogTable.php +++ b/app/Livewire/Tables/RoomStatusLogTable.php @@ -2,7 +2,9 @@ namespace App\Livewire\Tables; +use App\Models\Branch; use App\Models\RoomStatusLog; +use App\Enums\RoomType; use Illuminate\Support\Carbon; use Illuminate\Database\Eloquent\Builder; use PowerComponents\LivewirePowerGrid\Button; @@ -42,6 +44,7 @@ final class RoomStatusLogTable extends PowerGridComponent public function relationSearch(): array { + dd('in'); return [ 'branch' => ['name'], 'room' => ['name'], @@ -56,8 +59,11 @@ final class RoomStatusLogTable extends PowerGridComponent ->add('branch_name', function (RoomStatusLog $model) { return $model->branch?->name; }) + ->add('room_type', function (RoomStatusLog $model) { + return $model->room?->type->labelPowergridFilter(); + }) ->add('room_name', function (RoomStatusLog $model) { - return $model->room?->type->labelPowergridFilter().$model->room?->name; + return $model->room?->name; }) ->add('user_name', function (RoomStatusLog $model){ return $model->user?->name; @@ -83,7 +89,8 @@ final class RoomStatusLogTable extends PowerGridComponent $column=[]; $column[]=Column::make(__('room-status-log.id'), 'id'); $column[]=Column::make(__('room-status-log.branch'), 'branch_name'); - $column[]=Column::make(__('room-status-log.room'), 'room_name'); + $column[]=Column::make(__('room-status-log.room_type'), 'room_type'); + $column[]=Column::make(__('room-status-log.room_name'), 'room_name'); $column[]=Column::make(__('room-status-log.user'), 'user_name'); $column[]=Column::make(__('room-status-log.is_online'), 'is_online_img')->template(); $column[]=Column::make(__('room-status-log.status'), 'status_str'); @@ -108,8 +115,21 @@ final class RoomStatusLogTable extends PowerGridComponent public function filters(): array { + $branches = Branch::query()->orderBy('name')->get()->map(fn($branch) => (object)[ + 'value' => $branch->id, + 'label' => $branch->name, + ]); + //dd($branches); return [ - + Filter::enumSelect('branch_name','branch_id') + ->datasource($branches) + ->optionLabel('label'), + Filter::inputText('room_type') + ->placeholder('輸入"pc","svr"') + ->filterRelation('room','type'), + Filter::inputText('room_name') + ->placeholder('輸入包廂名稱') + ->filterRelation('room','name') ]; } } diff --git a/app/Livewire/Tables/SongTable.php b/app/Livewire/Tables/SongTable.php index 2028f0f..77e92d4 100644 --- a/app/Livewire/Tables/SongTable.php +++ b/app/Livewire/Tables/SongTable.php @@ -183,9 +183,15 @@ final class SongTable extends PowerGridComponent Filter::number('strokes_abbr'), Filter::inputText('filename')->placeholder(__('songs.filename')), Filter::datepicker('adddate'), + Filter::inputText('song_artists')->placeholder(__('songs.artists')) + ->filterRelation('artists','name'), Filter::enumSelect('language_type_str','songs.language_type') ->datasource(SongLanguageType::cases()) ->optionLabel('songs.language_type'), + Filter::enumSelect('situation_str','songs.situation') + ->datasource(SongSituation::cases()) + ->optionLabel('songs.situation') + ->filterRelation('songs','situation'), Filter::inputText('copyright01')->placeholder(__('songs.copyright01')), Filter::inputText('copyright02')->placeholder(__('songs.copyright02')), Filter::inputText('note01')->placeholder(__('songs.note01')), diff --git a/app/Models/Room.php b/app/Models/Room.php index 68b7f24..80ad07b 100644 --- a/app/Models/Room.php +++ b/app/Models/Room.php @@ -85,6 +85,9 @@ class Room extends Model public function branch() { return $this->belongsTo(Branch::class); } + public function full_name(){ + return $this->type->labelPowergridFilter().$this->name; + } public function statusLogs() { return $this->hasMany(RoomStatusLog::class); diff --git a/resources/lang/zh-tw/room-status-log.php b/resources/lang/zh-tw/room-status-log.php index 976e12a..b875073 100644 --- a/resources/lang/zh-tw/room-status-log.php +++ b/resources/lang/zh-tw/room-status-log.php @@ -6,6 +6,8 @@ return [ 'id' => '編號', 'branch' => '分店', 'room' => '包廂', + 'room_type' => '包廂類別', + 'room_name' => '包廂名稱', 'user' => '操成者', 'is_online' => '在線?', 'status' => '狀態', diff --git a/開發手冊.ini b/開發手冊.ini index b311b6b..cb91f40 100644 --- a/開發手冊.ini +++ b/開發手冊.ini @@ -153,4 +153,19 @@ IP 1F;svr01,svr02 1F;pc101,pc102,pc103,pc104,pc105,pc106,pc108 2F;pc201,pc202,pc203,pc205 -9F;pc901,pc902,pc903,pc910 \ No newline at end of file +9F;pc901,pc902,pc903,pc910 + +php artisan db:seed --class=SongCategorySeeder +php artisan db:seed --class=TextAdPermissionSeeder +php artisan db:seed --class=FavoriteSongsSeeder +php artisan db:seed --class=TextAdSeeder +php artisan db:seed --class=BroadcastTemplateSeeder + +測試1 +測試2 +測試3 +https://ctl.ktv.test/ +1樓;pc101,pc102,pc103,pc104,pc105,pc106,pc107,pc108,pc109,pc110 +2樓;pc201,pc202,pc203,pc204,pc205,pc206,pc207,pc208,pc209,pc210 +3樓;pc301,pc302,pc303,pc304,pc305,pc306,pc307,pc308,pc309,pc310 +4樓;pc401,pc402,pc403,pc404,pc405,pc406,pc407,pc408,pc409,pc410 \ No newline at end of file