|
@@ -19,6 +19,7 @@ use App\Models\Enums\FileObjectType;
|
|
|
use App\Models\Enums\RequirementStatus;
|
|
|
use App\Models\Enums\ObjectAction;
|
|
|
use App\Models\Plan;
|
|
|
+use App\Models\ProjectRequirement;
|
|
|
use App\Models\Requirement;
|
|
|
use App\Repositories\ActionRepository;
|
|
|
use App\Services\File\FileAssociationService;
|
|
@@ -85,8 +86,18 @@ class RequirementController extends Controller
|
|
|
'description' => $request->description? (new \App\Services\File\ImageUrlService)->interceptImageUrl($request->description) : null,
|
|
|
'created_by' => Auth::id(),
|
|
|
]);
|
|
|
- $requirement->save();
|
|
|
-
|
|
|
+ DB::transaction(function () use ($requirement,$request) {
|
|
|
+ $requirement->save();
|
|
|
+ //如果选择了需求关联的项目,则同时进行关联
|
|
|
+ if ($request->project_id){
|
|
|
+ ProjectRequirement::query()->firstOrCreate([
|
|
|
+ 'project_id' => $request->project_id,
|
|
|
+ 'requirement_id' => $requirement->id,
|
|
|
+ 'asset_id' => $request->asset_id,
|
|
|
+ 'requirement_group_id'=> $request->requirement_group_id,
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+ });
|
|
|
ActionRepository::createRequirement(
|
|
|
$requirement, ObjectAction::CREATED
|
|
|
);
|