diff --git a/src/api/mes/wm/productsales/index.ts b/src/api/mes/wm/productsales/index.ts
index 6cc9892c4..7391506fb 100644
--- a/src/api/mes/wm/productsales/index.ts
+++ b/src/api/mes/wm/productsales/index.ts
@@ -48,9 +48,19 @@ export const WmProductSalesApi = {
return await request.put({ url: '/mes/wm/product-sales/submit?id=' + id })
},
+ // 校验销售出库单数量
+ checkProductSalesQuantity: async (id: number) => {
+ return await request.get({ url: '/mes/wm/product-sales/check-quantity?id=' + id })
+ },
+
// 执行拣货
- pickProductSales: async (id: number) => {
- return await request.put({ url: '/mes/wm/product-sales/pick?id=' + id })
+ stockProductSales: async (id: number) => {
+ return await request.put({ url: '/mes/wm/product-sales/stock?id=' + id })
+ },
+
+ // 填写运单
+ shippingProductSales: async (data: WmProductSalesVO) => {
+ return await request.put({ url: '/mes/wm/product-sales/shipping', data })
},
// 执行出库
diff --git a/src/views/mes/utils/constants.ts b/src/views/mes/utils/constants.ts
index b00959909..fd99ae246 100644
--- a/src/views/mes/utils/constants.ts
+++ b/src/views/mes/utils/constants.ts
@@ -266,6 +266,7 @@ export const MesWmProductReceiptStatusEnum = {
export const MesWmProductSalesStatusEnum = {
PREPARE: MesOrderStatusConstants.DRAFT,
APPROVING: MesOrderStatusConstants.APPROVING,
+ SHIPPING: 10, // 待填写运单
APPROVED: MesOrderStatusConstants.APPROVED,
FINISHED: MesOrderStatusConstants.FINISHED,
CANCELED: MesOrderStatusConstants.CANCELLED
diff --git a/src/views/mes/wm/productsales/ProductSalesForm.vue b/src/views/mes/wm/productsales/ProductSalesForm.vue
index e541db2fc..f66eee0f8 100644
--- a/src/views/mes/wm/productsales/ProductSalesForm.vue
+++ b/src/views/mes/wm/productsales/ProductSalesForm.vue
@@ -131,7 +131,7 @@
确 定
-
+
执行拣货
@@ -241,11 +241,15 @@ const submitForm = async () => {
}
/** 执行拣货 */
-const handlePick = async () => {
+const handleStock = async () => {
try {
- await message.confirm('确认执行拣货?')
formLoading.value = true
- await WmProductSalesApi.pickProductSales(formData.value.id!)
+ // 校验出库数量与拣货数量是否一致
+ const quantityMatch = await WmProductSalesApi.checkProductSalesQuantity(formData.value.id!)
+ if (!quantityMatch) {
+ await message.confirm('出库数量与拣货数量不一致,确认执行拣货?')
+ }
+ await WmProductSalesApi.stockProductSales(formData.value.id!)
message.success('拣货成功')
dialogVisible.value = false
emit('success')
@@ -256,19 +260,16 @@ const handlePick = async () => {
}
/** 填写运单 */
-// TODO @AI:方法改成 handleShipping
const handleShipping = async () => {
try {
await message.confirm('确认提交运单信息?')
formLoading.value = true
- // 只提交运输信息字段
const data = {
id: formData.value.id,
carrier: formData.value.carrier,
shippingNumber: formData.value.shippingNumber
} as unknown as WmProductSalesVO
- // TODO @AI:不是更新方法,需要增加一个 controller 接口;
- await WmProductSalesApi.updateProductSales(data)
+ await WmProductSalesApi.shippingProductSales(data)
message.success('运单信息填写成功')
dialogVisible.value = false
emit('success')
diff --git a/src/views/mes/wm/productsales/index.vue b/src/views/mes/wm/productsales/index.vue
index 5988d5712..47754ea3b 100644
--- a/src/views/mes/wm/productsales/index.vue
+++ b/src/views/mes/wm/productsales/index.vue
@@ -136,18 +136,26 @@
>
删除
-
拣货
-
+
+
+ 填写运单
+