From 46cf4ddafa403d32078f4e8281649bf2b04b4a9a Mon Sep 17 00:00:00 2001 From: Vraj Mohan Date: Wed, 31 Jan 2024 17:33:26 -0800 Subject: [PATCH] Add conviction-related sensitive questions --- .../mdbenefits/app/inputs/MdBenefitsFlow.java | 8 ++++ .../preparers/ApplicantDetailsPreparer.java | 17 +++++++ .../SetDefaultSensitiveConvictionAnswers.java | 32 +++++++++++++ src/main/resources/flows-config.yaml | 7 +++ src/main/resources/messages.properties | 16 +++++++ src/main/resources/pdf-map.yaml | 16 +++++++ src/main/resources/pdfs/9701.pdf | Bin 721428 -> 833043 bytes .../sensitiveConvictionQuestions.html | 42 ++++++++++++++++++ .../sensitiveConvictionQuestionsIntro.html | 22 +++++++++ .../journeys/MdBenefitsFlowJourneyTest.java | 6 +++ .../mdbenefits/app/pdf/PdfServiceTest.java | 3 ++ 11 files changed, 169 insertions(+) create mode 100644 src/main/java/org/mdbenefits/app/submission/actions/SetDefaultSensitiveConvictionAnswers.java create mode 100644 src/main/resources/templates/mdBenefitsFlow/sensitiveConvictionQuestions.html create mode 100644 src/main/resources/templates/mdBenefitsFlow/sensitiveConvictionQuestionsIntro.html diff --git a/src/main/java/org/mdbenefits/app/inputs/MdBenefitsFlow.java b/src/main/java/org/mdbenefits/app/inputs/MdBenefitsFlow.java index fb70b10c..1cbad526 100644 --- a/src/main/java/org/mdbenefits/app/inputs/MdBenefitsFlow.java +++ b/src/main/java/org/mdbenefits/app/inputs/MdBenefitsFlow.java @@ -403,4 +403,12 @@ public class MdBenefitsFlow extends FlowInputs { @NotBlank(message = "{doc-type.select-a-type}") @DynamicField private String docType; + + private String noOneHasDrugKingpinFelony; + private String noOneHasVolumeDrugDealerFelony; + private String noOneHasSexualOffenceConviction; + private String noOneIsViolatingParole; + private String noOneConvictedForLyingAboutBenefits; + private String noOneConvictedForTradingBenefits; + private String noOneIsReceivingBenefitsWithFakeID; } diff --git a/src/main/java/org/mdbenefits/app/preparers/ApplicantDetailsPreparer.java b/src/main/java/org/mdbenefits/app/preparers/ApplicantDetailsPreparer.java index a85e3efa..8811a6f9 100644 --- a/src/main/java/org/mdbenefits/app/preparers/ApplicantDetailsPreparer.java +++ b/src/main/java/org/mdbenefits/app/preparers/ApplicantDetailsPreparer.java @@ -11,10 +11,13 @@ import java.util.List; import java.util.Map; import java.util.stream.Stream; +import lombok.extern.slf4j.Slf4j; +import org.mdbenefits.app.submission.actions.SetDefaultSensitiveConvictionAnswers; import org.mdbenefits.app.utils.SubmissionUtilities; import org.springframework.stereotype.Component; @Component +@Slf4j public class ApplicantDetailsPreparer implements SubmissionFieldPreparer { @Override @@ -36,6 +39,20 @@ public Map prepareSubmissionFields(Submission submissio results.put("applicantSSN", new SingleField("applicantSSN", SubmissionUtilities.formatSSN((String) inputData.get("encryptedSSN")), null)); results.put("speaksEnglish", new SingleField("speaksEnglish", (String) "Yes", null)); + prepareAnswersToSensitiveQuestions(inputData, results); return results; } + + private static void prepareAnswersToSensitiveQuestions(Map inputData, Map results) { + for (String question : SetDefaultSensitiveConvictionAnswers.SENSITIVE_CONVICTION_QUESTIONS) { + String yesField = "noOne" + question; + String noField = "someone" + question; + List response = (List) inputData.get(yesField + "[]"); + if (response != null && response.contains("true")) { + results.put(yesField, new SingleField(yesField, "Yes", null)); + } else { + results.put(noField, new SingleField(noField, "Yes", null)); + } + } + } } diff --git a/src/main/java/org/mdbenefits/app/submission/actions/SetDefaultSensitiveConvictionAnswers.java b/src/main/java/org/mdbenefits/app/submission/actions/SetDefaultSensitiveConvictionAnswers.java new file mode 100644 index 00000000..011ab3e8 --- /dev/null +++ b/src/main/java/org/mdbenefits/app/submission/actions/SetDefaultSensitiveConvictionAnswers.java @@ -0,0 +1,32 @@ +package org.mdbenefits.app.submission.actions; + +import formflow.library.config.submission.Action; +import formflow.library.data.Submission; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import lombok.extern.slf4j.Slf4j; +import org.mdbenefits.app.utils.HouseholdUtilities; +import org.springframework.stereotype.Component; + +/** + * + */ +@Component +@Slf4j +public class SetDefaultSensitiveConvictionAnswers implements Action { + public static final String[] SENSITIVE_CONVICTION_QUESTIONS = { + "HasDrugKingpinFelony", + "HasVolumeDrugDealerFelony", + "HasSexualOffenceConviction", + "IsViolatingParole", + "ConvictedForLyingAboutBenefits", + "ConvictedForTradingBenefits", + "IsReceivingBenefitsWithFakeID" + }; + + @Override + public void run(Submission submission) { + Arrays.stream(SENSITIVE_CONVICTION_QUESTIONS).forEach(s -> submission.getInputData().putIfAbsent("noOne" + s + "[]", "true")); + } +} diff --git a/src/main/resources/flows-config.yaml b/src/main/resources/flows-config.yaml index e55730c2..59e26613 100644 --- a/src/main/resources/flows-config.yaml +++ b/src/main/resources/flows-config.yaml @@ -409,6 +409,13 @@ flow: nextScreens: - name: legalStuff legalStuff: + nextScreens: + - name: sensitiveConvictionQuestionsIntro + sensitiveConvictionQuestionsIntro: + nextScreens: + - name: sensitiveConvictionQuestions + sensitiveConvictionQuestions: + beforeDisplayAction: SetDefaultSensitiveConvictionAnswers nextScreens: - name: rightsAndResponsibilities rightsAndResponsibilities: diff --git a/src/main/resources/messages.properties b/src/main/resources/messages.properties index 1497ce76..e186881e 100644 --- a/src/main/resources/messages.properties +++ b/src/main/resources/messages.properties @@ -1002,6 +1002,22 @@ legal-stuff.answer-legal-question=Answer legal questions legal-stuff.review-legal-agreements=Review legal agreements legal-stuff.sign-and-submit=Sign and submit +sensitive-conviction-questions.title=Sensitive Questions +sensitive-conviction-questions.header=Please check what is true for you and everyone in your household +sensitive-conviction-questions.subtext=If any statements are not true, you can talk to a case worker after submitting your application to see who is able to get benefits. + +sensitive-conviction-question-HasDrugKingpinFelony=No one has been convicted of a felony that involved conspiring to supervise, organize, finance, or manage the making, transporting, or selling of controlled substances in the State on or after August 22, 1996. +sensitive-conviction-question-HasVolumeDrugDealerFelony=No one has been convicted of a felony that involved making, distributing, dispensing, or possessing controlled substances on or after August 22, 1996. +sensitive-conviction-question-HasSexualOffenceConviction=No one has been convicted abuse, assault, murder, or exploitation after February 7, 2014 and is not compliant with the terms of their sentence. +sensitive-conviction-question-IsViolatingParole=No one is violating parole, probation or fleeing from police or the courts. +sensitive-conviction-question-ConvictedForLyingAboutBenefits=Since August 22, 1996, no one has been convicted in courts of lying about where they lived or their identity in order to receive food benefits or cash assistance from multiple places in the same month. +sensitive-conviction-question-ConvictedForTradingBenefits=No one has been convicted in a court for trafficking $500 or more of food benefits. +sensitive-conviction-question-IsReceivingBenefitsWithFakeID=No one is getting food or cash benefits under a different identity or as a member of another household in another State. +sensitive-conviction-question-true=True + +sensitive-conviction-questions-intro.title=Sensitive Questions Intro +sensitive-conviction-questions-intro.header=Sensitive questions +sensitive-conviction-questions-intro.subtext=Next, we will ask you questions that may be sensitive.

It's important to be honest so we can give you and your household the benefits you're entitled to get. rights-and-responsibilities-title=Legal Stuff rights-and-responsibilities-header1=The legal stuff diff --git a/src/main/resources/pdf-map.yaml b/src/main/resources/pdf-map.yaml index 9bc176e1..07cc70fa 100644 --- a/src/main/resources/pdf-map.yaml +++ b/src/main/resources/pdf-map.yaml @@ -26,6 +26,22 @@ inputFields: mailingAddress: mailingAddress signature: signature sex: applicantSex + + someoneHasDrugKingpinFelony: someoneHasDrugKingpinFelony + noOneHasDrugKingpinFelony: noOneHasDrugKingpinFelony + someoneHasVolumeDrugDealerFelony: someoneHasVolumeDrugDealerFelony + noOneHasVolumeDrugDealerFelony: noOneHasVolumeDrugDealerFelony + someoneHasSexualOffenceConviction: someoneHasSexualOffenceConviction + noOneHasSexualOffenceConviction: noOneHasSexualOffenceConviction + someoneIsViolatingParole: someoneIsViolatingParole + noOneIsViolatingParole: noOneIsViolatingParole + someoneConvictedForLyingAboutBenefits: someoneConvictedForLyingAboutBenefits + noOneConvictedForLyingAboutBenefits: noOneConvictedForLyingAboutBenefits + someoneConvictedForTradingBenefits: someoneConvictedForTradingBenefits + noOneConvictedForTradingBenefits: noOneConvictedForTradingBenefits + someoneIsReceivingBenefitsWithFakeID: someoneIsReceivingBenefitsWithFakeID + noOneIsReceivingBenefitsWithFakeID: noOneIsReceivingBenefitsWithFakeID + # Vraj - Usable to here diff --git a/src/main/resources/pdfs/9701.pdf b/src/main/resources/pdfs/9701.pdf index 76bcd94653edc627afa019aaad0eba755c74e7cb..0e57aa366258854824215200f6b315c4030aa3b3 100644 GIT binary patch delta 23660 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 oNq$f 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 + + + +
+
+
+
+
+
+ + + +
+
+ + + + +
+
+ +
+
+
+
+
+
+
+ + + diff --git a/src/main/resources/templates/mdBenefitsFlow/sensitiveConvictionQuestionsIntro.html b/src/main/resources/templates/mdBenefitsFlow/sensitiveConvictionQuestionsIntro.html new file mode 100644 index 00000000..3fa2c849 --- /dev/null +++ b/src/main/resources/templates/mdBenefitsFlow/sensitiveConvictionQuestionsIntro.html @@ -0,0 +1,22 @@ + + + + +
+
+
+
+
+
+ + +
+
+
+
+ + + diff --git a/src/test/java/org/mdbenefits/app/journeys/MdBenefitsFlowJourneyTest.java b/src/test/java/org/mdbenefits/app/journeys/MdBenefitsFlowJourneyTest.java index 208f20ff..53926c81 100644 --- a/src/test/java/org/mdbenefits/app/journeys/MdBenefitsFlowJourneyTest.java +++ b/src/test/java/org/mdbenefits/app/journeys/MdBenefitsFlowJourneyTest.java @@ -754,6 +754,12 @@ void completeFlow() { assertThat(testPage.getTitle()).isEqualTo(message("legal-stuff.title")); testPage.clickContinue(); + assertThat(testPage.getTitle()).isEqualTo(message("sensitive-conviction-questions-intro.title")); + testPage.clickContinue(); + + assertThat(testPage.getTitle()).isEqualTo(message("sensitive-conviction-questions.title")); + testPage.clickContinue(); + assertThat(testPage.getTitle()).isEqualTo(message("rights-and-responsibilities-title")); testPage.clickElementById("rightsAndResponsibilitiesAgree-true"); testPage.clickElementById("noIncorrectInformationAgree-true"); diff --git a/src/test/java/org/mdbenefits/app/pdf/PdfServiceTest.java b/src/test/java/org/mdbenefits/app/pdf/PdfServiceTest.java index 280498b8..a520a73e 100644 --- a/src/test/java/org/mdbenefits/app/pdf/PdfServiceTest.java +++ b/src/test/java/org/mdbenefits/app/pdf/PdfServiceTest.java @@ -9,6 +9,7 @@ import formflow.library.pdf.PdfService; import java.io.File; import java.io.IOException; +import java.util.List; import java.util.Map; import org.junit.jupiter.api.Test; import org.mdbenefits.app.data.SubmissionTestBuilder; @@ -37,6 +38,8 @@ void generate() throws IOException { .with("homeAddressZipCode", "94103") .with("phoneNumber", "(510) 555-1212") .with("signature", "John Hancock") + .with("noOneIsReceivingBenefitsWithFakeID[]", List.of("true")) + .with("noOneHasDrugKingpinFelony[]", List.of()) .build(); submission.setFlow("mdBenefitsFlow");