diff --git a/src/api/mes/wm/productsales/line/index.ts b/src/api/mes/wm/productsales/line/index.ts
index 7be5fbdeb..cf8f57482 100644
--- a/src/api/mes/wm/productsales/line/index.ts
+++ b/src/api/mes/wm/productsales/line/index.ts
@@ -16,11 +16,9 @@ export interface WmProductSalesLineVO {
// MES 销售出库单行 API
export const WmProductSalesLineApi = {
- // 查询销售出库单行列表(按出库单编号)
- getProductSalesLineListBySalesId: async (salesId: number) => {
- return await request.get({
- url: '/mes/wm/product-sales-line/list-by-sales-id?salesId=' + salesId
- })
+ // 查询销售出库单行分页
+ getProductSalesLinePage: async (params: any) => {
+ return await request.get({ url: '/mes/wm/product-sales-line/page', params })
},
// 查询销售出库单行详情
diff --git a/src/views/mes/wm/productsales/ProductSalesDetailForm.vue b/src/views/mes/wm/productsales/ProductSalesDetailForm.vue
index 5c8b3134b..9294611c1 100644
--- a/src/views/mes/wm/productsales/ProductSalesDetailForm.vue
+++ b/src/views/mes/wm/productsales/ProductSalesDetailForm.vue
@@ -24,7 +24,7 @@
-
+
-
@@ -41,7 +40,7 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -122,6 +100,27 @@
+ 运输信息
+
+
+
+
+
+
+
+
+
+
+
+
@@ -135,6 +134,9 @@
执行拣货
+
+ 确认填写
+
取 消
@@ -153,7 +155,7 @@ const message = useMessage() // 消息弹窗
const dialogVisible = ref(false) // 弹窗的是否展示
const formLoading = ref(false) // 表单的加载中
-const formType = ref('create') // 表单的类型:create / update / pick / detail
+const formType = ref('create') // 表单的类型:create / update / pick / shipping / detail
const formData = ref({
id: undefined as number | undefined,
code: undefined,
@@ -178,12 +180,14 @@ const formRef = ref() // 表单 Ref
const isUpdate = computed(() => ['create', 'update'].includes(formType.value)) // 是否为编辑模式
const isPick = computed(() => formType.value === 'pick') // 是否为拣货模式
-const isHeaderReadonly = computed(() => ['pick', 'detail'].includes(formType.value)) // 是否只读
+const isShipping = computed(() => formType.value === 'shipping') // 是否为填写运单模式
+const isHeaderReadonly = computed(() => ['pick', 'shipping', 'detail'].includes(formType.value)) // 是否只读
const dialogTitle = computed(() => {
const titles = {
create: '新增销售出库单',
update: '编辑销售出库单',
pick: '执行拣货',
+ shipping: '填写运单',
detail: '销售出库单详情'
}
return titles[formType.value] || formType.value
@@ -251,6 +255,29 @@ 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)
+ message.success('运单信息填写成功')
+ dialogVisible.value = false
+ emit('success')
+ } catch {
+ } finally {
+ formLoading.value = false
+ }
+}
+
/** 重置表单 */
const resetForm = () => {
formData.value = {
diff --git a/src/views/mes/wm/productsales/ProductSalesLineList.vue b/src/views/mes/wm/productsales/ProductSalesLineList.vue
index aec691da3..994d44032 100644
--- a/src/views/mes/wm/productsales/ProductSalesLineList.vue
+++ b/src/views/mes/wm/productsales/ProductSalesLineList.vue
@@ -65,6 +65,12 @@
+
@@ -84,8 +90,7 @@
-
-
+
@@ -156,12 +161,21 @@ const isPick = computed(() => props.formType === 'pick') // 是否为拣货模
// ==================== 列表 ====================
const loading = ref(false) // 列表的加载中
const list = ref([]) // 行列表
+const total = ref(0) // 列表的总页数
+const queryParams = reactive({
+ pageNo: 1,
+ pageSize: 10,
+ salesId: undefined as number | undefined
+})
/** 查询行列表 */
const getList = async () => {
loading.value = true
try {
- list.value = await WmProductSalesLineApi.getProductSalesLineListBySalesId(props.salesId)
+ queryParams.salesId = props.salesId
+ const data = await WmProductSalesLineApi.getProductSalesLinePage(queryParams)
+ list.value = data.list
+ total.value = data.total
} finally {
loading.value = false
}
@@ -204,7 +218,6 @@ const openForm = async (type: string, id?: number) => {
lineFormType.value = type
resetForm()
if (id) {
- // TODO @AI:这个是分页接口;
formLoading.value = true
try {
formData.value = await WmProductSalesLineApi.getProductSalesLine(id)