From c921d27dc733752409a5808db05c65d9ae2f4d6f Mon Sep 17 00:00:00 2001 From: Kamen Bachvarov Date: Fri, 30 Jan 2026 09:50:19 +0000 Subject: [PATCH 1/4] [PRMP-1365] Adjust content for partial upload --- .../DocumentUploadCompleteStage.test.tsx | 4 +- .../DocumentUploadCompleteStage.tsx | 8 +- app/src/helpers/utils/documentUpload.test.ts | 4 +- app/src/helpers/utils/documentUpload.ts | 83 +++++++++---------- .../documentUploadPage/DocumentUploadPage.tsx | 9 +- .../upload_document_reference_service.py | 29 +++---- ...t_pdm_upload_document_reference_service.py | 8 +- .../test_upload_document_reference_service.py | 19 ++--- 8 files changed, 78 insertions(+), 86 deletions(-) diff --git a/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.test.tsx b/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.test.tsx index 708e94bc4e..3d4fac8e93 100644 --- a/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.test.tsx +++ b/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.test.tsx @@ -125,7 +125,7 @@ describe('DocumentUploadCompleteStage', () => { it.each([ { docState: DOCUMENT_UPLOAD_STATE.SUCCEEDED, expectedTitle: 'Upload complete' }, - { docState: DOCUMENT_UPLOAD_STATE.FAILED, expectedTitle: 'Upload partially complete' }, + { docState: DOCUMENT_UPLOAD_STATE.ERROR, expectedTitle: 'Upload partially complete' }, ])('should set the page title based on upload success', async ({ docState, expectedTitle }) => { documents = [ { @@ -150,7 +150,7 @@ describe('DocumentUploadCompleteStage', () => { id: '2', file: buildLgFile(2), attempts: 0, - state: DOCUMENT_UPLOAD_STATE.FAILED, + state: DOCUMENT_UPLOAD_STATE.ERROR, numPages: 3, position: 2, }); diff --git a/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx b/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx index d44d78a0ef..77068fd7ed 100644 --- a/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx +++ b/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx @@ -30,7 +30,7 @@ const DocumentUploadCompleteStage = ({ documents, documentConfig }: Props): Reac const journey = getJourney(); const [showFiles, setShowFiles] = useState(false); - const failedDocuments = documents.filter((doc) => doc.state === DOCUMENT_UPLOAD_STATE.FAILED); + const failedDocuments = documents.filter((doc) => doc.state === DOCUMENT_UPLOAD_STATE.ERROR); const pageTitle = failedDocuments.length > 0 ? 'Upload partially complete' : 'Upload complete'; useTitle({ pageTitle }); @@ -38,7 +38,7 @@ const DocumentUploadCompleteStage = ({ documents, documentConfig }: Props): Reac const docsAreInFinishedState = () => allDocsHaveState(documents, [ DOCUMENT_UPLOAD_STATE.SUCCEEDED, - DOCUMENT_UPLOAD_STATE.FAILED, + DOCUMENT_UPLOAD_STATE.ERROR, ]); useEffect(() => { @@ -72,7 +72,7 @@ const DocumentUploadCompleteStage = ({ documents, documentConfig }: Props): Reac

Some of your files failed to upload

+ + ) : ( + <> +

What happens next

+ + {journey === 'update' && patientDetails.canManageRecord && ( +

+ You can now view the updated {documentConfig.displayName} for this + patient in this service by{' '} + { + e.preventDefault(); + navigate(routes.SEARCH_PATIENT, { replace: true }); + }} + data-testid="search-patient-link" + > + searching using their NHS number + + {'.'} +

+ )} -

- If you think you've made a mistake, contact the Patient Record Management team at{' '} - england.prmteam@nhs.net. -

+ {patientDetails.canManageRecord === false && ( +

+ You are not the data controller for this patient so you cannot view the + files you have uploaded in this service. +

+ )} - {documentConfig.content.uploadFilesExtraParagraph && ( -

{documentConfig.content.uploadFilesExtraParagraph}

- )} +

+ If you think you've made a mistake, contact the Patient Record Management + team at england.prmteam@nhs.net + . +

-

- For information on destroying your paper records and removing the digital files from - your system, read the article{' '} - - Digitisation of Lloyd George records - - {'.'} -

+ {documentConfig.content.uploadFilesExtraParagraph && ( +

{documentConfig.content.uploadFilesExtraParagraph}

+ )} - +

+ For information on destroying your paper records and removing the digital + files from your system, read the article{' '} + + Digitisation of Lloyd George records + + {'.'} +

+ + + )} ); }; From 288b722d6c02fb794443af1a93fdead80db1c698 Mon Sep 17 00:00:00 2001 From: Kamen Bachvarov Date: Fri, 30 Jan 2026 14:55:54 +0000 Subject: [PATCH 3/4] remove clear interval since we are not navigating anymore --- app/src/pages/documentUploadPage/DocumentUploadPage.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/pages/documentUploadPage/DocumentUploadPage.tsx b/app/src/pages/documentUploadPage/DocumentUploadPage.tsx index 89fbe85c6a..2c6ba72438 100644 --- a/app/src/pages/documentUploadPage/DocumentUploadPage.tsx +++ b/app/src/pages/documentUploadPage/DocumentUploadPage.tsx @@ -183,7 +183,6 @@ const DocumentUploadPage = (): React.JSX.Element => { setDocuments, }); } catch (e) { - window.clearInterval(intervalTimer); markDocumentWithError(document); } }; From dd0b075c21ffb542b8e9b4ef50f202e1ff118a6f Mon Sep 17 00:00:00 2001 From: Kamen Bachvarov Date: Fri, 30 Jan 2026 16:06:03 +0000 Subject: [PATCH 4/4] sonar issues --- .../DocumentUploadCompleteStage.tsx | 5 ++++- app/src/pages/documentUploadPage/DocumentUploadPage.tsx | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx b/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx index cc79e79082..660ce7559b 100644 --- a/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx +++ b/app/src/components/blocks/_documentUpload/documentUploadCompleteStage/DocumentUploadCompleteStage.tsx @@ -146,7 +146,10 @@ const DocumentUploadCompleteStage = ({ documents, documentConfig }: Props): Reac

If you think you've made a mistake, contact the Patient Record Management - team at england.prmteam@nhs.net + team at{' '} + + england.prmteam@nhs.net + .

diff --git a/app/src/pages/documentUploadPage/DocumentUploadPage.tsx b/app/src/pages/documentUploadPage/DocumentUploadPage.tsx index 2c6ba72438..17208aceca 100644 --- a/app/src/pages/documentUploadPage/DocumentUploadPage.tsx +++ b/app/src/pages/documentUploadPage/DocumentUploadPage.tsx @@ -182,7 +182,7 @@ const DocumentUploadPage = (): React.JSX.Element => { uploadSession, setDocuments, }); - } catch (e) { + } catch { markDocumentWithError(document); } };