fix(wms):完善 ep 的 order receipt 迁移(表单、详情)

pull/345/head
YunaiV 2026-05-18 08:34:35 +08:00
parent b42e9b36e5
commit 6740401f6c
2 changed files with 11 additions and 11 deletions

View File

@ -15,12 +15,10 @@ import { useDescription } from '#/components/description';
import {
formatPrice,
formatQuantity,
formatSumPrice,
formatSumQuantity,
multiplyPrice,
} from '#/views/wms/utils/format';
import { useDetailSchema } from '../data';
import { getDetailFooter, useDetailSchema } from '../data';
interface DetailRow extends WmsReceiptOrderDetailApi.ReceiptOrderDetail {
totalPrice?: number;
@ -79,7 +77,9 @@ const [Modal, modalApi] = useVbenModal({
:data="detailRows"
border
empty-text="暂无商品明细"
:footer-method="getDetailFooter"
:show-overflow="true"
show-footer
size="small"
>
<VxeColumn title="商品信息" min-width="220">
@ -98,7 +98,7 @@ const [Modal, modalApi] = useVbenModal({
</div>
</template>
</VxeColumn>
<VxeColumn title="数量" align="right" width="120">
<VxeColumn field="quantity" title="数量" align="right" width="120">
<template #default="{ row }">
{{ formatQuantity(row.quantity) || '-' }}
</template>
@ -109,16 +109,12 @@ const [Modal, modalApi] = useVbenModal({
{{ formatPrice(row.price) || '-' }}
</template>
</VxeColumn>
<VxeColumn title="总价" align="right" width="140">
<VxeColumn field="totalPrice" title="总价" align="right" width="140">
<template #default="{ row }">
{{ formatPrice(row.totalPrice) || '-' }}
</template>
</VxeColumn>
</VxeTable>
<div class="flex justify-end gap-6 text-sm">
<span>合计数量{{ formatSumQuantity(detailRows, (detail) => detail.quantity) }}</span>
<span>合计金额{{ formatSumPrice(detailRows, (detail) => detail.totalPrice) }}</span>
</div>
</div>
</Modal>
</template>

View File

@ -45,7 +45,9 @@ type FormMode = 'create' | 'update';
defineOptions({ name: 'WmsReceiptOrderForm' });
const emit = defineEmits(['success']);
const emit = defineEmits<{
success: [];
}>();
const formData = ref<WmsReceiptOrderApi.ReceiptOrder>({});
const formMode = ref<FormMode>('create');
@ -120,6 +122,7 @@ function buildDetail(sku: WmsItemSkuApi.ItemSku): DetailRow {
/** 设置入库明细 */
function setDetails(list?: WmsReceiptOrderDetailApi.ReceiptOrderDetail[]) {
detailSeq = 0;
details.value = (list || []).map((detail) => normalizeDetail(detail));
void refreshDetailFooter();
}
@ -330,6 +333,7 @@ const [Modal, modalApi] = useVbenModal({
setDetails(orderDetails);
// values
await formApi.setValues(formData.value);
await nextTick();
originalSubmitData.value = await buildSubmitData();
} finally {
modalApi.unlock();
@ -344,8 +348,8 @@ const [Modal, modalApi] = useVbenModal({
};
setDetails([]);
await formApi.setValues(formData.value);
originalSubmitData.value = await buildSubmitData();
await nextTick();
originalSubmitData.value = await buildSubmitData();
},
});
</script>