model()->where('device_id', '=', $device_id); $grid->tableCollapse(false); $grid->withBorder(); $grid->column('id'); $grid->column('part.category.name'); $grid->column('part.asset_number')->link(function () { if (!empty($this->part)) { return admin_route('part.records.show', [$this->part['id']]); } }); $grid->column('part.specification'); $grid->column('part.sn'); $grid->column('part.vendor.name'); $grid->disableToolbar(); $grid->disableBatchActions(); $grid->disableRowSelector(); $grid->disableActions(); }); $result['part'] = $grid; // 软件 $grid = Grid::make(new SoftwareTrack(['software', 'software.category', 'software.vendor']), function (Grid $grid) use ($device_id) { $grid->model()->where('device_id', '=', $device_id); $grid->tableCollapse(false); $grid->withBorder(); $grid->column('id'); $grid->column('software.category.name'); $grid->column('software.name')->link(function () { if (!empty($this->software)) { return admin_route('software.records.show', [$this->software['id']]); } }); $grid->column('software.version'); $grid->column('software.distribution')->using(Data::distribution()); $grid->column('software.vendor.name'); $grid->disableToolbar(); $grid->disableBatchActions(); $grid->disableRowSelector(); $grid->disableActions(); }); $result['software'] = $grid; // 服务 $grid = Grid::make(new ServiceTrack(['service']), function (Grid $grid) use ($device_id) { $grid->model()->where('device_id', '=', $device_id); $grid->tableCollapse(false); $grid->withBorder(); $grid->column('id'); $grid->column('service.name')->link(function () { if (!empty($this->service)) { return admin_route('service.records.show', [$this->service['id']]); } }); $grid->disableToolbar(); $grid->disableBatchActions(); $grid->disableRowSelector(); $grid->disableActions(); }); $result['service'] = $grid; return $result; } }