From acaa5a69fbacd4c249c7d8d921726dc3eaeb910c Mon Sep 17 00:00:00 2001 From: Alex Gonzalez Date: Thu, 8 Jul 2021 11:04:34 -0700 Subject: [PATCH] Implement ResendFailedEmailController - Resend endpoint at /resend-confirmation-email/{application_id} [#178367953] Co-authored-by: Andrew Edstrom Co-authored-by: Sree Prasad Co-authored-by: Eric Johnson --- .../shiba/output/ResendFailedEmailController.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/codeforamerica/shiba/output/ResendFailedEmailController.java b/src/main/java/org/codeforamerica/shiba/output/ResendFailedEmailController.java index 31efd59c6..39a78272b 100644 --- a/src/main/java/org/codeforamerica/shiba/output/ResendFailedEmailController.java +++ b/src/main/java/org/codeforamerica/shiba/output/ResendFailedEmailController.java @@ -3,6 +3,7 @@ import org.codeforamerica.shiba.application.Application; import org.codeforamerica.shiba.application.ApplicationRepository; +import org.codeforamerica.shiba.application.FlowType; import org.codeforamerica.shiba.application.parsers.DocumentListParser; import org.codeforamerica.shiba.application.parsers.EmailParser; import org.codeforamerica.shiba.output.caf.CcapExpeditedEligibility; @@ -53,11 +54,15 @@ public String resendConfirmationEmail(@PathVariable String applicationId) { EmailParser.parse(applicationData) .ifPresent(email -> { - SnapExpeditedEligibility snapExpeditedEligibility = snapExpeditedEligibilityDecider.decide(application.getApplicationData()); - CcapExpeditedEligibility ccapExpeditedEligibility = ccapExpeditedEligibilityDecider.decide(application.getApplicationData()); - List docs = DocumentListParser.parse(applicationData); - List pdfs = docs.stream().map(doc -> pdfGenerator.generate(applicationId, doc, CLIENT)).collect(Collectors.toList()); - emailClient.sendConfirmationEmail(applicationData, email, applicationId, new ArrayList<>(applicationData.getApplicantAndHouseholdMemberPrograms()), snapExpeditedEligibility, ccapExpeditedEligibility, pdfs, LocaleContextHolder.getLocale()); + if (application.getFlow() == FlowType.LATER_DOCS) { + emailClient.sendLaterDocsConfirmationEmail(email, LocaleContextHolder.getLocale()); + } else { + SnapExpeditedEligibility snapExpeditedEligibility = snapExpeditedEligibilityDecider.decide(application.getApplicationData()); + CcapExpeditedEligibility ccapExpeditedEligibility = ccapExpeditedEligibilityDecider.decide(application.getApplicationData()); + List docs = DocumentListParser.parse(applicationData); + List pdfs = docs.stream().map(doc -> pdfGenerator.generate(applicationId, doc, CLIENT)).collect(Collectors.toList()); + emailClient.sendConfirmationEmail(applicationData, email, applicationId, new ArrayList<>(applicationData.getApplicantAndHouseholdMemberPrograms()), snapExpeditedEligibility, ccapExpeditedEligibility, pdfs, LocaleContextHolder.getLocale()); + } }); return "Successfully resent confirmation email for application: " + applicationId;