mirror of
https://github.com/inventree/InvenTree.git
synced 2025-12-16 17:28:11 +00:00
Add parameteric build order table
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
import { t } from '@lingui/core/macro';
|
||||
import { Stack } from '@mantine/core';
|
||||
import { IconCalendar, IconTable, IconTools } from '@tabler/icons-react';
|
||||
import {
|
||||
IconCalendar,
|
||||
IconListDetails,
|
||||
IconTable,
|
||||
IconTools
|
||||
} from '@tabler/icons-react';
|
||||
import { useMemo } from 'react';
|
||||
|
||||
import { ModelType } from '@lib/enums/ModelType';
|
||||
@@ -16,6 +21,7 @@ import SegmentedControlPanel from '../../components/panels/SegmentedControlPanel
|
||||
import { useGlobalSettingsState } from '../../states/SettingsStates';
|
||||
import { useUserState } from '../../states/UserState';
|
||||
import { PartCategoryFilter } from '../../tables/Filter';
|
||||
import BuildOrderParametricTable from '../../tables/build/BuildOrderParametricTable';
|
||||
import { BuildOrderTable } from '../../tables/build/BuildOrderTable';
|
||||
|
||||
function BuildOrderCalendar() {
|
||||
@@ -74,6 +80,12 @@ export default function BuildIndex() {
|
||||
label: t`Calendar View`,
|
||||
icon: <IconCalendar />,
|
||||
content: <BuildOrderCalendar />
|
||||
},
|
||||
{
|
||||
value: 'parametric',
|
||||
label: t`Parametric View`,
|
||||
icon: <IconListDetails />,
|
||||
content: <BuildOrderParametricTable />
|
||||
}
|
||||
]
|
||||
})
|
||||
|
||||
40
src/frontend/src/tables/build/BuildOrderParametricTable.tsx
Normal file
40
src/frontend/src/tables/build/BuildOrderParametricTable.tsx
Normal file
@@ -0,0 +1,40 @@
|
||||
import { ApiEndpoints, ModelType } from '@lib/index';
|
||||
import type { TableFilter } from '@lib/types/Filters';
|
||||
import type { TableColumn } from '@lib/types/Tables';
|
||||
import { type ReactNode, useMemo } from 'react';
|
||||
import { DescriptionColumn, ReferenceColumn } from '../ColumnRenderers';
|
||||
import { OrderStatusFilter, OutstandingFilter } from '../Filter';
|
||||
import ParametricDataTable from '../general/ParametricDataTable';
|
||||
|
||||
export default function BuildOrderParametricTable({
|
||||
queryParams
|
||||
}: {
|
||||
queryParams?: Record<string, any>;
|
||||
}): ReactNode {
|
||||
const customColumns: TableColumn[] = useMemo(() => {
|
||||
return [
|
||||
ReferenceColumn({
|
||||
switchable: false
|
||||
}),
|
||||
DescriptionColumn({
|
||||
accessor: 'title'
|
||||
})
|
||||
];
|
||||
}, []);
|
||||
|
||||
const customFilters: TableFilter[] = useMemo(() => {
|
||||
return [OutstandingFilter(), OrderStatusFilter({ model: ModelType.build })];
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<ParametricDataTable
|
||||
modelType={ModelType.build}
|
||||
endpoint={ApiEndpoints.build_order_list}
|
||||
customColumns={customColumns}
|
||||
customFilters={customFilters}
|
||||
queryParams={{
|
||||
...queryParams
|
||||
}}
|
||||
/>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user