store-manage/app/Admin/Controllers/Complaint/FeedbackController.php

52 lines
1.9 KiB
PHP

<?php
namespace App\Admin\Controllers\Complaint;
use App\Admin\Controllers\AdminController;
use App\Admin\Services\Complaint\FeedbackService;
use Slowlyo\OwlAdmin\Admin;
use Slowlyo\OwlAdmin\Renderers\Page;
/**
* @property FeedbackService $service
*/
class FeedbackController extends AdminController
{
protected string $serviceName = FeedbackService::class;
public function list(): Page
{
$crud = $this->baseCRUD()
->headerToolbar([
...$this->baseHeaderToolBar(),
])
->bulkActions([])
->filter($this->baseFilter()->body([
amis()->GroupControl()->mode('horizontal')->body([
amis()->TextControl()
->name('employee_name')
->label(__('complaint.feedback.employee'))
->placeholder(__('complaint.feedback.employee'))
->columnRatio(4),
amis()->InputDatetimeRange()
->name('created_at')
->label(__('complaint.feedback.created_at'))
->format('YYYY-MM-DD HH:mm:ss')
->columnRatio(4),
]),
]))
->filterDefaultVisible()
->columns([
amis()->TableColumn()->name('id')->label(__('complaint.feedback.id')),
amis()->TableColumn()->name('employee.name')->label(__('complaint.feedback.employee')),
amis()->TableColumn()->name('content')->label(__('complaint.feedback.content')),
amis()->TableColumn()->name('created_at')->label(__('complaint.feedback.created_at')),
$this->rowActions([
$this->rowDeleteButton()->visible(Admin::user()->can('admin.complaint.feedback.delete')),
]),
]);
return $this->baseList($crud);
}
}