2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-06-16 12:05:53 +00:00

Test template disable (#6526)

* Add new field to PartTestTemplate model

- 'enabled' field
- default = True (backwards compatibility)
- Allows tests to be disabled
- Retains test results but disables test

* Update PartTestTemplate API

- Expose new field
- Enable filtering by field

* CUI updates

- Add to PartTestTemplate table

* PUI: Update PartTestTemplateTable

* Update getRequiredTests

- By default, filter out tests which are "disabled"

* Update StockItemTestResult table

- Only display "enabled" tests
- Update CUI
- UPdate PUI

* Update existing build output table

* Bump API version

* Docs updates

* Updated unit tests
This commit is contained in:
Oliver
2024-02-20 21:01:59 +11:00
committed by GitHub
parent 3eb1914f1e
commit 567c7edbaf
14 changed files with 108 additions and 12 deletions

View File

@ -36,7 +36,12 @@ export default function PartTestTemplateTable({ partId }: { partId: number }) {
sortable: true,
render: (record: any) => {
return (
<Text weight={record.required && 700}>{record.test_name}</Text>
<Text
weight={record.required && 700}
color={record.enabled ? undefined : 'red'}
>
{record.test_name}
</Text>
);
}
},
@ -52,6 +57,9 @@ export default function PartTestTemplateTable({ partId }: { partId: number }) {
DescriptionColumn({
switchable: false
}),
BooleanColumn({
accessor: 'enabled'
}),
BooleanColumn({
accessor: 'required'
}),
@ -70,6 +78,10 @@ export default function PartTestTemplateTable({ partId }: { partId: number }) {
name: 'required',
description: t`Show required tests`
},
{
name: 'enabled',
description: t`Show enabled tests`
},
{
name: 'requires_value',
description: t`Show tests that require a value`
@ -100,7 +112,8 @@ export default function PartTestTemplateTable({ partId }: { partId: number }) {
description: {},
required: {},
requires_value: {},
requires_attachment: {}
requires_attachment: {},
enabled: {}
};
}, [user]);

View File

@ -55,7 +55,8 @@ export default function StockItemTestResultTable({
.get(apiUrl(ApiEndpoints.part_test_template_list), {
params: {
part: partId,
include_inherited: true
include_inherited: true,
enabled: true
}
})
.then((response) => response.data)
@ -126,12 +127,17 @@ export default function StockItemTestResultTable({
sortable: true,
render: (record: any) => {
let required = record.required ?? record.template_detail?.required;
let enabled = record.enabled ?? record.template_detail?.enabled;
let installed =
record.stock_item != undefined && record.stock_item != itemId;
return (
<Group position="apart">
<Text italic={installed} fw={required && 700}>
<Text
italic={installed}
fw={required && 700}
color={enabled ? undefined : 'red'}
>
{!record.templateId && '- '}
{record.test_name ?? record.template_detail?.test_name}
</Text>
@ -419,7 +425,8 @@ export default function StockItemTestResultTable({
stock_item: itemId,
user_detail: true,
attachment_detail: true,
template_detail: true
template_detail: true,
enabled: true
}
}}
/>