mirror of
https://github.com/inventree/InvenTree.git
synced 2026-09-27 22:26:00 +00:00
Duplicate orders via API (#8145)
* Refactor API endpoint for duplicating line items from a purchase order - Previously was "hidden" (undocumented) - Cleanup / refactor code - Now matches part duplication options - Generic implementation supports all order types * Update forms * Refactor line item duplication * Implement front-end support for return orders * Enable duplication of sales orders from PUI * Bump API version
This commit is contained in:
@@ -138,14 +138,19 @@ export function usePurchaseOrderLineItemFields({
|
||||
/**
|
||||
* Construct a set of fields for creating / editing a PurchaseOrder instance
|
||||
*/
|
||||
export function usePurchaseOrderFields(): ApiFormFieldSet {
|
||||
export function usePurchaseOrderFields({
|
||||
duplicateOrderId
|
||||
}: {
|
||||
duplicateOrderId?: number;
|
||||
}): ApiFormFieldSet {
|
||||
return useMemo(() => {
|
||||
return {
|
||||
let fields: ApiFormFieldSet = {
|
||||
reference: {
|
||||
icon: <IconHash />
|
||||
},
|
||||
description: {},
|
||||
supplier: {
|
||||
disabled: duplicateOrderId !== undefined,
|
||||
filters: {
|
||||
is_supplier: true,
|
||||
active: true
|
||||
@@ -187,7 +192,23 @@ export function usePurchaseOrderFields(): ApiFormFieldSet {
|
||||
icon: <IconUsers />
|
||||
}
|
||||
};
|
||||
}, []);
|
||||
|
||||
// Order duplication fields
|
||||
if (!!duplicateOrderId) {
|
||||
fields.duplicate = {
|
||||
children: {
|
||||
order_id: {
|
||||
hidden: true,
|
||||
value: duplicateOrderId
|
||||
},
|
||||
copy_lines: {},
|
||||
copy_extra_lines: {}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
return fields;
|
||||
}, [duplicateOrderId]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user