|
@@ -23,6 +23,7 @@ use App\Http\Resources\API\SimplePlanResource;
|
|
|
use App\Http\Resources\API\ProjectRequirementResource;
|
|
|
use App\Http\Resources\API\ProjectResource;
|
|
|
use App\Models\Enums\ActionObjectType;
|
|
|
+use App\Models\Enums\FileObjectType;
|
|
|
use App\Models\Enums\ObjectAction;
|
|
|
use App\Models\Enums\ProjectStatus;
|
|
|
use App\Models\Enums\TaskStatus;
|
|
@@ -37,6 +38,7 @@ use App\Models\TeamMember;
|
|
|
use App\Models\User;
|
|
|
use App\Models\RequirementGroup;
|
|
|
use App\Repositories\ActionRepository;
|
|
|
+use App\Services\File\FileAssociationService;
|
|
|
use App\Services\History\ModelChangeDetector;
|
|
|
use App\Services\Project\ProjectKanbanService;
|
|
|
use App\Services\Project\ProjectGanttService;
|
|
@@ -91,7 +93,7 @@ class ProjectController extends Controller
|
|
|
/**
|
|
|
* Store a newly created resource in storage.
|
|
|
*/
|
|
|
- public function store(CreateOrUpdateRequest $request)
|
|
|
+ public function store(FileAssociationService $service, CreateOrUpdateRequest $request)
|
|
|
{
|
|
|
$project = new Project();
|
|
|
|
|
@@ -99,7 +101,7 @@ class ProjectController extends Controller
|
|
|
'company_id', 'created_by'
|
|
|
]);
|
|
|
|
|
|
- DB::transaction(function () use ($request,$project) {
|
|
|
+ DB::transaction(function () use ($request, $project, $service) {
|
|
|
$project->fill([
|
|
|
...$request->all(),
|
|
|
'company_id' => Auth::user()->company_id,
|
|
@@ -111,6 +113,12 @@ class ProjectController extends Controller
|
|
|
|
|
|
ActionRepository::createByProject($project, ObjectAction::CREATED);
|
|
|
|
|
|
+ $service->association(
|
|
|
+ $request->get("file_ids", []),
|
|
|
+ $project->id,
|
|
|
+ FileObjectType::PROJECT
|
|
|
+ );
|
|
|
+
|
|
|
if ($request->has("assets")) {
|
|
|
foreach ($request->get("assets", []) as $assetId) {
|
|
|
ProjectAsset::create([
|