瀏覽代碼

公司组织架构

kevinlan@lpchku.com 3 月之前
父節點
當前提交
1e8ab84efa
共有 2 個文件被更改,包括 18 次插入9 次删除
  1. 17 8
      app/Http/Controllers/API/CompanyController.php
  2. 1 1
      routes/api.php

+ 17 - 8
app/Http/Controllers/API/CompanyController.php

@@ -40,17 +40,16 @@ class CompanyController extends Controller
     {
         $pageSize=$request->get('page_size') ?? 0;
         if(Auth::user()->super_admin){
-            $company=Company::query()->withoutGlobalScope(CompanyScope::class)->filter($request->all())->get();
-//            make_display_id($company,$pageSize);
-//            return CompanyResource::collection($company);
+            $company=Company::query()->filter($request->all())->paginate($pageSize);
+            make_display_id($company,$pageSize);
+            return CompanyResource::collection($company);
         }else{
-
             $companyId=Auth::user()->company->id;
-            $company=Company::query()->withoutGlobalScope(CompanyScope::class)->filter($request->all())->where('id',$companyId)->orWhere('parent',$companyId)->get();
-//            make_display_id($company,$pageSize);
-//            return CompanyResource::collection($company);
+            $company=Company::query()->filter($request->all())->where('id',$companyId)->paginate($pageSize);
+            make_display_id($company,$pageSize);
+            return CompanyResource::collection($company);
         }
-        return CompanyResource::collection($company);
+
     }
 
     public function publicSearch(Request $request){
@@ -98,6 +97,16 @@ class CompanyController extends Controller
         return $this->noContent();
     }
 
+    public function structure(Request $request)
+    {
+        if(!Auth::user()->super_admin){
+            $company=Company::query()->withoutGlobalScope(CompanyScope::class)->filter($request->all())->get();
+        }else{
+            $companyId=Auth::user()->company->id;
+            $company=Company::query()->withoutGlobalScope(CompanyScope::class)->filter($request->all())->where('id',$companyId)->orWhere('parent',$companyId)->get();
+        }
+        return CompanyResource::collection($company);
+    }
 
     public function destroy(string $id)
     {

+ 1 - 1
routes/api.php

@@ -119,7 +119,7 @@ Route::middleware(['auth:sanctum','account.limit'])->group(function () {
         ]);
 
         Route::post ("department/userList", [API\DepartmentController::class, 'userList'])->name("department.userList");
-//        Route::post ("company/structure", [API\CompanyController::class, 'structure'])->name("company.structure");
+        Route::post ("company/structure", [API\CompanyController::class, 'structure'])->name("company.structure");
 
         Route::apiResource("library", API\LibraryController::class)->only([
             'store','update','destroy','show'