Commit 5d6c57f4 by qinjianhui

feat: 补胚完成功能开发

parent cfdabd67
......@@ -214,6 +214,13 @@ export function pickCompleteApi(ids: (number | string)[]) {
)
}
export function replenishmentCompleteApi(ids: (number | string)[]) {
return axios.post<never, BaseRespData<void>>(
'factory/podOrderOperation/replenishmentComplete',
ids,
)
}
export function pickFailApi(ids: (number | string)[]) {
return axios.post<never, BaseRespData<PickFailData[]>>(
'factory/orderNew/pickFail',
......
<template>
<ElDialog
v-model="visible"
title="拣胚完成"
:title="dialogTitle"
width="1400px"
:close-on-click-modal="false"
@close="handleClose"
......@@ -92,8 +92,10 @@ import { ElMessage } from 'element-plus'
import {
pickCompleteByIdsDataApi,
pickCompleteApi,
replenishmentCompleteApi,
} from '@/api/factoryOrderNew'
import type { PickCompleteData } from '@/types/api/factoryOrderNew'
import type { BaseRespData } from '@/types/api'
import TableView from '@/components/TableView.vue'
import Icon from '@/components/Icon.vue'
import OperateDetailsDialog from './OperateDetailsDialog.vue'
......@@ -111,6 +113,10 @@ const emit = defineEmits<{
const visible = ref(false)
const pickData = ref<PickData | null>(null)
const selections = ref<PickCompleteData[]>([])
const dialogTitle = ref('拣胚完成')
const submitApi = ref<(ids: (number | string)[]) => Promise<BaseRespData<void>>>(
pickCompleteApi,
)
const columns = [
{
......@@ -191,10 +197,17 @@ const open = async (
ids: (number | string)[],
adjustOrderIds?: number[],
selectedRow?: PickCompleteData,
options?: {
title?: string
submitType?: 'pick' | 'replenish'
},
) => {
const previousPickList = pickData.value?.pickingSituationList ?? []
selections.value = []
pickData.value = null
dialogTitle.value = options?.title || '拣胚完成'
submitApi.value =
options?.submitType === 'replenish' ? replenishmentCompleteApi : pickCompleteApi
const loading = ElLoading.service({
text: '操作中...',
background: 'rgba(0, 0, 0, 0.3)',
......@@ -252,9 +265,9 @@ const handleSubmit = async () => {
?.map((item) => item.availableOrderIds)
.flat()
try {
const res = await pickCompleteApi(orderIds as (number | string)[])
const res = await submitApi.value(orderIds as (number | string)[])
if (res.code !== 200) return
ElMessage.success('拣胚完成')
ElMessage.success(dialogTitle.value)
visible.value = false
emit('success')
} catch (e) {
......
......@@ -2191,7 +2191,10 @@ const handleSyncAddress = async () => {
}
const handleReplenishComplete = () => {
if (!ensureSelection()) return
pickCompleteDialogRef.value?.open(getSelectedIds())
pickCompleteDialogRef.value?.open(getSelectedIds(), undefined, undefined, {
title: '补胚完成',
submitType: 'replenish',
})
}
const handleReplenishFail = () => {
if (!ensureSelection()) return
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment