mirror of
https://github.com/inventree/InvenTree.git
synced 2026-02-12 01:07:21 +00:00
[UI] Build updates (#11274)
* Hide "child build orders" for builds without any subassemblies * Hide "build stock" button for inactive build orders
This commit is contained in:
@@ -161,6 +161,24 @@ export default function BuildDetail() {
|
|||||||
defaultValue: {}
|
defaultValue: {}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Fetch the number of assembled BOM items associated with the build order
|
||||||
|
// i.e. how many items are subassemblies?
|
||||||
|
const { instance: subassemblyLineData } = useInstance({
|
||||||
|
endpoint: ApiEndpoints.build_line_list,
|
||||||
|
params: {
|
||||||
|
build: id,
|
||||||
|
allocations: false,
|
||||||
|
part_detail: false,
|
||||||
|
build_detail: false,
|
||||||
|
bom_item_detail: false,
|
||||||
|
assembly: true,
|
||||||
|
limit: 1
|
||||||
|
},
|
||||||
|
disabled: !id,
|
||||||
|
hasPrimaryKey: false,
|
||||||
|
defaultValue: {}
|
||||||
|
});
|
||||||
|
|
||||||
const buildStatus = useStatusCodes({ modelType: ModelType.build });
|
const buildStatus = useStatusCodes({ modelType: ModelType.build });
|
||||||
|
|
||||||
const {
|
const {
|
||||||
@@ -503,6 +521,7 @@ export default function BuildDetail() {
|
|||||||
name: 'child-orders',
|
name: 'child-orders',
|
||||||
label: t`Child Build Orders`,
|
label: t`Child Build Orders`,
|
||||||
icon: <IconSitemap />,
|
icon: <IconSitemap />,
|
||||||
|
hidden: (subassemblyLineData?.count ?? 0) <= 0, // Hide if no sub-assembly items
|
||||||
content: build.pk ? (
|
content: build.pk ? (
|
||||||
<BuildOrderTable parentBuildId={build.pk} />
|
<BuildOrderTable parentBuildId={build.pk} />
|
||||||
) : (
|
) : (
|
||||||
@@ -540,6 +559,7 @@ export default function BuildDetail() {
|
|||||||
user,
|
user,
|
||||||
buildStatus,
|
buildStatus,
|
||||||
globalSettings,
|
globalSettings,
|
||||||
|
subassemblyLineData,
|
||||||
buildLineQuery.isFetching,
|
buildLineQuery.isFetching,
|
||||||
buildLineQuery.isLoading,
|
buildLineQuery.isLoading,
|
||||||
buildLineData
|
buildLineData
|
||||||
|
|||||||
@@ -777,7 +777,7 @@ export default function BuildLineTable({
|
|||||||
{
|
{
|
||||||
icon: <IconTool />,
|
icon: <IconTool />,
|
||||||
title: t`Build Stock`,
|
title: t`Build Stock`,
|
||||||
hidden: !canBuild,
|
hidden: !canBuild || !isActive,
|
||||||
color: 'blue',
|
color: 'blue',
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
setInitialData({
|
setInitialData({
|
||||||
@@ -796,7 +796,7 @@ export default function BuildLineTable({
|
|||||||
})
|
})
|
||||||
];
|
];
|
||||||
},
|
},
|
||||||
[user, navigate, output, build, buildStatus]
|
[user, navigate, output, build, buildStatus, isActive]
|
||||||
);
|
);
|
||||||
|
|
||||||
const tableActions = useMemo(() => {
|
const tableActions = useMemo(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user