feat: new feature
This commit is contained in:
@@ -5,21 +5,20 @@ declare(strict_types=1);
|
||||
namespace Modules\Permissions\Http\Controllers;
|
||||
|
||||
use Catch\Base\CatchController as Controller;
|
||||
use Modules\Permissions\Models\DepartmentsModel;
|
||||
use Modules\Permissions\Models\Departments;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class DepartmentsController extends Controller
|
||||
{
|
||||
public function __construct(
|
||||
protected readonly DepartmentsModel $model
|
||||
protected readonly Departments $model
|
||||
) {
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Request $request
|
||||
* @return mixed
|
||||
*/
|
||||
public function index(Request $request): mixed
|
||||
public function index(): mixed
|
||||
{
|
||||
return $this->model->getList();
|
||||
}
|
||||
|
@@ -5,13 +5,13 @@ declare(strict_types=1);
|
||||
namespace Modules\Permissions\Http\Controllers;
|
||||
|
||||
use Catch\Base\CatchController as Controller;
|
||||
use Modules\Permissions\Models\JobsModel;
|
||||
use Modules\Permissions\Models\Jobs;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class JobsController extends Controller
|
||||
{
|
||||
public function __construct(
|
||||
protected readonly JobsModel $model
|
||||
protected readonly Jobs $model
|
||||
) {
|
||||
}
|
||||
|
||||
|
@@ -5,14 +5,20 @@ declare(strict_types=1);
|
||||
namespace Modules\Permissions\Http\Controllers;
|
||||
|
||||
use Catch\Base\CatchController as Controller;
|
||||
use Catch\Exceptions\FailedException;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Modules\Permissions\Enums\MenuType;
|
||||
use Modules\Permissions\Models\PermissionsModel;
|
||||
use Modules\Permissions\Models\Permissions;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
|
||||
class PermissionsController extends Controller
|
||||
{
|
||||
/**
|
||||
* @param Permissions $model
|
||||
*/
|
||||
public function __construct(
|
||||
protected readonly PermissionsModel $model
|
||||
protected readonly Permissions $model
|
||||
) {
|
||||
}
|
||||
|
||||
@@ -21,28 +27,53 @@ class PermissionsController extends Controller
|
||||
*/
|
||||
public function index(): mixed
|
||||
{
|
||||
return $this->model->setBeforeGetList(function ($query){
|
||||
return $query->with('actions')->whereIn('type', [MenuType::Top->value(), MenuType::Menu->value]);
|
||||
return $this->model->setBeforeGetList(function ($query) {
|
||||
return $query->with('actions')->whereIn('type', [MenuType::Top->value(), MenuType::Menu->value()]);
|
||||
})->getList();
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param Request $request
|
||||
* @return bool
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
return $this->model->storeBy($request->all());
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param $id
|
||||
* @return \Illuminate\Database\Eloquent\Model|null
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
return $this->model->firstBy($id);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param $id
|
||||
* @param Request $request
|
||||
* @return mixed
|
||||
*/
|
||||
public function update($id, Request $request)
|
||||
{
|
||||
return $this->model->updateBy($id, $request->all());
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param $id
|
||||
* @return bool|null
|
||||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
if ($this->model->where($this->model->getParentIdColumn(), $id)->first()) {
|
||||
throw new FailedException('无法进行删除,请先删除子级');
|
||||
}
|
||||
|
||||
return $this->model->deleteBy($id);
|
||||
}
|
||||
|
||||
|
@@ -5,13 +5,14 @@ declare(strict_types=1);
|
||||
namespace Modules\Permissions\Http\Controllers;
|
||||
|
||||
use Catch\Base\CatchController as Controller;
|
||||
use Modules\Permissions\Models\RolesModel;
|
||||
use Catch\Exceptions\FailedException;
|
||||
use Modules\Permissions\Models\Roles;
|
||||
use Modules\Permissions\Http\Requests\RoleRequest;
|
||||
|
||||
class RolesController extends Controller
|
||||
{
|
||||
public function __construct(
|
||||
protected readonly RolesModel $model
|
||||
protected readonly Roles $model
|
||||
) {
|
||||
}
|
||||
|
||||
@@ -20,8 +21,10 @@ class RolesController extends Controller
|
||||
*/
|
||||
public function index(): mixed
|
||||
{
|
||||
return $this->model->setBeforeGetList(function ($query){
|
||||
return $query->with(['permissions' => function($query){ $query->select('id');}]);
|
||||
return $this->model->setBeforeGetList(function ($query) {
|
||||
return $query->with(['permissions' => function ($query) {
|
||||
$query->select('id');
|
||||
}])->dataRange();
|
||||
})->getList();
|
||||
}
|
||||
|
||||
@@ -46,6 +49,10 @@ class RolesController extends Controller
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
if ($this->model->where($this->model->getParentIdColumn(), $id)->first()) {
|
||||
throw new FailedException('请先删除子级');
|
||||
}
|
||||
|
||||
return $this->model->deleteBy($id);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user