From 34313b50ee068a5a35f25d51092a520278f34c16 Mon Sep 17 00:00:00 2001 From: sstewart <202802468+scottstewart-sl@users.noreply.github.com> Date: Sat, 11 Jul 2026 11:30:51 +0100 Subject: [PATCH 1/5] HDPI-6638: Caseworker gen app without notice screen --- .../domain/caseworker/EnterGenAppRequest.java | 6 +++ .../entergenapp/ConsentAndNotice.java | 11 +++- .../pcs/ccd/service/genapp/GenAppService.java | 5 ++ .../ccd/service/genapp/GenAppServiceTest.java | 53 +++++++++++++++++++ 4 files changed, 74 insertions(+), 1 deletion(-) diff --git a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/domain/caseworker/EnterGenAppRequest.java b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/domain/caseworker/EnterGenAppRequest.java index cd7e33bd7a..7b3a849618 100644 --- a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/domain/caseworker/EnterGenAppRequest.java +++ b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/domain/caseworker/EnterGenAppRequest.java @@ -57,4 +57,10 @@ public class EnterGenAppRequest { ) private String hwfReference; + @CCD(label = "Do all parties consent to this application?") + private VerticalYesNo allPartiesAgree; + + @CCD(label = "Has the applicant asked for this application to be made without notice?") + private VerticalYesNo withoutNotice; + } diff --git a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java index 065d19a746..fd2569f3b0 100644 --- a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java +++ b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java @@ -2,6 +2,11 @@ import uk.gov.hmcts.reform.pcs.ccd.common.CcdPageConfiguration; import uk.gov.hmcts.reform.pcs.ccd.common.PageBuilder; +import uk.gov.hmcts.reform.pcs.ccd.domain.PCSCase; +import uk.gov.hmcts.reform.pcs.ccd.domain.VerticalYesNo; +import uk.gov.hmcts.reform.pcs.ccd.domain.caseworker.EnterGenAppRequest; + +import static uk.gov.hmcts.reform.pcs.ccd.ShowConditions.fieldEquals; public class ConsentAndNotice implements CcdPageConfiguration { @@ -22,7 +27,11 @@ public void addTo(PageBuilder pageBuilder) { .page("consentAndNotice") .pageLabel("Application consent and notice") .label("consentAndNotice-lineSeparator", "---") - .label("consentAndNotice-placeholder", PLACEHOLDER_BANNER); + .complex(PCSCase::getEnterGenAppRequest) + .mandatory(EnterGenAppRequest::getAllPartiesAgree) + .mandatory(EnterGenAppRequest::getWithoutNotice, + fieldEquals("enter_genapp_AllPartiesAgree", VerticalYesNo.NO)) + .done(); } } diff --git a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppService.java b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppService.java index 68473e5a17..be5715efa5 100644 --- a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppService.java +++ b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppService.java @@ -136,6 +136,7 @@ public void createGenAppEntity(EnterGenAppRequest enterGenAppRequest, .state(initialState) .feeAmountReceived(enterGenAppRequest.getFeeAmountReceived()) .appliedForHwf(enterGenAppRequest.getAppliedForHwf()) + .otherPartiesAgreed(enterGenAppRequest.getAllPartiesAgree()) .build(); if (enterGenAppRequest.getApplicationTypeOption() == EnterGenAppType.SOMETHING_ELSE) { @@ -152,6 +153,10 @@ public void createGenAppEntity(EnterGenAppRequest enterGenAppRequest, genAppEntity.setHelpWithFeesEntity(helpWithFeesEntity); } + if (enterGenAppRequest.getAllPartiesAgree() == VerticalYesNo.NO) { + genAppEntity.setWithoutNotice(enterGenAppRequest.getWithoutNotice()); + } + genAppRepository.save(genAppEntity); } diff --git a/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java b/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java index 4d5a9f77f1..355e3d777b 100644 --- a/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java +++ b/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java @@ -854,6 +854,59 @@ void shouldSetHwfFlagButNotReferenceWhenNo() { assertThat(genAppEntity.getHelpWithFeesEntity()).isNull(); } + @ParameterizedTest + @EnumSource(VerticalYesNo.class) + void shouldSetAllPartiesAgreeFlag(VerticalYesNo allPartiesAgree) { + // Given + EnterGenAppRequest enterGenAppRequest = EnterGenAppRequest.builder() + .applicationTypeOption(EnterGenAppType.SOMETHING_ELSE) + .allPartiesAgree(allPartiesAgree) + .build(); + + // When + underTest.createGenAppEntity(enterGenAppRequest, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); + + // Then + GenAppEntity genAppEntity = getSavedGenAppEntity(); + assertThat(genAppEntity.getOtherPartiesAgreed()).isEqualTo(allPartiesAgree); + } + + @ParameterizedTest + @EnumSource(VerticalYesNo.class) + void shouldSetWithoutNoticeFlagWhenNotAllPartiesAgree(VerticalYesNo withoutNotice) { + // Given + EnterGenAppRequest enterGenAppRequest = EnterGenAppRequest.builder() + .applicationTypeOption(EnterGenAppType.SOMETHING_ELSE) + .allPartiesAgree(VerticalYesNo.NO) + .withoutNotice(withoutNotice) + .build(); + + // When + underTest.createGenAppEntity(enterGenAppRequest, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); + + // Then + GenAppEntity genAppEntity = getSavedGenAppEntity(); + assertThat(genAppEntity.getWithoutNotice()).isEqualTo(withoutNotice); + } + + @ParameterizedTest + @EnumSource(VerticalYesNo.class) + void shouldNotSetWithoutNoticeFlagWhenAllPartiesAgree(VerticalYesNo withoutNotice) { + // Given + EnterGenAppRequest enterGenAppRequest = EnterGenAppRequest.builder() + .applicationTypeOption(EnterGenAppType.SOMETHING_ELSE) + .allPartiesAgree(VerticalYesNo.YES) + .withoutNotice(withoutNotice) + .build(); + + // When + underTest.createGenAppEntity(enterGenAppRequest, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); + + // Then + GenAppEntity genAppEntity = getSavedGenAppEntity(); + assertThat(genAppEntity.getWithoutNotice()).isNull(); + } + } private GenAppEntity getSavedGenAppEntity() { From bdd96fd9238037dc91838d7824285684ef8cb4c7 Mon Sep 17 00:00:00 2001 From: sstewart <202802468+scottstewart-sl@users.noreply.github.com> Date: Sat, 11 Jul 2026 11:39:34 +0100 Subject: [PATCH 2/5] HDPI-6638: Remove unused placeholder text --- .../page/caseworker/entergenapp/ConsentAndNotice.java | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java index fd2569f3b0..742a3a19b7 100644 --- a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java +++ b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ConsentAndNotice.java @@ -10,17 +10,6 @@ public class ConsentAndNotice implements CcdPageConfiguration { - private static final String PLACEHOLDER_BANNER = """ -
-
-

- Placeholder -

-
-
- """; - @Override public void addTo(PageBuilder pageBuilder) { pageBuilder From 171d9ae6e3dc643af9c2cdbaab18f5112571d739 Mon Sep 17 00:00:00 2001 From: sstewart <202802468+scottstewart-sl@users.noreply.github.com> Date: Sat, 11 Jul 2026 12:11:09 +0100 Subject: [PATCH 3/5] HDPI-6656: Caseworker gen app refer without notice apps to a judge --- .../caseworker/entergenapp/EnterGenApp.java | 1 + .../entergenapp/ReferApplicationToJudge.java | 18 ++++++++---------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/event/caseworker/entergenapp/EnterGenApp.java b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/event/caseworker/entergenapp/EnterGenApp.java index b7164cb74c..931a30435f 100644 --- a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/event/caseworker/entergenapp/EnterGenApp.java +++ b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/event/caseworker/entergenapp/EnterGenApp.java @@ -54,6 +54,7 @@ public void configureDecentralised(DecentralisedConfigBuilder -
-

- Placeholder -

-
- + private static final String MESSAGE_TEXT = """ +

You must refer this application to a judge.

"""; @Override @@ -21,8 +17,10 @@ public void addTo(PageBuilder pageBuilder) { pageBuilder .page("referApplicationToJudge") .pageLabel("Refer without notice application to judge") + .showCondition(fieldEquals("enter_genapp_AllPartiesAgree", VerticalYesNo.NO) + + " AND " + fieldEquals("enter_genapp_WithoutNotice", VerticalYesNo.YES)) .label("referApplicationToJudge-lineSeparator", "---") - .label("referApplicationToJudge-placeholder", PLACEHOLDER_BANNER); + .label("referApplicationToJudge-message", MESSAGE_TEXT); } } From 4b82343e14462097357c2612dcba9a7f5c8e4beb Mon Sep 17 00:00:00 2001 From: sstewart <202802468+scottstewart-sl@users.noreply.github.com> Date: Tue, 14 Jul 2026 12:58:25 +0100 Subject: [PATCH 4/5] HDPI-6640: Use ShowConditions.and() helper method --- .../caseworker/entergenapp/ReferApplicationToJudge.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ReferApplicationToJudge.java b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ReferApplicationToJudge.java index fa0d4210cc..96a31b9c76 100644 --- a/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ReferApplicationToJudge.java +++ b/src/main/java/uk/gov/hmcts/reform/pcs/ccd/page/caseworker/entergenapp/ReferApplicationToJudge.java @@ -1,5 +1,6 @@ package uk.gov.hmcts.reform.pcs.ccd.page.caseworker.entergenapp; +import uk.gov.hmcts.reform.pcs.ccd.ShowConditions; import uk.gov.hmcts.reform.pcs.ccd.common.CcdPageConfiguration; import uk.gov.hmcts.reform.pcs.ccd.common.PageBuilder; import uk.gov.hmcts.reform.pcs.ccd.domain.VerticalYesNo; @@ -17,8 +18,10 @@ public void addTo(PageBuilder pageBuilder) { pageBuilder .page("referApplicationToJudge") .pageLabel("Refer without notice application to judge") - .showCondition(fieldEquals("enter_genapp_AllPartiesAgree", VerticalYesNo.NO) - + " AND " + fieldEquals("enter_genapp_WithoutNotice", VerticalYesNo.YES)) + .showCondition(ShowConditions.and( + fieldEquals("enter_genapp_AllPartiesAgree", VerticalYesNo.NO), + fieldEquals("enter_genapp_WithoutNotice", VerticalYesNo.YES)) + ) .label("referApplicationToJudge-lineSeparator", "---") .label("referApplicationToJudge-message", MESSAGE_TEXT); } From 71a1a59a9499be1b9a799fcb3ed7a89269aaf3c5 Mon Sep 17 00:00:00 2001 From: sstewart <202802468+scottstewart-sl@users.noreply.github.com> Date: Tue, 14 Jul 2026 13:16:07 +0100 Subject: [PATCH 5/5] HDPI-6640: Fix merge issue --- .../ccd/service/genapp/GenAppServiceTest.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java b/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java index 7c9092e266..8f0fda6d58 100644 --- a/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java +++ b/src/test/java/uk/gov/hmcts/reform/pcs/ccd/service/genapp/GenAppServiceTest.java @@ -889,8 +889,12 @@ void shouldSetAllPartiesAgreeFlag(VerticalYesNo allPartiesAgree) { .allPartiesAgree(allPartiesAgree) .build(); + PCSCase caseData = PCSCase.builder() + .enterGenAppRequest(enterGenAppRequest) + .build(); + // When - underTest.createGenAppEntity(enterGenAppRequest, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); + underTest.createGenAppEntity(caseData, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); // Then GenAppEntity genAppEntity = getSavedGenAppEntity(); @@ -907,8 +911,12 @@ void shouldSetWithoutNoticeFlagWhenNotAllPartiesAgree(VerticalYesNo withoutNotic .withoutNotice(withoutNotice) .build(); + PCSCase caseData = PCSCase.builder() + .enterGenAppRequest(enterGenAppRequest) + .build(); + // When - underTest.createGenAppEntity(enterGenAppRequest, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); + underTest.createGenAppEntity(caseData, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); // Then GenAppEntity genAppEntity = getSavedGenAppEntity(); @@ -925,8 +933,12 @@ void shouldNotSetWithoutNoticeFlagWhenAllPartiesAgree(VerticalYesNo withoutNotic .withoutNotice(withoutNotice) .build(); + PCSCase caseData = PCSCase.builder() + .enterGenAppRequest(enterGenAppRequest) + .build(); + // When - underTest.createGenAppEntity(enterGenAppRequest, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); + underTest.createGenAppEntity(caseData, pcsCaseEntity, applicantParty, GEN_APP_ISSUED); // Then GenAppEntity genAppEntity = getSavedGenAppEntity();