From 4f711899d318df0696e818536dfff4e8eae3810c Mon Sep 17 00:00:00 2001 From: "aishwarya.srivastava" Date: Tue, 15 Oct 2024 16:03:44 +0530 Subject: [PATCH] NTP-6457| DPD cycle for 16 to 30 field --- src/reducer/userSlice.ts | 13 +++++++++++-- src/screens/allCases/ListItem.tsx | 17 +++++++++++++---- src/screens/caseDetails/CollectionCaseData.tsx | 16 ++++++++++++---- src/screens/caseDetails/interface.ts | 1 + 4 files changed, 37 insertions(+), 10 deletions(-) diff --git a/src/reducer/userSlice.ts b/src/reducer/userSlice.ts index b4d0bffb..5bfbde58 100644 --- a/src/reducer/userSlice.ts +++ b/src/reducer/userSlice.ts @@ -77,6 +77,7 @@ export interface IUserSlice extends IUser { isCallRecordingCosmosExotelEnabled: boolean; }; employeeId: string; + is16To30FieldAgent: boolean; } const initialState: IUserSlice = { @@ -105,6 +106,7 @@ const initialState: IUserSlice = { isCallRecordingCosmosExotelEnabled: false, }, employeeId: '', + is16To30FieldAgent: false, }; export const userSlice = createSlice({ @@ -142,8 +144,14 @@ export const userSlice = createSlice({ state.agentAttendance = action.payload; }, setUserAccessData: (state, action) => { - const { roles, isExternalAgent, isFieldTeamLeadOrAgencyManager, featureFlags, employeeId } = - action.payload || {}; + const { + roles, + isExternalAgent, + is16To30FieldAgent, + isFieldTeamLeadOrAgencyManager, + featureFlags, + employeeId, + } = action.payload || {}; if (roles?.length) { state.isTeamLead = isFieldTeamLeadOrAgencyManager; } else { @@ -153,6 +161,7 @@ export const userSlice = createSlice({ state.agentRoles = roles; state.featureFlags = featureFlags; state.employeeId = employeeId; + state.is16To30FieldAgent = is16To30FieldAgent; }, }, }); diff --git a/src/screens/allCases/ListItem.tsx b/src/screens/allCases/ListItem.tsx index 7fe62155..f2c9c3fa 100644 --- a/src/screens/allCases/ListItem.tsx +++ b/src/screens/allCases/ListItem.tsx @@ -77,6 +77,7 @@ const ListItem: React.FC = (props) => { collectionTag, paymentStatus, dpdBucket, + dpdCycle, pinRank, isSynced, isNewlyAdded, @@ -191,6 +192,7 @@ const ListItem: React.FC = (props) => { !isTeamLead && !nearbyCaseView; + const is16to30FieldAgent = useAppSelector((state) => state.user?.is16To30FieldAgent); const distanceMapOfNearbyCases = useAppSelector((state) => state.nearbyCasesSlice.caseReferenceIdToDistanceMap) || {}; const selectedTab = useAppSelector((state) => state?.nearbyCasesSlice?.sortTabSelected); @@ -291,10 +293,17 @@ const ListItem: React.FC = (props) => { )} - - Total due {formatAmount(totalOverdueAmount, false)} - {' '}DPD bucket {dpdBucket} - + {is16to30FieldAgent ? ( + + Total due {formatAmount(totalOverdueAmount, false)} + {' '}DPD Cycle {dpdCycle} + + ) : ( + + Total due {formatAmount(totalOverdueAmount, false)} + {' '}DPD bucket {dpdBucket} + + )} {caseInteractionStatus ? ( {caseInteractionStatus} diff --git a/src/screens/caseDetails/CollectionCaseData.tsx b/src/screens/caseDetails/CollectionCaseData.tsx index dd9354c4..8e2546c8 100644 --- a/src/screens/caseDetails/CollectionCaseData.tsx +++ b/src/screens/caseDetails/CollectionCaseData.tsx @@ -11,6 +11,7 @@ import { addClickstreamEvent } from '../../services/clickstreamEventService'; import { CLICKSTREAM_EVENT_NAMES } from '../../common/Constants'; import { ToastMessages } from '../allCases/constants'; import { toTileCase } from '../../components/utlis/commonFunctions'; +import { useAppSelector } from '@hooks'; interface ICollectionCaseData { caseData: CaseDetail; @@ -22,12 +23,13 @@ const CollectionCaseData: React.FC = ({ caseData }) => { currentDpd, loanAccountNumber, dpdBucket, + dpdCycle, pos, collectionTag, employmentDetail, unpaidDays } = caseData; - + const is16to30FieldAgent = useAppSelector((state) => state.user.is16To30FieldAgent ); return ( {fatherName && ( @@ -67,9 +69,15 @@ const CollectionCaseData: React.FC = ({ caseData }) => { GenericStyles.flexWrap, ]} > - - DPD bucket {dpdBucket} - + {is16to30FieldAgent ? ( + + DPD Cycle {dpdCycle} + + ) : ( + + DPD bucket {dpdBucket} + + )} POS {formatAmount(pos)} diff --git a/src/screens/caseDetails/interface.ts b/src/screens/caseDetails/interface.ts index eaafec3a..a6031e07 100644 --- a/src/screens/caseDetails/interface.ts +++ b/src/screens/caseDetails/interface.ts @@ -284,6 +284,7 @@ export interface CaseDetail { customerName: string; pos: number; dpdBucket: string; + dpdCycle: string; addresses?: Address[]; currentAllocationReferenceId: string; customerReferenceId: string;