diff --git a/src/components/Expenses/ExpenseFilterPanel.jsx b/src/components/Expenses/ExpenseFilterPanel.jsx index d2101c8e..0ec19ce6 100644 --- a/src/components/Expenses/ExpenseFilterPanel.jsx +++ b/src/components/Expenses/ExpenseFilterPanel.jsx @@ -1,4 +1,4 @@ -import React, {forwardRef, useEffect,useImperativeHandle, useState, useMemo } from "react"; +import React, { forwardRef, useEffect, useImperativeHandle, useState, useMemo } from "react"; import { FormProvider, useForm, Controller } from "react-hook-form"; import { zodResolver } from "@hookform/resolvers/zod"; import { defaultFilter, SearchSchema } from "./ExpenseSchema"; @@ -43,7 +43,7 @@ const ExpenseFilterPanel = forwardRef(({ onApply, handleGroupBy, setFilterdata } return { ...defaultFilter, statusIds: status ? [status] : defaultFilter.statusIds || [], - projectIds: defaultFilter.projectIds || [], + projectIds: selectedProjectId ? [selectedProjectId] : [], createdByIds: defaultFilter.createdByIds || [], paidById: defaultFilter.paidById || [], ExpenseTypeIds: defaultFilter.ExpenseTypeIds || [], @@ -51,7 +51,7 @@ const ExpenseFilterPanel = forwardRef(({ onApply, handleGroupBy, setFilterdata } startDate: defaultFilter.startDate, endDate: defaultFilter.endDate, }; - }, [status]); + }, [status,selectedProjectId]); const methods = useForm({ resolver: zodResolver(SearchSchema), @@ -77,7 +77,7 @@ const ExpenseFilterPanel = forwardRef(({ onApply, handleGroupBy, setFilterdata } if (group) setSelectedGroup(group); }; - useImperativeHandle(ref, () => ({ + useImperativeHandle(ref, () => ({ resetFieldValue: (name, value) => { // Reset specific field if (value !== undefined) { @@ -124,10 +124,9 @@ const ExpenseFilterPanel = forwardRef(({ onApply, handleGroupBy, setFilterdata } if (status !== appliedStatusId && data) { const filterWithStatus = { ...dynamicDefaultFilter, + projectIds: selectedProjectId ? [selectedProjectId] : [], // ✅ include project ID startDate: dynamicDefaultFilter.startDate - ? moment - .utc(dynamicDefaultFilter.startDate, "DD-MM-YYYY") - .toISOString() + ? moment.utc(dynamicDefaultFilter.startDate, "DD-MM-YYYY").toISOString() : undefined, endDate: dynamicDefaultFilter.endDate ? moment.utc(dynamicDefaultFilter.endDate, "DD-MM-YYYY").toISOString() @@ -147,14 +146,16 @@ const ExpenseFilterPanel = forwardRef(({ onApply, handleGroupBy, setFilterdata } handleGroupBy, selectedGroup.id, appliedStatusId, + selectedProjectId, // ✅ added dependency ]); + if (isLoading || isFetching) return ; if (isError && isFetched) return
Something went wrong Here- {error.message}
; - - + + return ( <>