Skip to content

Commit

Permalink
[CCAP-508] - Allows sda15 provider zipcodes when feature flag is on (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
analoo authored Jan 27, 2025
1 parent 2df28b3 commit 106776b
Show file tree
Hide file tree
Showing 7 changed files with 312 additions and 846 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import java.util.Map;
import org.ilgcc.app.utils.ZipcodeOption;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.MessageSource;
import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.stereotype.Component;
Expand All @@ -24,6 +25,9 @@ public class ValidateZipCode implements Action {
private final String INPUT_NAME = "applicationZipCode";
private static final String OUTPUT_NAME = "hasValidZipCode";

@Value("${il-gcc.enable-sda15-providers}")
boolean enableSDA15Providers;


@Override
public Map<String, List<String>> runValidation(FormSubmission formSubmission, Submission submission) {
Expand All @@ -36,11 +40,8 @@ public Map<String, List<String>> runValidation(FormSubmission formSubmission, Su
errorMessages.put(INPUT_NAME,
List.of(messageSource.getMessage("errors.provide-zip", null, locale)));
} else {
if (!ZipcodeOption.isValidZipcodeOption(providedZipCode)) {
submission.getInputData().put(OUTPUT_NAME, "false");
} else {
submission.getInputData().put(OUTPUT_NAME, "true");
}
submission.getInputData()
.put(OUTPUT_NAME, String.valueOf(ZipcodeOption.isValidZipcodeOption(providedZipCode, enableSDA15Providers)));
}

return errorMessages;
Expand Down
187 changes: 97 additions & 90 deletions src/main/java/org/ilgcc/app/utils/ZipcodeOption.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Stream;

public enum ZipcodeOption implements InputOption {
zip_60001("60001", "BB", true),
Expand Down Expand Up @@ -89,94 +90,98 @@ public enum ZipcodeOption implements InputOption {
zip_61353("61353", "BB", true),
zip_61367("61367", "BB", true),
zip_61378("61378", "BB", true),
zip_62011("62011", "QQ", false),
zip_62080("62080", "QQ", false),
zip_62401("62401", "QQ", false),
zip_62410("62410", "QQ", false),
zip_62411("62411", "QQ", false),
zip_62413("62413", "QQ", false),
zip_62414("62414", "QQ", false),
zip_62417("62417", "QQ", false),
zip_62418("62418", "QQ", false),
zip_62419("62419", "QQ", false),
zip_62421("62421", "QQ", false),
zip_62424("62424", "QQ", false),
zip_62425("62425", "QQ", false),
zip_62426("62426", "QQ", false),
zip_62427("62427", "QQ", false),
zip_62432("62432", "QQ", false),
zip_62433("62433", "QQ", false),
zip_62434("62434", "QQ", false),
zip_62439("62439", "QQ", false),
zip_62443("62443", "QQ", false),
zip_62445("62445", "QQ", false),
zip_62446("62446", "QQ", false),
zip_62448("62448", "QQ", false),
zip_62449("62449", "QQ", false),
zip_62450("62450", "QQ", false),
zip_62451("62451", "QQ", false),
zip_62452("62452", "QQ", false),
zip_62454("62454", "QQ", false),
zip_62458("62458", "QQ", false),
zip_62460("62460", "QQ", false),
zip_62461("62461", "QQ", false),
zip_62466("62466", "QQ", false),
zip_62467("62467", "QQ", false),
zip_62471("62471", "QQ", false),
zip_62473("62473", "QQ", false),
zip_62475("62475", "QQ", false),
zip_62476("62476", "QQ", false),
zip_62478("62478", "QQ", false),
zip_62479("62479", "QQ", false),
zip_62480("62480", "QQ", false),
zip_62481("62481", "QQ", false),
zip_62801("62801", "QQ", false),
zip_62806("62806", "QQ", false),
zip_62807("62807", "QQ", false),
zip_62809("62809", "QQ", false),
zip_62810("62810", "QQ", false),
zip_62811("62811", "QQ", false),
zip_62814("62814", "QQ", false),
zip_62815("62815", "QQ", false),
zip_62816("62816", "QQ", false),
zip_62818("62818", "QQ", false),
zip_62823("62823", "QQ", false),
zip_62824("62824", "QQ", false),
zip_62830("62830", "QQ", false),
zip_62833("62833", "QQ", false),
zip_62837("62837", "QQ", false),
zip_62838("62838", "QQ", false),
zip_62839("62839", "QQ", false),
zip_62842("62842", "QQ", false),
zip_62843("62843", "QQ", false),
zip_62846("62846", "QQ", false),
zip_62849("62849", "QQ", false),
zip_62850("62850", "QQ", false),
zip_62851("62851", "QQ", false),
zip_62853("62853", "QQ", false),
zip_62854("62854", "QQ", false),
zip_62858("62858", "QQ", false),
zip_62863("62863", "QQ", false),
zip_62864("62864", "QQ", false),
zip_62868("62868", "QQ", false),
zip_62870("62870", "QQ", false),
zip_62872("62872", "QQ", false),
zip_62875("62875", "QQ", false),
zip_62878("62878", "QQ", false),
zip_62879("62879", "QQ", false),
zip_62880("62880", "QQ", false),
zip_62881("62881", "QQ", false),
zip_62882("62882", "QQ", false),
zip_62883("62883", "QQ", false),
zip_62885("62885", "QQ", false),
zip_62886("62886", "QQ", false),
zip_62889("62889", "QQ", false),
zip_62892("62892", "QQ", false),
zip_62893("62893", "QQ", false),
zip_62894("62894", "QQ", false),
zip_62895("62895", "QQ", false),
zip_62898("62898", "QQ", false),
zip_62899("62899", "QQ", false),
zip_62011("62011", "QQ", true),
zip_62080("62080", "QQ", true),
zip_62401("62401", "QQ", true),
zip_62410("62410", "QQ", true),
zip_62411("62411", "QQ", true),
zip_62413("62413", "QQ", true),
zip_62414("62414", "QQ", true),
zip_62417("62417", "QQ", true),
zip_62418("62418", "QQ", true),
zip_62419("62419", "QQ", true),
zip_62421("62421", "QQ", true),
zip_62424("62424", "QQ", true),
zip_62425("62425", "QQ", true),
zip_62426("62426", "QQ", true),
zip_62427("62427", "QQ", true),
zip_62432("62432", "QQ", true),
zip_62433("62433", "QQ", true),
zip_62434("62434", "QQ", true),
zip_62439("62439", "QQ", true),
zip_62443("62443", "QQ", true),
zip_62445("62445", "QQ", true),
zip_62446("62446", "QQ", true),
zip_62448("62448", "QQ", true),
zip_62449("62449", "QQ", true),
zip_62450("62450", "QQ", true),
zip_62451("62451", "QQ", true),
zip_62452("62452", "QQ", true),
zip_62454("62454", "QQ", true),
zip_62458("62458", "QQ", true),
zip_62460("62460", "QQ", true),
zip_62461("62461", "QQ", true),
zip_62466("62466", "QQ", true),
zip_62467("62467", "QQ", true),
zip_62471("62471", "QQ", true),
zip_62473("62473", "QQ", true),
zip_62475("62475", "QQ", true),
zip_62476("62476", "QQ", true),
zip_62478("62478", "QQ", true),
zip_62479("62479", "QQ", true),
zip_62480("62480", "QQ", true),
zip_62481("62481", "QQ", true),
zip_62801("62801", "QQ", true),
zip_62806("62806", "QQ", true),
zip_62807("62807", "QQ", true),
zip_62809("62809", "QQ", true),
zip_62810("62810", "QQ", true),
zip_62811("62811", "QQ", true),
zip_62814("62814", "QQ", true),
zip_62815("62815", "QQ", true),
zip_62816("62816", "QQ", true),
zip_62818("62818", "QQ", true),
zip_62823("62823", "QQ", true),
zip_62824("62824", "QQ", true),
zip_62830("62830", "QQ", true),
zip_62833("62833", "QQ", true),
zip_62837("62837", "QQ", true),
zip_62838("62838", "QQ", true),
zip_62839("62839", "QQ", true),
zip_62842("62842", "QQ", true),
zip_62843("62843", "QQ", true),
zip_62846("62846", "QQ", true),
zip_62849("62849", "QQ", true),
zip_62850("62850", "QQ", true),
zip_62851("62851", "QQ", true),
zip_62853("62853", "QQ", true),
zip_62854("62854", "QQ", true),
zip_62858("62858", "QQ", true),
zip_62863("62863", "QQ", true),
zip_62864("62864", "QQ", true),
zip_62868("62868", "QQ", true),
zip_62870("62870", "QQ", true),
zip_62872("62872", "QQ", true),
zip_62875("62875", "QQ", true),
zip_62878("62878", "QQ", true),
zip_62879("62879", "QQ", true),
zip_62880("62880", "QQ", true),
zip_62881("62881", "QQ", true),
zip_62882("62882", "QQ", true),
zip_62883("62883", "QQ", true),
zip_62885("62885", "QQ", true),
zip_62886("62886", "QQ", true),
zip_62889("62889", "QQ", true),
zip_62892("62892", "QQ", true),
zip_62893("62893", "QQ", true),
zip_62894("62894", "QQ", true),
zip_62895("62895", "QQ", true),
zip_62898("62898", "QQ", true),
zip_62464("62464", "QQ", true),
zip_62459("62459", "QQ", true),
zip_62852("62852", "QQ", true),
zip_62866("62866", "QQ", true),
zip_62899("62899", "QQ", true),
zip_60004("60004", "GG", false),
zip_60005("60005", "GG", false),
zip_60006("60006", "GG", false),
Expand Down Expand Up @@ -384,8 +389,10 @@ public String getHelpText() {
return null;
}

public static Boolean isValidZipcodeOption(String zipcode) {
return Arrays.stream(ZipcodeOption.values()).anyMatch(zip -> zip.value.equals(zipcode) && zip.active);
public static Boolean isValidZipcodeOption(String zipcode, Boolean includeSDA15) {
return Arrays.stream(ZipcodeOption.values()).filter(zip -> zip.active)
.filter(zip -> includeSDA15 ? zip.caseloadCode.equals("BB") || zip.caseloadCode.equals("QQ")
: zip.caseloadCode.equals("BB")).anyMatch(zip -> zip.value.equals(zipcode));
}

public static Optional<String> getCaseLoadCodeByZipCode(String zipcode) {
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/templates/fragments/gcc-icons.html
Original file line number Diff line number Diff line change
Expand Up @@ -1327,7 +1327,7 @@ <h1>GCC Icons (Matches Figma Icon Name)</h1>
<tr>
<td>income-person</td>
<td>
<svg th:fragment="important-notice" aria-hidden="true" width="100" height="75" viewBox="0 0 100 75" fill="none" xmlns="http://www.w3.org/2000/svg">
<svg th:fragment="income-person" aria-hidden="true" width="100" height="75" viewBox="0 0 100 75" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M77.5323 64.0161C71.4547 69.0396 63.2557 69.5292 55.473 70.8791C47.531 72.2566 39.4632 74.7579 31.8906 71.9325C23.8233 68.9224 16.7202 62.9052 13.1252 55.0783C9.60268 47.4091 11.1522 38.6751 12.8286 30.4309C14.4321 22.5451 16.5872 14.4229 22.4985 8.98227C28.2887 3.65303 36.4612 2.37867 44.2946 1.47002C51.841 0.59466 59.5031 0.703132 66.4234 3.88711C73.5542 7.16795 79.3467 12.6848 83.3504 19.4393C87.5582 26.5382 90.5384 34.6172 89.4737 42.7747C88.3944 51.0446 83.9478 58.7131 77.5323 64.0161Z" fill="#769BF3"/>
<path d="M43.5065 30.9834C36.6046 30.9834 31 36.5721 31 43.4834V62H56V43.4834C56.013 36.5851 50.4214 30.9834 43.5065 30.9834Z" fill="white"/>
<path d="M43.5065 30.9834C48.7513 30.9834 53.0032 26.7338 53.0032 21.4917C53.0032 16.2496 48.7513 12 43.5065 12C38.2616 12 34.0099 16.2496 34.0099 21.4917C34.0099 26.7338 38.2617 30.9834 43.5065 30.9834Z" fill="white"/>
Expand Down
Loading

0 comments on commit 106776b

Please sign in to comment.