@@ -5,7 +5,11 @@ import { useAllReimbursementRequests } from '../../hooks/finance.hooks';
55import { useSingleProject } from '../../hooks/projects.hooks' ;
66import { WbsNumber , ReimbursementRequest , WBSElementData , equalsWbsNumber , ReimbursementStatusType } from 'shared' ;
77import LoadingIndicator from '../../components/LoadingIndicator' ;
8- import { createReimbursementRequestRowData , cleanReimbursementRequestStatus } from '../../utils/reimbursement-request.utils' ;
8+ import {
9+ createReimbursementRequestRowData ,
10+ cleanReimbursementRequestStatus ,
11+ getCurrentReimbursementStatus
12+ } from '../../utils/reimbursement-request.utils' ;
913import NERDataGrid , { MapRowResult } from '../../components/NERDataGrid' ;
1014import { routes } from '../../utils/routes' ;
1115import { fullNamePipe , centsToDollar , datePipe } from '../../utils/pipes' ;
@@ -66,7 +70,10 @@ const ProjectSpendingHistory: React.FC<ProjectSpendingHistoryProps> = ({ wbsNum
6670 const budgetInfo = useMemo ( ( ) => {
6771 if ( ! project ) return null ;
6872 const totalBudget = project . budget ; // already in dollars
69- const totalSpent = reimbursementRequests . reduce ( ( sum , rr ) => sum + getProjectCost ( rr , wbsNum ) , 0 ) / 100 ; // cents → dollars
73+ const nonDeniedRequests = reimbursementRequests . filter (
74+ ( rr ) => getCurrentReimbursementStatus ( rr . reimbursementStatuses ) . type !== 'DENIED'
75+ ) ;
76+ const totalSpent = nonDeniedRequests . reduce ( ( sum , rr ) => sum + getProjectCost ( rr , wbsNum ) , 0 ) / 100 ; // cents → dollars
7077 const budgetRemaining = totalBudget - totalSpent ;
7178 const budgetUsedPercentage = totalBudget > 0 ? ( totalSpent / totalBudget ) * 100 : 0 ;
7279 return {
0 commit comments