Browse Source

权限是否与菜单权限关联,返回关联标识

kely 7 months ago
parent
commit
3a50d28580

+ 8 - 4
app/Http/Controllers/API/ProjectController.php

@@ -60,20 +60,24 @@ class ProjectController extends Controller
      */
     public function index(Request $request)
     {
-        $pageSize=$request->get('page_size') ?? 10;
-        $sort=$request->input('sort','desc');
-        $projectAsset = Project::filter($request->all())->allowed()->orderBy('created_at',$sort)->with('assets')->paginate($pageSize);
+        $projectAsset=$this->getProject($request);
 
         return ProjectResource::collection($projectAsset);
     }
 
     public function publicSearch(Request $request)
     {
-        $projectAsset = Project::filter($request->all())->allowed()->orderByDesc('created_at')->with('assets')->get();
+        $projectAsset=$this->getProject($request);
 
         return ProjectSimpleResource::collection($projectAsset);
     }
 
+    protected function getProject(Request $request){
+        $pageSize=$request->get('page_size') ?? 10;
+        $sort=$request->input('sort','desc');
+        return Project::filter($request->all())->allowed()->orderBy('created_at',$sort)->with('assets')->paginate($pageSize);
+    }
+
     public function byAsset(Request $request)
     {
         $asset=$request->asset;

+ 3 - 0
app/Http/Resources/API/PermissionResource.php

@@ -2,6 +2,7 @@
 
 namespace App\Http\Resources\API;
 
+use App\Models\Menu;
 use Illuminate\Http\Request;
 use Illuminate\Http\Resources\Json\JsonResource;
 
@@ -14,9 +15,11 @@ class PermissionResource extends JsonResource
      */
     public function toArray(Request $request): array
     {
+        $menus = Menu::all()->pluck('permission');
         return [
             'id' => $this->id,
             'name' => $this->name,
+            'is_menus'=>$menus->contains($this->name)?true:false,
             'description' => $this->description,
             'default_check' => $this->default_check,
         ];