Bläddra i källkod

公司注册提交审批

kely 8 månader sedan
förälder
incheckning
d7f50ef7b6

+ 18 - 1
app/Http/Controllers/API/CompanyController.php

@@ -10,6 +10,8 @@ namespace App\Http\Controllers\API;
 
 
 use App\Http\Controllers\Controller;
+
+use App\Http\Requests\API\Company\ActionRequest;
 use App\Http\Requests\API\Company\CreateOrUpdateRequest;
 use App\Http\Resources\API\CompanyResource;
 use App\Models\Company;
@@ -17,6 +19,7 @@ use App\Models\User;
 use App\Services\File\FileAssociationService;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Auth;
+use App\Models\Enums\CompanyReviewStatus;
 
 class CompanyController extends Controller
 {
@@ -79,10 +82,11 @@ class CompanyController extends Controller
         return $this->noContent();
     }
 
+    //注册用户时注册公司
     public function registerStore(FileAssociationService $service,CreateOrUpdateRequest $request)
     {
         $company = new Company();
-
+        
         $service->check(
           $request->get("file_ids",[]),
           FileObjectType::COMPANY,
@@ -100,5 +104,18 @@ class CompanyController extends Controller
         return $this->created();
     }
 
+    //公司审核
+    public function action(ActionRequest $request, string $id){
+        $company = Company::findOrFail($id);
+        $status=$request->status;
+        match($status) {
+            1 => $company->review_status=CompanyReviewStatus::APPROVED,
+            default => $company->review_status=CompanyReviewStatus::REJECTED,
+        };
+        $company->save();
+        return $this->noContent();
+    }
+
+
 
 }

+ 2 - 2
app/Http/Controllers/API/UserController.php

@@ -214,10 +214,10 @@ class UserController extends Controller
 //    }
 
     /**
-     * add a new User
+     * 注册用户
      * @return \Illuminate\Http\Response
      */
-    public function storeCompanyUser(CreateCompanyUserRequest $request){
+    public function registerCompanyUser(CreateCompanyUserRequest $request){
         $password = Hash::make($request->password);
         $userRequest=$request->all();
         $userRequest['password']=$password;

+ 1 - 0
app/Http/Requests/API/User/CreateCompanyUserRequest.php

@@ -32,6 +32,7 @@ class CreateCompanyUserRequest extends FormRequest
             'username'=>'required|max:30|unique:users',
             'password' => 'required|min:6|regex:/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{6,}$/', // 至少6位,包含大小写字母和数字,At least 6 digits, including upper and lower case letters and numbers
             'phone'=>'nullable|regex:/^\d{8,11}$/',
+            'company_id'=>'required|exists:company,id',
         ];
     }
 }

+ 1 - 0
app/Http/Resources/API/CompanyResource.php

@@ -20,6 +20,7 @@ class CompanyResource extends JsonResource
           'id' => $this->id,
           'name' => $this->name,
           'email' => $this->email,
+          'review_status' => $this->review_status,
         ];
     }
 

+ 6 - 0
routes/api.php

@@ -16,6 +16,9 @@ use App\Http\Controllers\API;
 */
 
 Route::post("/login", [API\AuthController::class, "login"]);
+Route::post("register/company-user", [API\UserController::class, "registerCompanyUser"]);
+Route::post("register/company", [API\CompanyController::class, "registerStore"]);
+Route::post("company-file-upload", [API\FileController::class, "upload"]);
 //暂时为免登录
 Route::get("file/download/{uuid}/share-file", [API\FileController::class, "downloadShareFile"])
     ->name("file.download-share-file");
@@ -51,6 +54,9 @@ Route::middleware(['auth:sanctum'])->group(function () {
         Route::get("role/{role}/menus", [API\RoleController::class, "menus"])->name("role.menus");
 //        Route::patch("user/userInfo/{user_id}",[API\UserController::class, 'updateUserInfo'])->name('user.updateUserInfo');
 
+        Route::patch("company/{company_id}/action", [API\CompanyController::class, "action"]);
+
+
     });
 
     Route::middleware(['permission'])->group(function() {