diff --git a/src/components/records/RecordSearch.js b/src/components/records/RecordSearch.js index 39fc9f7bb8682d688f3964e0194c7ab0606b3222..ee0eb2b59cc0c4283bbb67e1567f08b8baf184f0 100644 --- a/src/components/records/RecordSearch.js +++ b/src/components/records/RecordSearch.js @@ -83,7 +83,7 @@ export function RecordSearch({ iocName, rowType }) { const rowsPerPage = [20, 50]; - const { pagination, setPagination } = usePagination({ + const { pagination, setPagination, setTotalCount } = usePagination({ rowsPerPageOptions: rowsPerPage, initLimit: urlPagination.rows ?? rowsPerPage[0], initPage: urlPagination.page ?? 0 @@ -91,8 +91,14 @@ export function RecordSearch({ iocName, rowType }) { // update pagination whenever search result total pages change useEffect(() => { - setPagination({ totalCount: records?.totalCount ?? 0 }); - }, [setPagination, records?.totalCount]); + setTotalCount((prev) => { + if (prev === pagination.totalCount && prev > 0) { + return prev; + } else { + return records?.totalCount ?? 0; + } + }); + }, [pagination, records?.totalCount, setTotalCount]); // whenever url state changes, update pagination useEffect(() => { @@ -110,6 +116,7 @@ export function RecordSearch({ iocName, rowType }) { let requestParams = initRequestParams(pagination); requestParams.pv_status = recordFilter; requestParams.record_name = deserialize(urlState.query); + requestParams.ioc_name = iocName; getRecords(requestParams); return () => {