mirror of
https://github.com/inventree/InvenTree.git
synced 2026-09-02 19:08:47 +00:00
Merge commit '47c6906a74f41eed5b56f4dc43ea0d4e20415237' into block-notes
This commit is contained in:
@@ -4,7 +4,7 @@ import { apiUrl } from '@lib/functions/Api';
|
||||
import { StylishText } from '@lib/index';
|
||||
import { t } from '@lingui/core/macro';
|
||||
import { BarChart } from '@mantine/charts';
|
||||
import { Stack } from '@mantine/core';
|
||||
import { Box, LoadingOverlay, Stack } from '@mantine/core';
|
||||
import { useDocumentVisibility } from '@mantine/hooks';
|
||||
import { useQuery } from '@tanstack/react-query';
|
||||
import dayjs from 'dayjs';
|
||||
@@ -84,13 +84,17 @@ function OrderHistoryComponent({
|
||||
return (
|
||||
<Stack gap='xs'>
|
||||
<StylishText size='md'>{title}</StylishText>
|
||||
<BarChart
|
||||
h={200}
|
||||
data={chartData}
|
||||
dataKey='month'
|
||||
series={[{ name: 'count', label: t`Completed`, color: 'blue.6' }]}
|
||||
withYAxis={false}
|
||||
/>
|
||||
<Box>
|
||||
<LoadingOverlay visible={query.isLoading || query.isFetching} />
|
||||
<BarChart
|
||||
h={200}
|
||||
data={chartData}
|
||||
dataKey='month'
|
||||
series={[{ name: 'count', label: t`Completed`, color: 'blue.6' }]}
|
||||
withYAxis={false}
|
||||
yAxisProps={{ domain: [0, 'auto'] }}
|
||||
/>
|
||||
</Box>
|
||||
</Stack>
|
||||
);
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -122,6 +122,13 @@ export default function StockDetail() {
|
||||
}
|
||||
});
|
||||
|
||||
const { instance: part, instanceQuery: partQuery } = useInstance({
|
||||
endpoint: ApiEndpoints.part_list,
|
||||
pk: stockitem?.part,
|
||||
hasPrimaryKey: true,
|
||||
defaultValue: {}
|
||||
});
|
||||
|
||||
const { instance: serialNumbers, instanceQuery: serialNumbersQuery } =
|
||||
useInstance({
|
||||
endpoint: ApiEndpoints.stock_serial_info,
|
||||
@@ -884,9 +891,8 @@ export default function StockDetail() {
|
||||
serial != '' &&
|
||||
stockitem.quantity == 1;
|
||||
|
||||
const canConvert =
|
||||
!!stockitem.part_detail?.variant_of ||
|
||||
!!stockitem.part_detail?.is_template;
|
||||
// Allow variant conversion if the part is a variant, or if the part is a template
|
||||
const canConvert = part?.variant_of || part?.is_template;
|
||||
|
||||
return [
|
||||
<AdminButton model={ModelType.stockitem} id={stockitem.pk} />,
|
||||
@@ -967,7 +973,7 @@ export default function StockDetail() {
|
||||
]}
|
||||
/>
|
||||
];
|
||||
}, [id, stockitem, user, stockAdjustActions.menuActions]);
|
||||
}, [id, stockitem, part, user, stockAdjustActions.menuActions]);
|
||||
|
||||
const stockBadges: ReactNode[] = useMemo(() => {
|
||||
let available = (stockitem?.quantity ?? 0) - (stockitem?.allocated ?? 0);
|
||||
|
||||
Reference in New Issue
Block a user