* * @version 1.0.0 */ class MainRoleController extends VueController { public function __construct() { $this->vueRoot('admin.mainRole'); } public function index() { $q = request()->get('q'); $mainRoles = mainRole::orderBy('name', 'ASC') ->where('name', 'LIKE', "%{$q}%") ->with('department:id,name') ->paginate(config('app.pagination')); return $this->vuew('index', [ 'mainRoles' => $mainRoles, ]); } public function create() { $department = department::orderBy('name', 'ASC')->get(); return $this->vuew('create', [ 'departments' => $department, ]); } public function store(StoreMainRole $request) { mainRole::create($request->all()); return $this->index(); } public function update(UpdateMainRole $request, mainRole $mainRole) { $mainRole->update($request->all()); } public function destroy(mainRole $mainRole) { try{ $mainRole = mainRole::find($mainRole); $mainRole->delete(); }catch (\Throwable $th) { Log::channel('mainRole')->error($th->getMessage()); } } }