添加withcount

main
liutk 2024-05-18 14:10:24 +08:00
parent 86469f0f83
commit 894bcaa534
3 changed files with 9 additions and 1 deletions

View File

@ -46,7 +46,7 @@ class ActivityController extends AdminController
"2"=>"<span class='label label-success'>已结束</span>", "2"=>"<span class='label label-success'>已结束</span>",
"*"=> '其他:${gender}' "*"=> '其他:${gender}'
]), ]),
amis()->TableColumn('user_count', __('admin.activities.user_count')), amis()->TableColumn('logs_count', __('admin.activities.user_count')),
amis()->TableColumn('start_at', __('admin.activities.start_at')), amis()->TableColumn('start_at', __('admin.activities.start_at')),
amis()->TableColumn('end_at', __('admin.activities.end_at')), amis()->TableColumn('end_at', __('admin.activities.end_at')),

View File

@ -21,6 +21,8 @@ class ActivityService extends BaseService
protected bool $modelSortAble = true; protected bool $modelSortAble = true;
protected array $withRelationshipsCount = ['logs'];
public function store($data): bool public function store($data): bool
{ {
$columns = $this->getTableColumns(); $columns = $this->getTableColumns();

View File

@ -10,6 +10,8 @@ use Slowlyo\OwlAdmin\Services\AdminService;
*/ */
class BaseService extends AdminService class BaseService extends AdminService
{ {
protected array $withRelationshipsCount = [];
protected array $withRelationships = []; protected array $withRelationships = [];
protected string $modelFilterName = ''; protected string $modelFilterName = '';
@ -38,6 +40,10 @@ class BaseService extends AdminService
$query->with($this->withRelationships); $query->with($this->withRelationships);
} }
if($this->withRelationshipsCount){
$query->withCount($this->withRelationshipsCount);
}
if ($filter) { if ($filter) {
$query->filter(request()->input(), $filter); $query->filter(request()->input(), $filter);
} }