Sfoglia il codice sorgente

项目批量关联需求

kely 1 anno fa
parent
commit
ede56c085d
1 ha cambiato i file con 19 aggiunte e 10 eliminazioni
  1. 19 10
      app/Http/Controllers/API/ProjectController.php

+ 19 - 10
app/Http/Controllers/API/ProjectController.php

@@ -206,22 +206,31 @@ class ProjectController extends Controller
 
     public function linkRequirement(LinkRequirementRequest $request, string $id)
     {
+
+        $requirementIds = $request->get("requirement_id",[]);
         $project = Project::findOrFail($id);
 
-        $requirement = Requirement::findOrFail($request->requirement_id);
 
-        $exists = ProjectAsset::query()
-            ->where('project_id', $project->id)
-            ->where('asset_id', $requirement->asset_id)
-            ->count();
-        if (! $exists) {
+        if(! $requirementIds){
             return $this->forbidden("Please select the correct requirement");
         }
 
-        ProjectRequirement::query()->firstOrCreate([
-            'project_id' => $project->id,
-            'requirement_id' => $requirement->id,
-        ]);
+//        $requirement = Requirement::findOrFail($request->requirement_id);
+
+//        $exists = ProjectAsset::query()
+//            ->where('project_id', $project->id)
+//            ->where('asset_id', $requirement->asset_id)
+//            ->count();
+//        if (! $exists) {
+//            return $this->forbidden("Please select the correct requirement");
+//        }
+        foreach ($requirementIds as  $requirementId){
+            ProjectRequirement::query()->firstOrCreate([
+                'project_id' => $project->id,
+                'requirement_id' => $requirementId,
+            ]);
+        }
+
 
         return $this->noContent();
     }