Commit d49f01a7 by wusiyi

feat: 工厂订单new新增全部tab下的状态筛选 #1006853

parent ff5bc346
...@@ -6,6 +6,7 @@ export interface StatusTreeNode { ...@@ -6,6 +6,7 @@ export interface StatusTreeNode {
} }
export interface SearchForm { export interface SearchForm {
status?: string
platform?: string platform?: string
craftCode?: string | string[] craftCode?: string | string[]
thirdSkuCode?: string thirdSkuCode?: string
......
...@@ -6,6 +6,7 @@ export interface StatusTreeNode { ...@@ -6,6 +6,7 @@ export interface StatusTreeNode {
} }
export interface SearchForm { export interface SearchForm {
status?: string
platform?: string platform?: string
craftCode?: string | string[] craftCode?: string | string[]
thirdSkuCode?: string thirdSkuCode?: string
......
...@@ -49,6 +49,23 @@ ...@@ -49,6 +49,23 @@
:inline="true" :inline="true"
label-width="70px" label-width="70px"
> >
<ElFormItem v-if="status === 'ALL'" label="状态">
<ElTreeSelect
v-model="searchForm.status"
:data="statusTreeChildren"
:props="{
value: 'status',
label: 'statusName',
children: 'children',
}"
node-key="status"
placeholder="请选择"
clearable
filterable
check-strictly
style="width: 140px"
/>
</ElFormItem>
<ElFormItem label="平台"> <ElFormItem label="平台">
<ElSelect <ElSelect
v-model="searchForm.platform" v-model="searchForm.platform"
...@@ -673,8 +690,8 @@ ...@@ -673,8 +690,8 @@
<div v-if="isCardLayout" :key="status" class="card-content"> <div v-if="isCardLayout" :key="status" class="card-content">
<CardLayout <CardLayout
ref="cardLayoutRef" ref="cardLayoutRef"
:status="status" :status="listQueryStatus"
:query-payload="getQueryPayload()" :query-payload="getListQueryPayload()"
@selection-change="handleCardSelectionChange" @selection-change="handleCardSelectionChange"
@view-detail="handleViewDetail" @view-detail="handleViewDetail"
/> />
...@@ -1093,11 +1110,41 @@ const { ...@@ -1093,11 +1110,41 @@ const {
onClearTableState: () => {}, onClearTableState: () => {},
onRefreshCurrentView: () => {}, onRefreshCurrentView: () => {},
}) })
// 查询状态树
const statusTreeChildren = computed(() => {
const tree = statusTree.value?.[0]?.children
if (!tree) return []
tree.forEach((item) => {
if (item.status === 'PICKING') item.children = []
})
return tree.filter(
(item) =>
item.status !== 'AWAITING_RESTOCK' && item.status !== 'BATCH_MANAGE',
)
})
getFactoryOrderSearchVisibilityContext = () => ({ getFactoryOrderSearchVisibilityContext = () => ({
status: status.value, status: searchForm.value.status ?? status.value,
isCardLayout: isCardLayout.value, isCardLayout: isCardLayout.value,
}) })
// 全部状态下列表/导出请求status参数
const listQueryStatus = computed(() => {
if (status.value === 'ALL' && searchForm.value.status) {
return searchForm.value.status
}
return status.value
})
const getListQueryPayload = () => {
const payload = { ...getQueryPayload() }
if (status.value === 'ALL' && searchForm.value.status) {
payload.status = searchForm.value.status
} else {
delete payload.status
}
return payload
}
const { const {
subLoading, subLoading,
activeTab, activeTab,
...@@ -1123,10 +1170,10 @@ const { ...@@ -1123,10 +1170,10 @@ const {
handleTabClick, handleTabClick,
handleMainTableSortChange, handleMainTableSortChange,
} = useOrderListAndDetail({ } = useOrderListAndDetail({
status, status: listQueryStatus,
isCardLayout, isCardLayout,
isTableLayout, isTableLayout,
getQueryPayload, getQueryPayload: getListQueryPayload,
getListPageAcceptedSubStatus, getListPageAcceptedSubStatus,
suspendedSubTab, suspendedSubTab,
}) })
...@@ -1171,7 +1218,7 @@ const submitExportForm = async () => { ...@@ -1171,7 +1218,7 @@ const submitExportForm = async () => {
try { try {
await exportFactoryOrderInfo({ await exportFactoryOrderInfo({
...params, ...params,
...(resourceType === 2 ? getQueryPayload() : {}), ...(resourceType === 2 ? getListQueryPayload() : {}),
} as ExportParams) } as ExportParams)
ElMessage.success('请求成功,请稍后到右上角[我的下载]中查看') ElMessage.success('请求成功,请稍后到右上角[我的下载]中查看')
exportVisible.value = false exportVisible.value = false
......
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