Commit 70fb178e by qinjianhui

feat: 子状态tab条件

parent d3309db6
......@@ -22,7 +22,7 @@ export function getFactoryOrderNewListApi(
currentPage: number,
pageSize: number,
status?: string,
subStatus?: string,
subStatus?: number,
) {
return axios.post<never, BasePaginationData<FactoryOrderNewListData>>(
'factory/podOrder/list_page',
......@@ -31,7 +31,7 @@ export function getFactoryOrderNewListApi(
currentPage,
pageSize,
status,
subStatus,
acceptedStatus: subStatus,
},
)
}
......
......@@ -24,10 +24,12 @@
</ElFormItem>
</ElForm>
<template #footer>
<div class="dialog-footer" style="text-align: center">
<ElButton @click="visible = false">取消</ElButton>
<ElButton type="primary" :loading="submitLoading" @click="handleSubmit">
确认
</ElButton>
<ElButton type="primary" :loading="submitLoading" @click="handleSubmit">
确认
</ElButton>
</div>
</template>
</ElDialog>
</template>
......
......@@ -132,8 +132,12 @@
<ElFormItem label="数量">
<el-radio-group v-model="searchForm.multi">
<el-radio-button :value="false" @click="toggleMulti(false)">单件</el-radio-button>
<el-radio-button :value="true" @click="toggleMulti(true)">多件</el-radio-button>
<el-radio-button :value="false" @click="toggleMulti(false)"
>单件</el-radio-button
>
<el-radio-button :value="true" @click="toggleMulti(true)"
>多件</el-radio-button
>
</el-radio-group>
</ElFormItem>
......@@ -426,8 +430,15 @@
<!-- ====== 操作按钮栏 ====== -->
<div v-if="!isSpecialLayout" class="operation-list">
<span v-if="status === 'PENDING_RECEIVE'" class="item">
<ElButton type="success" @click="handleConfirmOrder">
{{ pendingAcceptSubTab === 'ACCEPT_FAIL_OUT_OF_STOCK' ? '重新接单' : '确认接单' }}
<ElButton
type="success"
@click="handleConfirmOrder"
>
{{
pendingAcceptSubTab === 'ACCEPT_FAIL_OUT_OF_STOCK'
? '重新接单'
: '确认接单'
}}
</ElButton>
</span>
<span
......@@ -680,7 +691,9 @@
}"
@click="handlePendingAcceptTabClick('ACCEPT_FAIL_OUT_OF_STOCK')"
>
接单失败-缺货<span> ({{ pendingAcceptCounts.acceptFailOutOfStockCount }}) </span>
接单失败-缺货<span>
({{ pendingAcceptCounts.acceptFailOutOfStockCount }})
</span>
</div>
</div>
<!-- 批次管理 -->
......@@ -723,9 +736,9 @@
type="primary"
link
size="small"
@click.stop="handleSingleArrange(row)"
@click.stop="handleSingleConfirmOrder(row)"
>
</ElButton>
</template>
</TableView>
......@@ -938,7 +951,10 @@ const status = ref<string>('PENDING_RECEIVE')
const pendingAcceptSubTab = ref<'PENDING_RECEIVE' | 'ACCEPT_FAIL_OUT_OF_STOCK'>(
'PENDING_RECEIVE',
)
const pendingAcceptCounts = ref({ pendingCount: 0, acceptFailOutOfStockCount: 0 })
const pendingAcceptCounts = ref({
pendingCount: 0,
acceptFailOutOfStockCount: 0,
})
const suspendedTabs = [
{ label: '客户拦截', value: 'CUSTOMER_INTERCEPT', count: 0 },
{ label: '地址异常', value: 'ADDRESS_EXCEPTION', count: 0 },
......@@ -1219,6 +1235,7 @@ const mainColumns = [
prop: 'operation',
label: '操作',
minWidth: 120,
align: 'center',
slot: 'operation',
fixed: 'right',
},
......@@ -1368,16 +1385,20 @@ const {
size,
status.value,
).then(async (res) => {
const { records } = res.data
const records = Array.isArray(res.data?.records) ? res.data.records : []
await nextTick(() => {
tableRef.value.setCurrentRow(records[0])
currentRow.value = (records as never)[0]
currentRow.value = records[0] as never
})
return res.data
})
}
const currentSubStatus =
status.value === 'PENDING_RECEIVE' ? pendingAcceptSubTab.value : undefined
status.value === 'PENDING_RECEIVE'
? pendingAcceptSubTab.value === 'PENDING_RECEIVE'
? 0
: 2
: undefined
return getFactoryOrderNewListApi(
getQueryPayload(),
page,
......@@ -1385,17 +1406,18 @@ const {
status.value === 'ALL' ? undefined : status.value,
currentSubStatus,
).then(async (res) => {
const { records } = res.data
const records = Array.isArray(res.data?.records) ? res.data.records : []
const extra = res.data as unknown as Record<string, unknown>
if (status.value === 'PENDING_RECEIVE') {
pendingAcceptCounts.value = {
pendingCount: (extra.pendingCount as number) ?? 0,
acceptFailOutOfStockCount: (extra.acceptFailOutOfStockCount as number) ?? 0,
acceptFailOutOfStockCount:
(extra.acceptFailOutOfStockCount as number) ?? 0,
}
}
await nextTick(() => {
tableRef.value.setCurrentRow(records[0])
currentRow.value = (records as never)[0]
currentRow.value = records[0] as never
})
return res.data
})
......@@ -1466,7 +1488,9 @@ const handleStatusNodeClick = (node: StatusTreeNode) => {
refreshCurrentView()
}
}
const handlePendingAcceptTabClick = (tab: 'PENDING_RECEIVE' | 'ACCEPT_FAIL_OUT_OF_STOCK') => {
const handlePendingAcceptTabClick = (
tab: 'PENDING_RECEIVE' | 'ACCEPT_FAIL_OUT_OF_STOCK',
) => {
if (pendingAcceptSubTab.value === tab) return
pendingAcceptSubTab.value = tab
refreshTableList()
......@@ -1509,13 +1533,13 @@ const getOrderDetailsById = async (tabName?: 'product' | 'log') => {
const productRes = isSuspend
? await getSuspendDetailApi(id)
: await getFactoryOrderNewDetailApi(id)
productList.value = productRes.data || []
productList.value = Array.isArray(productRes.data) ? productRes.data : []
} else {
logList.value = []
const logRes = isSuspend
? await getSuspendLogApi(id)
: await getFactoryOrderNewLogApi(id)
logList.value = logRes.data || []
logList.value = Array.isArray(logRes.data) ? logRes.data : []
}
} catch (e) {
console.error(e)
......@@ -1666,12 +1690,8 @@ const handleArrange = async () => {
showAutoSwitch: true,
})
}
const handleSingleArrange = (row: FactoryOrderNewListData) => {
arrangeDialogRef.value?.open({
productIdList: [row.id],
requestUrl: 'factory/podOrder/updateLogisticsToArrange',
showAutoSwitch: true,
})
const handleSingleConfirmOrder = (row: FactoryOrderNewListData) => {
confirmOrderDialogRef.value?.open([row.id])
}
const podOrderVisible = ref(false)
const warehouseList = ref<WarehouseListData[]>([])
......
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