添加详情页变动明细

main
vine_liutk 2024-02-23 16:32:22 +08:00
parent 41f4241308
commit b4d06b89fa
3 changed files with 21 additions and 1 deletions

View File

@ -9,6 +9,7 @@ use Slowlyo\OwlAdmin\Controllers\AdminController;
use App\Services\Admin\PersonService; use App\Services\Admin\PersonService;
use App\Traits\CustomActionTrait; use App\Traits\CustomActionTrait;
use App\Models\Keyword; use App\Models\Keyword;
use App\Models\PersonChange;
use App\Admin\Components; use App\Admin\Components;
use Slowlyo\OwlAdmin\Renderers\Drawer; use Slowlyo\OwlAdmin\Renderers\Drawer;
use Slowlyo\OwlAdmin\Renderers\Dialog; use Slowlyo\OwlAdmin\Renderers\Dialog;
@ -298,7 +299,20 @@ class PersonController extends AdminController
"*"=> '其他:${gender}' "*"=> '其他:${gender}'
]), ]),
]) ])
]) ]),
amis()->FieldSetControl()->title('户籍变动')->className('mt-10')->body([
amisMake()->CRUDTable()->affixHeader(false)->columnsTogglable(false)
->title('')
->api(admin_url('person_changes?_action=getData&person[id]=${id}&perPage=5'))
->columns([
amis()->TableColumn('changed_at', __('admin.person_changes.changed_at'))->width('100px'),
amis()->TableColumn('type', __('admin.person_changes.type'))->type('mapping')->map(PersonChange::typeMap()),
amis()->TableColumn('extends_mark', __('admin.person_changes.extends_mark')),
amis()->TableColumn('phone', __('admin.person_changes.phone')),
amis()->TableColumn('remark', __('admin.person_changes.remark')),
amis()->TableColumn('created_at', __('admin.person_changes.created_at'))->type('datetime')->sortable(true),
])
])
]) ])
])->md(6), ])->md(6),
]); ]);

View File

@ -26,6 +26,11 @@ class PersonChange extends Model
'extends' => 'array', 'extends' => 'array',
]; ];
public function scopeSort($q)
{
$q->orderBy('changed_at', 'desc')->orderBy('created_at', 'desc');
}
public static function typeMap() public static function typeMap()
{ {
return [ return [

View File

@ -19,4 +19,5 @@ class PersonChangeService extends BaseService
protected array $withRelationships = ['person', 'person.organizedBody']; protected array $withRelationships = ['person', 'person.organizedBody'];
protected bool $modelSortAble = true;
} }