From dc5c65de71fbab88708f59ac4e08960ef23f9ebd Mon Sep 17 00:00:00 2001 From: Ana Medrano Fernandez <8609011+analoo@users.noreply.github.com> Date: Sat, 4 Jan 2025 09:18:26 +1030 Subject: [PATCH] [CCAP-518] - registration convictions screen (#971) --- .../ilgcc/app/inputs/Providerresponse.java | 2 + .../app/pdf/ProviderApplicationPreparer.java | 3 +- .../conditions/ProviderHasConviction.java | 13 +++++++ src/main/resources/flows-config.yaml | 2 + src/main/resources/messages.properties | 9 ++++- src/main/resources/pdf-map.yaml | 1 + .../registration-convictions-info.html | 4 +- .../registration-convictions.html | 16 +++++--- .../registration-household-members.html | 4 +- ...sponseProviderRegistrationJourneyTest.java | 38 ++++++++++++------- ...ProviderApplicationPreparerFlagOnTest.java | 7 ++++ 11 files changed, 73 insertions(+), 26 deletions(-) create mode 100644 src/main/java/org/ilgcc/app/submission/conditions/ProviderHasConviction.java diff --git a/src/main/java/org/ilgcc/app/inputs/Providerresponse.java b/src/main/java/org/ilgcc/app/inputs/Providerresponse.java index ea82808a9..58a45fd8e 100644 --- a/src/main/java/org/ilgcc/app/inputs/Providerresponse.java +++ b/src/main/java/org/ilgcc/app/inputs/Providerresponse.java @@ -90,4 +90,6 @@ public class Providerresponse extends FlowInputs { private String providerIdentityCheckSSN; private String providerType; + + private String providerConviction; } diff --git a/src/main/java/org/ilgcc/app/pdf/ProviderApplicationPreparer.java b/src/main/java/org/ilgcc/app/pdf/ProviderApplicationPreparer.java index 87ec6b0b7..7443353b5 100644 --- a/src/main/java/org/ilgcc/app/pdf/ProviderApplicationPreparer.java +++ b/src/main/java/org/ilgcc/app/pdf/ProviderApplicationPreparer.java @@ -68,7 +68,8 @@ private Map prepareProviderResponse(Submission submissi "providerResponseBusinessName", "providerResponseContactPhoneNumber", "providerResponseContactEmail", - "providerIdentityCheckSSN" + "providerIdentityCheckSSN", + "providerConviction" ); Submission providerSubmission = providerSubmissionFromId(submission).get(); diff --git a/src/main/java/org/ilgcc/app/submission/conditions/ProviderHasConviction.java b/src/main/java/org/ilgcc/app/submission/conditions/ProviderHasConviction.java new file mode 100644 index 000000000..ecc7d08b7 --- /dev/null +++ b/src/main/java/org/ilgcc/app/submission/conditions/ProviderHasConviction.java @@ -0,0 +1,13 @@ +package org.ilgcc.app.submission.conditions; + +import formflow.library.data.Submission; +import org.springframework.stereotype.Component; + +@Component +public class ProviderHasConviction extends BasicCondition { + + @Override + public Boolean run(Submission submission) { + return run(submission, "providerConviction", "true"); + } +} diff --git a/src/main/resources/flows-config.yaml b/src/main/resources/flows-config.yaml index 338fa969b..41954f78c 100644 --- a/src/main/resources/flows-config.yaml +++ b/src/main/resources/flows-config.yaml @@ -709,6 +709,8 @@ flow: condition: EnableProviderRegistration nextScreens: - name: registration-convictions-info + condition: ProviderHasConviction + - name: registration-household-members registration-convictions-info: condition: EnableProviderRegistration nextScreens: diff --git a/src/main/resources/messages.properties b/src/main/resources/messages.properties index 298cdf61e..0888df564 100644 --- a/src/main/resources/messages.properties +++ b/src/main/resources/messages.properties @@ -1390,8 +1390,13 @@ registration-checks-trainings-notice.accordion.body2.ul1=You may need to do trai registration-checks-trainings-notice.accordion.body2.li1=CPR and first aid registration-checks-trainings-notice.accordion.body2.li2=Annual health and safety registration-checks-trainings-notice.accordion.body2.li3=Child abuse and neglect - # registration-convictions registration-convictions.title=Past convictions -======= +registration-convictions.header=Have you ever been convicted of anything other than a minor traffic violation? +registration-convictions.subtext=We're sorry to ask about this sensitive subject. This information is required to help decide if you are eligible to be a CCAP child provider. + +# registration-convictions-info +registration-convictions-info.title=Past conviction details +# registration-household-members +registration-household-members.title=Household people \ No newline at end of file diff --git a/src/main/resources/pdf-map.yaml b/src/main/resources/pdf-map.yaml index 520055575..da3e970d8 100644 --- a/src/main/resources/pdf-map.yaml +++ b/src/main/resources/pdf-map.yaml @@ -165,6 +165,7 @@ inputFields: providerLicenseNumber: PROVIDER_LICENSE_NUMBER providerType: PROVIDER_TYPE providerIdentityCheckSSN: PROVIDER_SSN + providerConviction: PROVIDER_CONVICTION providerSignature: PROVIDER_SIGNATURE providerSignatureDate: PROVIDER_SIGNATURE_DATE clientResponseConfirmationCode: APPLICATION_CONFIRMATION_CODE diff --git a/src/main/resources/templates/providerresponse/registration-convictions-info.html b/src/main/resources/templates/providerresponse/registration-convictions-info.html index f0a9702ef..338f9b512 100644 --- a/src/main/resources/templates/providerresponse/registration-convictions-info.html +++ b/src/main/resources/templates/providerresponse/registration-convictions-info.html @@ -1,6 +1,6 @@ - +
@@ -8,7 +8,7 @@
- +
diff --git a/src/main/resources/templates/providerresponse/registration-convictions.html b/src/main/resources/templates/providerresponse/registration-convictions.html index 3ead9f929..6a14b2d1a 100644 --- a/src/main/resources/templates/providerresponse/registration-convictions.html +++ b/src/main/resources/templates/providerresponse/registration-convictions.html @@ -8,14 +8,16 @@
- + +
- -
-
@@ -25,4 +27,6 @@
- \ No newline at end of file + + +cfa:ye \ No newline at end of file diff --git a/src/main/resources/templates/providerresponse/registration-household-members.html b/src/main/resources/templates/providerresponse/registration-household-members.html index f0a9702ef..9d273e1fa 100644 --- a/src/main/resources/templates/providerresponse/registration-household-members.html +++ b/src/main/resources/templates/providerresponse/registration-household-members.html @@ -1,6 +1,6 @@ - +
@@ -8,7 +8,7 @@
- +
diff --git a/src/test/java/org/ilgcc/app/journeys/ProviderresponseProviderRegistrationJourneyTest.java b/src/test/java/org/ilgcc/app/journeys/ProviderresponseProviderRegistrationJourneyTest.java index d73d43faf..80fc9f206 100644 --- a/src/test/java/org/ilgcc/app/journeys/ProviderresponseProviderRegistrationJourneyTest.java +++ b/src/test/java/org/ilgcc/app/journeys/ProviderresponseProviderRegistrationJourneyTest.java @@ -179,7 +179,6 @@ void LicenseExemptInProviderHomeFlow() { testPage.clickContinue(); // registration-home-provider-dob - // registration-checks-trainings-intro testPage.navigateToFlowScreen("providerresponse/registration-checks-trainings-intro"); @@ -193,7 +192,10 @@ void LicenseExemptInProviderHomeFlow() { // registration-convictions assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions.title")); - testPage.clickContinue(); + testPage.clickYes(); + + // registration-convictions-info + assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions-info.title")); } @Test @@ -270,7 +272,6 @@ void LicenseExemptInChildHomeFlow() { testPage.clickContinue(); // registration-home-provider-dob - // registration-checks-trainings-intro testPage.navigateToFlowScreen("providerresponse/registration-checks-trainings-intro"); @@ -284,7 +285,10 @@ void LicenseExemptInChildHomeFlow() { // registration-convictions assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions.title")); - testPage.clickContinue(); + testPage.clickNo(); + + // Skips registration-convictions-info + assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-household-members.title")); } @Test @@ -356,8 +360,6 @@ void LicensedChildCareHomeFlow() { testPage.clickContinue(); // registration-home-provider-dob - - // registration-checks-trainings-intro testPage.navigateToFlowScreen("providerresponse/registration-checks-trainings-intro"); @@ -369,7 +371,10 @@ void LicensedChildCareHomeFlow() { // registration-convictions assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions.title")); - testPage.clickContinue(); + testPage.clickYes(); + + // registration-convictions-info + assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions-info.title")); } @Test @@ -435,7 +440,6 @@ void LicensedChildCareCenterFlow() { // registration-home-provider-dob - // registration-checks-trainings-intro testPage.navigateToFlowScreen("providerresponse/registration-checks-trainings-intro"); @@ -447,8 +451,12 @@ void LicensedChildCareCenterFlow() { // registration-convictions assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions.title")); - testPage.clickContinue(); + testPage.clickNo(); + + // Skips registration-convictions-info + assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-household-members.title")); } + @Test void LicensedGroupChildCareCenterFlow() { createAValidLink(); @@ -518,7 +526,6 @@ void LicensedGroupChildCareCenterFlow() { testPage.clickContinue(); // registration-home-provider-dob - // registration-checks-trainings-intro testPage.navigateToFlowScreen("providerresponse/registration-checks-trainings-intro"); @@ -530,7 +537,10 @@ void LicensedGroupChildCareCenterFlow() { // registration-convictions assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions.title")); - testPage.clickContinue(); + testPage.clickYes(); + + // registration-convictions-info + assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions-info.title")); } @Test @@ -630,7 +640,6 @@ void LicenseExemptChildCareCenter() { // registration-home-provider-dob - // registration-checks-trainings-intro testPage.navigateToFlowScreen("providerresponse/registration-checks-trainings-intro"); @@ -644,7 +653,10 @@ void LicenseExemptChildCareCenter() { // registration-convictions assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions.title")); - testPage.clickContinue(); + testPage.clickYes(); + + // registration-convictions-info + assertThat(testPage.getTitle()).isEqualTo(getEnMessage("registration-convictions-info.title")); } private void createAValidLink() { diff --git a/src/test/java/org/ilgcc/app/pdf/ProviderApplicationPreparerFlagOnTest.java b/src/test/java/org/ilgcc/app/pdf/ProviderApplicationPreparerFlagOnTest.java index 0825ef483..c674ab0c9 100644 --- a/src/test/java/org/ilgcc/app/pdf/ProviderApplicationPreparerFlagOnTest.java +++ b/src/test/java/org/ilgcc/app/pdf/ProviderApplicationPreparerFlagOnTest.java @@ -90,6 +90,8 @@ public void setsValidatedAddressWhenSelected() { .with("providerMailingCity_validated", "Chicago") .with("providerMailingState_validated", "IL") .with("providerMailingZipCode_validated", "60115-1234") + .with("providerIdentityCheckSSN", "123-23-2424") + .with("providerConviction", "true") .build(); submissionRepositoryService.save(providerSubmission); @@ -141,6 +143,11 @@ public void setsValidatedAddressWhenSelected() { assertThat(result.get("providerResponseContactEmail")).isEqualTo( new SingleField("providerResponseContactEmail", "mail@daycareplace.org", null)); + assertThat(result.get("providerIdentityCheckSSN")).isEqualTo( + new SingleField("providerIdentityCheckSSN", "123-23-2424", null)); + assertThat(result.get("providerConviction")).isEqualTo( + new SingleField("providerConviction", "true", null)); + } @Test