Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
2d1aacb
HDPI-6030: Gen app - What Order Wanted screen
scottstewart-sl May 16, 2026
bb11b65
HDPI-6030: Gen app - what order content tweaks
scottstewart-sl May 19, 2026
78b0a49
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 19, 2026
06b9f36
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 19, 2026
a8da896
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 20, 2026
c0ae23d
Update ExUI chart to 1.0.44
scottstewart-sl May 21, 2026
dbc0d40
Bumping chart version/ fixing aliases
hmcts-jenkins-j-to-z[bot] May 21, 2026
3b042c8
Update ccd chart to 9.2.3
scottstewart-sl May 21, 2026
77e3563
Revert Xui chart to 1.0.39
scottstewart-sl May 21, 2026
5dff92f
Revert ccd chart to 9.2.2
scottstewart-sl May 21, 2026
adc15ef
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
marianadpereira May 21, 2026
714b89c
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 21, 2026
2d6503a
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 22, 2026
d7a2613
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 26, 2026
236195a
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 26, 2026
76bbb1b
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 26, 2026
f7c12b8
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 27, 2026
ef5dda5
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
scottstewart-sl May 27, 2026
7f9b452
Merge branch 'HDPI-6029_other_parties_agree' into HDPI-6030_what_orde…
PadmaDeenadayalan May 28, 2026
8268ead
HDPI-6030- Automation-What-order-do-you-want-to-make-and-why (#1891)
PadmaDeenadayalan May 28, 2026
442f6b3
removed @PR tags from spec files
May 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion charts/pcs-api/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ appVersion: "1.0"
description: A Helm chart for pcs-api App
name: pcs-api
home: https://github.com/hmcts/pcs-api
version: 0.0.57
version: 0.0.58
maintainers:
- name: HMCTS pcs team
dependencies:
Expand Down
1 change: 1 addition & 0 deletions src/e2eTest/config/global-setup.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ function applyPlaywrightServiceUrls(): void {
process.env.IDAM_WEB_URL ||= `https://idam-api.${e}.platform.hmcts.net`;
process.env.IDAM_TESTING_SUPPORT_URL ||= `https://idam-testing-support-api.${e}.platform.hmcts.net`;
process.env.S2S_URL ||= `http://rpe-service-auth-provider-${e}.service.core-compute-${e}.internal/testing-support/lease`;
process.env.CASE_API_URL ||= `http://pcs-api-${e}.service.core-compute-${e}.internal`;
} else {
// preview, empty ENVIRONMENT, etc.: AAT IdAM/S2S (same as Jenkinsfile_CNP defaults). MANAGE_CASE / data-store from Jenkins or exports.
process.env.IDAM_WEB_URL ||= 'https://idam-api.aat.platform.hmcts.net';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
export const doYouWantToUploadDocumentToSupportYourApplication = {
mainHeader: `Do you want to upload documents to support your application?`,
export const doYouWantToUploadDocumentsToSupportDefendantsApplication = {
mainHeader: `Do you want to upload documents to support the defendant’s application? (Optional)`,
doYouWantToUploadDocumentQuestion: `Do you want to upload documents to support your application?`,
yesRadioOption: `Yes`,
noRadioOption: `No`,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ export * from './checkYourAnswersGenApps.page.data';
export * from './applicationSubmitted.page.data';
export * from './askToAdjournTheCourtHearing.page.data';
export * from './helpWithFeesNeeded.page.data';
export * from './doYouWantToUploadDocumentToSupportYourApplication.page.data';
export * from './doYouWantToUploadDocumentsToSupportDefendantsApplication.page.data';
export * from './hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication.page.data';
export * from './haveTheyAlreadyAppliedForHelpWithFees.page.data';
export * from './isTheCourtHearingInTheNext14Days.page.data';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,5 @@ export default {
'makeAnApplicationappliedForHelpWithFees': 'haveTheyAlreadyAppliedForHelpWithFees',
'makeAnApplicationotherPartiesAgreed': 'hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication',
'makeAnApplicationreasonsNotToShare': 'areThereAnyReasonsThatThisApplicationShouldNotBeShared',
'makeAnApplicationwhatOrderWanted': 'whatOrderDoYouWantTheCourtToMakeAndWhy'
};
Original file line number Diff line number Diff line change
@@ -1,21 +1,9 @@
export const whatOrderDoYouWantTheCourtToMakeAndWhy = {
mainHeader: `What order does the defendant want the court to make, and why?`,
makeAnApplicationParagraph: `Make an application`,
includeDetailsOfAnyFactsParagraph: `Include details of any facts or evidence that you think the court should consider when it makes a decision. You can upload your evidence on the next page.`,
explainWhatYouWantTextLabel: `Explain what you want the court to do, and why`,
youHave600CharactersHiddenHintText: `You have 6,800 characters remaining`,
includeDetailsOfAnyFactsParagraph: `Include details of any facts or evidence that you think the court should consider when it makes a decision. You can upload the evidence on the next page.`,
explainWhatYouWantTextLabel: `Explain what the defendant wants the court to do, and why`,
whatYouWantTheCourtToDoTextInput: 120,
continueButton: `Continue`,
previousButton: `Previous`,
cancelLink: `Cancel`,
backLink: `Back`,
feedbackLink: `feedback (opens in new tab)`,
pageSlug: `what-order-do-you-want-the-court-to-make-and-why`,
thereIsAProblemErrorMessageHeader: `There is a problem`,
errorValidationType: { one: `radioOptions`, two: `textField`, three: `checkBox` },
errorValidationField: {
errorTextField: [
{ type: 'empty', input: 'EMPTY', errMessage: 'Confirm the order you want the court to make, and why' },
{ type: 'moreThanMax', input: 6900, errMessage: 'Must be 6800 characters or fewer' },
],
},
};
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ import {
chooseAnApplication,
isTheCourtHearingInTheNext14Days,
selectParty, whatOrderDoYouWantTheCourtToMakeAndWhy, hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication,
areThereAnyReasonsThatThisApplicationShouldNotBeShared
areThereAnyReasonsThatThisApplicationShouldNotBeShared,
doYouWantToUploadDocumentsToSupportDefendantsApplication
} from '@data/page-data-figma/page-data-genApps-figma';
import { defendantDetails } from '@utils/actions/custom-actions/custom-actions-genApps/genApps.action';

Expand Down Expand Up @@ -102,9 +103,14 @@ test.describe('Make an Application - e2e Journey @nightly', async () => {
option: hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication.yesRadioOption,
});
await performValidation('mainHeader', whatOrderDoYouWantTheCourtToMakeAndWhy.mainHeader);
await performAction('confirmOrderDoYouWant', {
label: whatOrderDoYouWantTheCourtToMakeAndWhy.explainWhatYouWantTextLabel,
input: whatOrderDoYouWantTheCourtToMakeAndWhy.whatYouWantTheCourtToDoTextInput,
});
await performValidation('mainHeader', doYouWantToUploadDocumentsToSupportDefendantsApplication.mainHeader);
});

test('Select an Application - Ask to Adjourn journey - Court hearing 14 days[No]', async () => {
test('Select an Application - Ask to Adjourn journey - Court hearing 14 days[No] @PR', async () => {
await performAction('select', caseSummary.nextStepEventList, caseSummary.makeAnApplication);
await performAction('clickButton', caseSummary.go);
await performAction('chooseAnApplication', {
Expand Down Expand Up @@ -135,5 +141,10 @@ test('Select an Application - Ask to Adjourn journey - Court hearing 14 days[No]
input: areThereAnyReasonsThatThisApplicationShouldNotBeShared.provideReasonTextInput,
});
await performValidation('mainHeader', whatOrderDoYouWantTheCourtToMakeAndWhy.mainHeader);
await performAction('confirmOrderDoYouWant', {
label: whatOrderDoYouWantTheCourtToMakeAndWhy.explainWhatYouWantTextLabel,
input: whatOrderDoYouWantTheCourtToMakeAndWhy.whatYouWantTheCourtToDoTextInput,
});
await performValidation('mainHeader', doYouWantToUploadDocumentsToSupportDefendantsApplication.mainHeader);
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import { caseInfo } from '@utils/actions/custom-actions';
import { PageContentValidation } from '@utils/validations/element-validations/pageContent.validation';
import {
askTheCourtToSetAsideTheOrder, chooseAnApplication,
doYouWantToUploadDocumentsToSupportDefendantsApplication,
hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication,
haveTheyAlreadyAppliedForHelpWithFees, helpPayingTheFee, selectParty, whatOrderDoYouWantTheCourtToMakeAndWhy
} from "@data/page-data-figma/page-data-genApps-figma";
Expand Down Expand Up @@ -95,6 +96,11 @@ test.describe('Make an Application - e2e Journey @nightly', async () => {
option: hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication.yesRadioOption,
});
await performValidation('mainHeader', whatOrderDoYouWantTheCourtToMakeAndWhy.mainHeader);
await performAction('confirmOrderDoYouWant', {
label: whatOrderDoYouWantTheCourtToMakeAndWhy.explainWhatYouWantTextLabel,
input: whatOrderDoYouWantTheCourtToMakeAndWhy.whatYouWantTheCourtToDoTextInput,
});
await performValidation('mainHeader', doYouWantToUploadDocumentsToSupportDefendantsApplication.mainHeader);
});

});
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import { caseInfo } from '@utils/actions/custom-actions';
import { PageContentValidation } from '@utils/validations/element-validations/pageContent.validation';
import {
askTheCourtToMakeAnOrder, chooseAnApplication,
doYouWantToUploadDocumentsToSupportDefendantsApplication,
hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication,
haveTheyAlreadyAppliedForHelpWithFees, helpPayingTheFee, selectParty, whatOrderDoYouWantTheCourtToMakeAndWhy
} from "@data/page-data-figma/page-data-genApps-figma";
Expand Down Expand Up @@ -95,5 +96,10 @@ test.describe('Make an Application - e2e Journey @nightly', async () => {
option: hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication.yesRadioOption,
});
await performValidation('mainHeader', whatOrderDoYouWantTheCourtToMakeAndWhy.mainHeader);
await performAction('confirmOrderDoYouWant', {
label: whatOrderDoYouWantTheCourtToMakeAndWhy.explainWhatYouWantTextLabel,
input: whatOrderDoYouWantTheCourtToMakeAndWhy.whatYouWantTheCourtToDoTextInput,
});
await performValidation('mainHeader', doYouWantToUploadDocumentsToSupportDefendantsApplication.mainHeader);
});
});
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import {
areThereAnyReasonsThatThisApplicationShouldNotBeShared,
checkYourAnswersGenApps,
chooseAnApplication,
doYouWantToUploadDocumentToSupportYourApplication, hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication,
chooseAnApplication, doYouWantToUploadDocumentsToSupportDefendantsApplication,
hasTheDefendantAskedTheOtherPartiesAgreedToThisApplication,
haveTheyAlreadyAppliedForHelpWithFees,
helpPayingTheFee,
isTheCourtHearingInTheNext14Days,
Expand Down Expand Up @@ -184,6 +184,8 @@ export class GenAppsAction implements IAction {
}

private async confirmOrderDoYouWant(confirmOrder: actionRecord) {
await performValidation('text', { elementType: 'paragraph', text: 'Case number: ' + caseInfo.fid });
await performValidation('text', { elementType: 'paragraph', text: `Property address: ${addressInfo.buildingStreet}, ${addressInfo.townCity}, ${addressInfo.engOrWalPostcode}` });
await performAction('recordUserEntry', confirmOrder);
const userInput =
typeof confirmOrder.input === 'number'
Expand Down Expand Up @@ -444,7 +446,7 @@ export class GenAppsAction implements IAction {
label: whatOrderDoYouWantTheCourtToMakeAndWhy.explainWhatYouWantTextLabel,
input: whatOrderDoYouWantTheCourtToMakeAndWhy.whatYouWantTheCourtToDoTextInput,
});
await performValidation('mainHeader', doYouWantToUploadDocumentToSupportYourApplication.mainHeader);
await performValidation('mainHeader', doYouWantToUploadDocumentsToSupportDefendantsApplication.mainHeader);
break;
}
case 'haveYouAlreadyAppliedForHelpWithYourApplicationFee': {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,11 @@ public class XuiGenAppRequest implements GenAppRequest {
)
private String withoutNoticeReason;

@CCD(max = 6800)
@CCD(
label = "Explain what the defendant wants the court to do, and why",
typeOverride = FieldType.TextArea,
max = 6800
Comment thread
scottstewart-sl marked this conversation as resolved.
)
private String whatOrderWanted;

private VerticalYesNo hasSupportingDocuments;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,38 @@
import lombok.extern.slf4j.Slf4j;
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.genapp.GenAppType;
import uk.gov.hmcts.reform.pcs.ccd.domain.genapp.XuiGenAppRequest;

import static uk.gov.hmcts.reform.pcs.ccd.ShowConditions.fieldEquals;

@Slf4j
@AllArgsConstructor
public class WhatOrderWanted implements CcdPageConfiguration {

private static final String PLACEHOLDER = """
<div class="govuk-notification-banner" role="region" aria-labelledby="placeholder-banner">
<div class="govuk-notification-banner__content">
<p class="govuk-notification-banner__heading" id="placeholder-banner">
Placeholder
</p>
</div>
</div>
private static final String SOMETHING_ELSE_EXAMPLES = """
<p class="govuk-body govuk-!-margin-bottom-1">For example, tell the court:</p>

<ul class="govuk-list govuk-list--bullet">
<li class="govuk-!-font-size-19">why the defendant wants to add someone to their claim</li>
<li class="govuk-!-font-size-19">why they should not be sanctioned (punished)</li>
<li class="govuk-!-font-size-19">why the defendant wants to transfer to the High Court for enforcement</li>
</ul>
""";
private static final String ADJOURN_EXAMPLES = """
<p class="govuk-body govuk-!-margin-bottom-1">For example, tell the court:</p>

<ul class="govuk-list govuk-list--bullet">
<li class="govuk-!-font-size-19">the defendant is unable to attend the hearing due a pre-existing
medical appointment</li>
<li class="govuk-!-font-size-19">they are attending a funeral</li>
</ul>
""";

private static final String INFO_MARKDOWN = """
<p class="govuk-body">Include details of any facts or evidence that you think the court should
consider when it makes a decision. You can upload the evidence on the next page.</p>
""";

@Override
Expand All @@ -25,7 +44,14 @@ public void addTo(PageBuilder pageBuilder) {
.page("whatOrderWanted")
.pageLabel("What order does the defendant want the court to make, and why?")
.label("whatOrderWanted-lineSeparator", "---")
.label("whatOrderWanted-placeholder", PLACEHOLDER);
.label("whatOrderWanted-somethingElse", SOMETHING_ELSE_EXAMPLES,
fieldEquals("xui_genapp_ApplicationType", GenAppType.SOMETHING_ELSE))
.label("whatOrderWanted-adjourn", ADJOURN_EXAMPLES,
fieldEquals("xui_genapp_ApplicationType", GenAppType.ADJOURN))
.label("whatOrderWanted-info", INFO_MARKDOWN)
.complex(PCSCase::getXuiGenAppRequest)
.mandatory(XuiGenAppRequest::getWhatOrderWanted)
.done();
}

}