fix filter from order detail
This commit is contained in:
@@ -53,6 +53,19 @@
|
||||
@scrolltolower="loadMore"
|
||||
>
|
||||
<div class="list-wrap">
|
||||
<t-cell-group v-if="salesOrder" class="order-info" theme="card">
|
||||
<t-cell title="订单号" :note="salesOrder.orderNo || salesOrder.id || '未知订单'" />
|
||||
<t-cell title="订单类型" :note="getSalesOrderTypeText(salesOrder.orderType)" />
|
||||
<t-cell title="订单状态">
|
||||
<template #note>
|
||||
<t-tag
|
||||
:content="getSalesOrderStatusText(salesOrder.status)"
|
||||
:theme="getStatusTheme(salesOrder.status)"
|
||||
variant="light-outline"
|
||||
/>
|
||||
</template>
|
||||
</t-cell>
|
||||
</t-cell-group>
|
||||
<t-cell-group v-if="isCustomDate" class="date-summary" theme="card">
|
||||
<t-cell
|
||||
title="开始时间"
|
||||
@@ -120,6 +133,7 @@ import { Time } from "timi-web";
|
||||
import { useUserStore } from "timi-web-api";
|
||||
import CustomerAPI from "@/api/CustomerAPI";
|
||||
import FulfillmentAPI from "@/api/FulfillmentAPI";
|
||||
import SalesOrderAPI from "@/api/SalesOrderAPI";
|
||||
import CustomerSelector from "@/components/CustomerSelector.vue";
|
||||
import NavBarActionMenu from "@/components/NavBarActionMenu.vue";
|
||||
import OrderFulfillmentListCell from "@/pages/fulfillment/components/OrderFulfillmentListCell.vue";
|
||||
@@ -127,9 +141,11 @@ import { useNavBarStore } from "@/store/navBarStore";
|
||||
import type { GaoFulfillmentStatus, OrderFulfillment } from "@/types/Fulfillment";
|
||||
import type { NavBarAction } from "@/types/NavBarAction";
|
||||
import type { Customer } from "@/types/Customer";
|
||||
import type { SalesOrder } from "@/types/SalesOrder";
|
||||
import { getErrorMessage } from "@/utils/error";
|
||||
import { Message } from "@/utils/message";
|
||||
import { permissionCodes } from "@/utils/permission";
|
||||
import { getSalesOrderStatusText, getSalesOrderTypeText, getStatusTheme } from "@/utils/salesOrder";
|
||||
|
||||
defineOptions({ name: "OrderFulfillmentList" });
|
||||
|
||||
@@ -167,6 +183,7 @@ const dateOptions: Array<{ label: string; value: DateFilterType }> = [
|
||||
|
||||
const customerId = ref(getQueryText(route.query.customerId));
|
||||
const selectedCustomer = ref<Customer>();
|
||||
const salesOrder = ref<SalesOrder>();
|
||||
const customerSelectorVisible = ref(false);
|
||||
const customerSearchKeyword = ref("");
|
||||
const dateFilterType = ref<DateFilterType>(parseDateFilterType(route.query.dateType));
|
||||
@@ -331,6 +348,20 @@ async function clearCustomer(): Promise<void> {
|
||||
await reloadList();
|
||||
}
|
||||
|
||||
async function loadSalesOrder(): Promise<void> {
|
||||
const salesOrderId = getQueryText(route.query.salesOrderId);
|
||||
if (!salesOrderId) {
|
||||
salesOrder.value = undefined;
|
||||
return;
|
||||
}
|
||||
try {
|
||||
salesOrder.value = await SalesOrderAPI.detail(salesOrderId);
|
||||
} catch (error) {
|
||||
salesOrder.value = undefined;
|
||||
Message.error(getErrorMessage(error, "订单信息加载失败"));
|
||||
}
|
||||
}
|
||||
|
||||
async function selectDateFilter(value: DropdownValue): Promise<void> {
|
||||
if (Array.isArray(value)) {
|
||||
return;
|
||||
@@ -513,6 +544,7 @@ onMounted(async () => {
|
||||
navBarStore.clearRight();
|
||||
navBarStore.setCustomRightVisible(canCreate.value);
|
||||
try {
|
||||
await loadSalesOrder();
|
||||
if (customerId.value) {
|
||||
selectedCustomer.value = await CustomerAPI.detail(customerId.value);
|
||||
customerSearchKeyword.value = getCustomerSearchKeyword(selectedCustomer.value);
|
||||
|
||||
@@ -455,6 +455,7 @@ async function toFulfillmentList(): Promise<void> {
|
||||
path: "/management/order-fulfillments",
|
||||
query: {
|
||||
salesOrderId: order.value.id,
|
||||
dateType: "all",
|
||||
transitionDepth: String(getCurrentRouteDepth() + 1)
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user