2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-04-28 11:36:44 +00:00

Filter StockTrackingTable by user (#8222)

This commit is contained in:
Oliver 2024-10-01 00:24:26 +10:00 committed by GitHub
parent ccd8a520eb
commit 5638895f54
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -19,10 +19,12 @@ import {
import { RenderUser } from '../../components/render/User';
import { ApiEndpoints } from '../../enums/ApiEndpoints';
import { ModelType } from '../../enums/ModelType';
import { useUserFilters } from '../../hooks/UseFilter';
import { useTable } from '../../hooks/UseTable';
import { apiUrl } from '../../states/ApiState';
import { TableColumn } from '../Column';
import { DateColumn, DescriptionColumn } from '../ColumnRenderers';
import { TableFilter } from '../Filter';
import { InvenTreeTable } from '../InvenTreeTable';
type StockTrackingEntry = {
@ -35,6 +37,8 @@ export function StockTrackingTable({ itemId }: Readonly<{ itemId: number }>) {
const navigate = useNavigate();
const table = useTable('stock_tracking');
const userFilters = useUserFilters();
// Render "details" for a stock tracking record
const renderDetails = useCallback(
(record: any) => {
@ -170,6 +174,17 @@ export function StockTrackingTable({ itemId }: Readonly<{ itemId: number }>) {
[navigate]
);
const filters: TableFilter[] = useMemo(() => {
return [
{
name: 'user',
label: t`User`,
choices: userFilters.choices,
description: t`Filter by user`
}
];
}, [userFilters]);
const tableColumns: TableColumn[] = useMemo(() => {
return [
DateColumn({
@ -214,7 +229,8 @@ export function StockTrackingTable({ itemId }: Readonly<{ itemId: number }>) {
item: itemId,
user_detail: true
},
enableDownload: true
enableDownload: true,
tableFilters: filters
}}
/>
);