diff --git a/src/api/wms/inventory/history/index.ts b/src/api/wms/inventory/history/index.ts index 76345ae99..a0ce1d1da 100644 --- a/src/api/wms/inventory/history/index.ts +++ b/src/api/wms/inventory/history/index.ts @@ -16,6 +16,7 @@ export interface InventoryHistoryVO { beforeQuantity?: number afterQuantity?: number price?: number + totalPrice?: number remark?: string orderId?: number orderNo?: string diff --git a/src/views/wms/inventory/history/index.vue b/src/views/wms/inventory/history/index.vue index e67855c39..b85e12e7d 100644 --- a/src/views/wms/inventory/history/index.vue +++ b/src/views/wms/inventory/history/index.vue @@ -144,7 +144,7 @@ {{ formatQuantity(scope.row.afterQuantity) || '-' }} - + (() => (detailData.value.details || []).map((detail) => ({ ...detail, totalPrice: - detail.price != null && detail.quantity + detail.totalPrice ?? + (detail.price != null && detail.quantity ? Number(detail.price) * Number(detail.quantity) - : undefined + : undefined) })) ) diff --git a/src/views/wms/order/movement/MovementOrderForm.vue b/src/views/wms/order/movement/MovementOrderForm.vue index f672b22bf..605998fe1 100644 --- a/src/views/wms/order/movement/MovementOrderForm.vue +++ b/src/views/wms/order/movement/MovementOrderForm.vue @@ -430,7 +430,7 @@ const buildSubmitData = () => { } = formData.value return { ...order, - details: (details || []).map(({ totalPrice: _rowTotalPrice, ...detail }) => detail) + details: details || [] } as MovementOrderVO } diff --git a/src/views/wms/order/movement/MovementOrderPrint.vue b/src/views/wms/order/movement/MovementOrderPrint.vue new file mode 100644 index 000000000..048a2224a --- /dev/null +++ b/src/views/wms/order/movement/MovementOrderPrint.vue @@ -0,0 +1,144 @@ + + + + diff --git a/src/views/wms/order/movement/index.vue b/src/views/wms/order/movement/index.vue index d77b49751..c26a2f2f5 100644 --- a/src/views/wms/order/movement/index.vue +++ b/src/views/wms/order/movement/index.vue @@ -499,6 +499,9 @@ const resetQuery = () => { /** 计算明细金额 */ const getDetailTotalPrice = (detail: MovementOrderDetailVO) => { + if (detail.totalPrice !== undefined && detail.totalPrice !== null) { + return detail.totalPrice + } if (!detail.quantity || detail.price === undefined || detail.price === null) { return undefined } diff --git a/src/views/wms/order/receipt/ReceiptOrderDetail.vue b/src/views/wms/order/receipt/ReceiptOrderDetail.vue index 453976be5..28e63e49b 100644 --- a/src/views/wms/order/receipt/ReceiptOrderDetail.vue +++ b/src/views/wms/order/receipt/ReceiptOrderDetail.vue @@ -121,9 +121,10 @@ const detailRows = computed(() => (detailData.value.details || []).map((detail) => ({ ...detail, totalPrice: - detail.price != null && detail.quantity + detail.totalPrice ?? + (detail.price != null && detail.quantity ? Number(detail.price) * Number(detail.quantity) - : undefined + : undefined) })) ) diff --git a/src/views/wms/order/receipt/ReceiptOrderForm.vue b/src/views/wms/order/receipt/ReceiptOrderForm.vue index de92a22ff..746c320a8 100644 --- a/src/views/wms/order/receipt/ReceiptOrderForm.vue +++ b/src/views/wms/order/receipt/ReceiptOrderForm.vue @@ -409,7 +409,7 @@ const buildSubmitData = () => { } = formData.value return { ...order, - details: (details || []).map(({ totalPrice: _rowTotalPrice, ...detail }) => detail) + details: details || [] } as ReceiptOrderVO } diff --git a/src/views/wms/order/receipt/ReceiptOrderPrint.vue b/src/views/wms/order/receipt/ReceiptOrderPrint.vue index 77b380316..af12d4414 100644 --- a/src/views/wms/order/receipt/ReceiptOrderPrint.vue +++ b/src/views/wms/order/receipt/ReceiptOrderPrint.vue @@ -131,9 +131,10 @@ const printRows = computed(() => (printData.value.details || []).map((detail) => ({ ...detail, totalPrice: - detail.price != null && detail.quantity + detail.totalPrice ?? + (detail.price != null && detail.quantity ? Number((Number(detail.price) * Number(detail.quantity)).toFixed(2)) - : undefined + : undefined) })) ) diff --git a/src/views/wms/order/receipt/index.vue b/src/views/wms/order/receipt/index.vue index fae597e76..879933968 100644 --- a/src/views/wms/order/receipt/index.vue +++ b/src/views/wms/order/receipt/index.vue @@ -547,6 +547,9 @@ const handleWarehouseChange = () => { /** 计算明细金额 */ const getDetailTotalPrice = (detail: ReceiptOrderDetailVO) => { + if (detail.totalPrice !== undefined && detail.totalPrice !== null) { + return detail.totalPrice + } if (!detail.quantity || detail.price === undefined || detail.price === null) { return undefined } diff --git a/src/views/wms/order/shipment/ShipmentOrderDetail.vue b/src/views/wms/order/shipment/ShipmentOrderDetail.vue index efb33b983..59d1d5b7a 100644 --- a/src/views/wms/order/shipment/ShipmentOrderDetail.vue +++ b/src/views/wms/order/shipment/ShipmentOrderDetail.vue @@ -121,9 +121,10 @@ const detailRows = computed(() => (detailData.value.details || []).map((detail) => ({ ...detail, totalPrice: - detail.price != null && detail.quantity + detail.totalPrice ?? + (detail.price != null && detail.quantity ? Number(detail.price) * Number(detail.quantity) - : undefined + : undefined) })) ) diff --git a/src/views/wms/order/shipment/ShipmentOrderForm.vue b/src/views/wms/order/shipment/ShipmentOrderForm.vue index e38f51785..caff9950d 100644 --- a/src/views/wms/order/shipment/ShipmentOrderForm.vue +++ b/src/views/wms/order/shipment/ShipmentOrderForm.vue @@ -430,7 +430,7 @@ const buildSubmitData = () => { } = formData.value return { ...order, - details: (details || []).map(({ totalPrice: _rowTotalPrice, ...detail }) => detail) + details: details || [] } as ShipmentOrderVO } diff --git a/src/views/wms/order/shipment/ShipmentOrderPrint.vue b/src/views/wms/order/shipment/ShipmentOrderPrint.vue index 0b86df8a7..7f2b43fca 100644 --- a/src/views/wms/order/shipment/ShipmentOrderPrint.vue +++ b/src/views/wms/order/shipment/ShipmentOrderPrint.vue @@ -131,9 +131,10 @@ const printRows = computed(() => (printData.value.details || []).map((detail) => ({ ...detail, totalPrice: - detail.price != null && detail.quantity + detail.totalPrice ?? + (detail.price != null && detail.quantity ? Number((Number(detail.price) * Number(detail.quantity)).toFixed(2)) - : undefined + : undefined) })) ) diff --git a/src/views/wms/order/shipment/index.vue b/src/views/wms/order/shipment/index.vue index 38beb0c83..ea672ab4a 100644 --- a/src/views/wms/order/shipment/index.vue +++ b/src/views/wms/order/shipment/index.vue @@ -547,6 +547,9 @@ const handleWarehouseChange = () => { /** 计算明细金额 */ const getDetailTotalPrice = (detail: ShipmentOrderDetailVO) => { + if (detail.totalPrice !== undefined && detail.totalPrice !== null) { + return detail.totalPrice + } if (!detail.quantity || detail.price === undefined || detail.price === null) { return undefined }