From bfe1926915262ba4f9877d401d87f1512b0b4847 Mon Sep 17 00:00:00 2001 From: Kantas2601 Date: Tue, 17 Jun 2025 17:37:32 +0530 Subject: [PATCH] Week not changes but day changes records were not handled and causing dublicate OBD records in file --- .../nms/kilkari/service/impl/CsrServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kilkari/src/main/java/org/motechproject/nms/kilkari/service/impl/CsrServiceImpl.java b/kilkari/src/main/java/org/motechproject/nms/kilkari/service/impl/CsrServiceImpl.java index 283c0efdf..137c1766d 100644 --- a/kilkari/src/main/java/org/motechproject/nms/kilkari/service/impl/CsrServiceImpl.java +++ b/kilkari/src/main/java/org/motechproject/nms/kilkari/service/impl/CsrServiceImpl.java @@ -24,6 +24,7 @@ import org.motechproject.nms.kilkari.service.CsrVerifierService; import org.motechproject.nms.kilkari.service.SubscriptionService; import org.motechproject.nms.kilkari.utils.KilkariConstants; +import org.motechproject.nms.props.domain.DayOfTheWeek; import org.motechproject.nms.props.domain.FinalCallStatus; import org.motechproject.nms.props.domain.StatusCode; import org.motechproject.nms.props.domain.WhatsAppOptInStatusCode; @@ -322,10 +323,13 @@ public void processCallSummaryRecord(MotechEvent event) { //NOPMD NcssMethodCoun case FAILED: String weekId = getWeekIdForSubscription(subscription.getStartDate()); + DayOfTheWeek dayOfTheWeek = subscription.getFirstMessageDayOfWeek(); + DayOfTheWeek tomorrow = DayOfTheWeek.today().nextDay(); + //If there was a DOB/LMP update during RCH import, number of weeks into subscription would have changed. //No need to reschedule this call. Exception for w1, because regardless of which week the subscription starts in, user //always gets w1 message initially - if(!csrDto.getWeekId().equals("w1_1")&&!weekId.equals(csrDto.getWeekId())){ + if ((!csrDto.getWeekId().equals("w1_1") && !weekId.equals(csrDto.getWeekId())) || dayOfTheWeek.equals(tomorrow)){ if(callRetry!=null){ callRetryDataService.delete(callRetry); }