From b6d40f725525b3cacd133a8b9e861e8b054c09ee Mon Sep 17 00:00:00 2001 From: Jaanu423 Date: Thu, 27 Nov 2025 13:38:38 +0530 Subject: [PATCH] chenging ui design where needed --- src/screens/management/Payments.tsx | 67 ++++++++++++++------- src/screens/notification/Notification.tsx | 8 +-- src/screens/transaction/TransactionList.tsx | 5 +- src/utils/ApiUrls.tsx | 2 +- 4 files changed, 50 insertions(+), 32 deletions(-) diff --git a/src/screens/management/Payments.tsx b/src/screens/management/Payments.tsx index d0bf2b4..a30f08a 100644 --- a/src/screens/management/Payments.tsx +++ b/src/screens/management/Payments.tsx @@ -7,8 +7,6 @@ import AppView from '../../components/AppView'; import { apiCall } from '../../utils/ApiHelper'; import { BASE_URL } from '../../utils/ApiUrls'; -// --- CONSTANTS --- -const API_BASE_URL = 'http://192.168.1.5:9060/api/payments'; // --- TYPE DEFINITIONS --- interface ApiResponse { @@ -26,9 +24,12 @@ interface Participant { contributionAmount: number; paidAmount: number; payAmount?: number; - status: 'SUCCESS' | 'PENDING'; + status: 'SUCCESS' | 'PENDING' | 'FAILED' | 'UNPAID'; lateFee: number; lateFeeWaived: boolean; + totalPaidAmount: string; + expectedAmount: number; + waivedAmount:number } interface PaymentDetails { @@ -80,10 +81,11 @@ const Payments: React.FC = () => { try { const response = await apiCall(`${BASE_URL}payments/current/payment/details/${groupId}`, 'GET') as ApiResponse; - + // console.log("fchffryjtc", response) if (response && response.statusCode === 200) { setPaymentDetails(response.data); } else if (response && response.statusCode === 400) { + setIsGroupActive(false); setPaymentDetails(null); } else { @@ -118,10 +120,11 @@ const Payments: React.FC = () => { }; const handleWaiveFee = async () => { - if (!currentParticipant || !paymentDetails) return; - + console.log("first approch ") + // if (!currentParticipant || !paymentDetails) console.log("second approch ") ; + const amountToWaive = parseFloat(waiverAmount); - + if (isNaN(amountToWaive) || amountToWaive < 0) { ToastAndroid.show("Please enter a valid waiver amount.", ToastAndroid.SHORT); return; @@ -133,8 +136,10 @@ const Payments: React.FC = () => { } try { - const url = `https://api.godemo.in/FundCollect/api/payments/groups/${groupId}/cycles/${paymentDetails.currentCycle}/waive/${currentParticipant.userId}?amountToWaive=${amountToWaive}`; + const url = `${BASE_URL}payments/groups/${groupId}/cycles/${paymentDetails.currentCycle}/waive/${currentParticipant.userId}?amountToWaive=${amountToWaive}`; + const response = await apiCall(url, 'PUT', {}) as any; + console.log("vtitttit hbfbf sjbj j b", response) if (response && response.statusCode === 200) { ToastAndroid.show(`₹${amountToWaive} has been waived successfully.`, ToastAndroid.SHORT); @@ -151,29 +156,45 @@ const Payments: React.FC = () => { // --- RENDER LOGIC --- const renderParticipant = (participant: Participant) => { - const isPending = participant.status === 'PENDING'; - const canWaive = isPending && participant.lateFee > 0 && !participant.lateFeeWaived; + const isPending = participant.status === 'UNPAID'; + const canWaive = participant.lateFee > 0 && isPending return ( - + {participant.firstName} {participant.lastName} {participant.mobile} - + {participant.status} - - {isPending ? `₹${participant.payAmount || 0}` : `₹${participant.paidAmount}`} - - {isPending && participant.lateFee > 0 && ( + {participant.status === "UNPAID" && + {`₹${participant?.expectedAmount} `} + } + {participant.status === "SUCCESS" && + {`₹${participant?.totalPaidAmount}`} + } + + {/* + {isPending ? `₹${participant.payAmount || 0}` : `₹${participant.totalPaidAmount}`} + */} + {participant.lateFee > 0 && ( Late Fee: ₹{participant.lateFee} )} - {participant.lateFeeWaived && Fee Waived} + {/* {participant.lateFeeWaived && Fee Waived} */} + { + participant?.lateFeeWaived && Waived Amount : {participant?.waivedAmount} + } - + {canWaive && ( openWaiverDialog(participant)}> @@ -184,7 +205,7 @@ const Payments: React.FC = () => { ); }; - + return ( { {loading && !refreshing ? ( - + ) : !isGroupActive ? ( @@ -247,7 +268,7 @@ const Payments: React.FC = () => { Contribution - ₹{paymentDetails.contributionAmount} + ₹ {paymentDetails.contributionAmount} Total Amount @@ -255,8 +276,8 @@ const Payments: React.FC = () => { Participants - { paymentDetails?.cycleCompleted && - Next Cycle from : {paymentDetails?.nextCycleStart} + {paymentDetails?.cycleCompleted && + Next Cycle from : {paymentDetails?.nextCycleStart} }{paymentDetails.participants.map(renderParticipant)} )} diff --git a/src/screens/notification/Notification.tsx b/src/screens/notification/Notification.tsx index 5b73218..f78c1c6 100644 --- a/src/screens/notification/Notification.tsx +++ b/src/screens/notification/Notification.tsx @@ -212,10 +212,10 @@ const Notification = () => { {/* Header with actions */}
0 ? `(${unreadCount})` : ''}`} arrowColor='#000' titleColor='#000'/> - + {/* {unreadCount > 0 && ( Mark All Read @@ -224,14 +224,14 @@ const Notification = () => { )} {notifications.length > 0 && ( Clear All )} - + */} {/* Notification List */} { }; const StatusBadge: React.FC<{ status?: string }> = ({ status }) => { - const text = status ?? "UNKNOWN"; + const text = status ?? "FAILED"; const color = text === "SUCCESS" ? styles.statusSuccess : text === "PENDING" ? styles.statusPending : styles.statusFailed; @@ -142,10 +142,7 @@ const TransactionsList: React.FC = () => { return (
- {message} - - item.id} diff --git a/src/utils/ApiUrls.tsx b/src/utils/ApiUrls.tsx index ede19f8..a52f736 100644 --- a/src/utils/ApiUrls.tsx +++ b/src/utils/ApiUrls.tsx @@ -1,6 +1,6 @@ // export const BASE_URL = "https://11.godemo.in/FundCollect/api/" -export const BASE_URL = "http://192.168.1.8:9060/api/" +export const BASE_URL = "http://192.168.1.5:9060/api/" export const LOGIN_URL = `${BASE_URL}user/generate/otp?mobiles=` export const VARIFY_OTP_URL = `${BASE_URL}user/otp/verify` export const ORGRAGISTRATION = `${BASE_URL}organizer/registration/apply`