From 546217f09b6ce640f6a7944d500bf8c7e102b644 Mon Sep 17 00:00:00 2001 From: Prateek Shourya Date: Fri, 25 Apr 2025 14:27:40 +0530 Subject: [PATCH] [WEB-3953] fix: issue description assets upload when project id is switched (#6975) --- apiserver/plane/app/views/asset/v2.py | 2 +- web/core/components/issues/issue-modal/base.tsx | 12 ++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/apiserver/plane/app/views/asset/v2.py b/apiserver/plane/app/views/asset/v2.py index da36b91a0..eba3c4e89 100644 --- a/apiserver/plane/app/views/asset/v2.py +++ b/apiserver/plane/app/views/asset/v2.py @@ -683,7 +683,7 @@ class ProjectBulkAssetEndpoint(BaseAPIView): # For some cases, the bulk api is called after the issue is deleted creating # an integrity error try: - assets.update(issue_id=entity_id) + assets.update(issue_id=entity_id, project_id=project_id) except IntegrityError: pass diff --git a/web/core/components/issues/issue-modal/base.tsx b/web/core/components/issues/issue-modal/base.tsx index 0af2747bd..b30c1a85c 100644 --- a/web/core/components/issues/issue-modal/base.tsx +++ b/web/core/components/issues/issue-modal/base.tsx @@ -132,10 +132,14 @@ export const CreateUpdateIssueModalBase: React.FC = observer(( }; const addIssueToModule = async (issue: TIssue, moduleIds: string[]) => { - if (!workspaceSlug || !activeProjectId) return; + if (!workspaceSlug || !issue.project_id) return; - await issues.changeModulesInIssue(workspaceSlug.toString(), activeProjectId, issue.id, moduleIds, []); - moduleIds.forEach((moduleId) => fetchModuleDetails(workspaceSlug.toString(), activeProjectId, moduleId)); + await Promise.all([ + issues.changeModulesInIssue(workspaceSlug.toString(), issue.project_id, issue.id, moduleIds, []), + ...moduleIds.map( + (moduleId) => issue.project_id && fetchModuleDetails(workspaceSlug.toString(), issue.project_id, moduleId) + ), + ]); }; const handleCreateMoreToggleChange = (value: boolean) => { @@ -182,7 +186,7 @@ export const CreateUpdateIssueModalBase: React.FC = observer(( if (uploadedAssetIds.length > 0) { await fileService.updateBulkProjectAssetsUploadStatus( workspaceSlug?.toString() ?? "", - activeProjectId ?? "", + response?.project_id ?? "", response?.id ?? "", { asset_ids: uploadedAssetIds,