perf: 优化移动端获取当前订单

dev/ckeditor
LiaoYijun 3 months ago
parent 7cd6e1b2aa
commit bf0f85b17a

@ -4,6 +4,8 @@ import { useEffect, useState } from 'react'
import { App, Flex, Select, Tooltip, Divider, Typography, Skeleton, Checkbox } from 'antd' import { App, Flex, Select, Tooltip, Divider, Typography, Skeleton, Checkbox } from 'antd'
import { useOrderStore, fetchSetRemindStateAction, OrderLabelDefaultOptions, OrderStatusDefaultOptions, remindStatusOptions } from '@/stores/OrderStore' import { useOrderStore, fetchSetRemindStateAction, OrderLabelDefaultOptions, OrderStatusDefaultOptions, remindStatusOptions } from '@/stores/OrderStore'
import { copy, isEmpty } from '@/utils/commons' import { copy, isEmpty } from '@/utils/commons'
import { useShallow } from 'zustand/react/shallow'
import useConversationStore from '@/stores/ConversationStore'
const OrderProfile = ({ coliSN, ...props }) => { const OrderProfile = ({ coliSN, ...props }) => {
const { notification, message } = App.useApp() const { notification, message } = App.useApp()
@ -21,11 +23,14 @@ const OrderProfile = ({ coliSN, ...props }) => {
s.appendOrderComment, s.appendOrderComment,
]) ])
const currentOrder = useConversationStore(useShallow(state => state.currentConversation?.coli_sn || ""))
const orderId = coliSN || currentOrder
const [orderRemindState, setOrderRemindState] = useState(orderDetail.remindstate) const [orderRemindState, setOrderRemindState] = useState(orderDetail.remindstate)
useEffect(() => { useEffect(() => {
if (coliSN) { if (orderId) {
setLoading(true) setLoading(true)
fetchOrderDetail(coliSN) fetchOrderDetail(orderId)
.finally(() => setLoading(false)) .finally(() => setLoading(false))
.catch((reason) => { .catch((reason) => {
notification.error({ notification.error({
@ -37,7 +42,7 @@ const OrderProfile = ({ coliSN, ...props }) => {
}) })
} }
return () => {} return () => {}
}, [coliSN]) }, [orderId])
const handleSetRemindState = async (checkedValue) => { const handleSetRemindState = async (checkedValue) => {
const state = checkedValue.filter((v) => v !== orderRemindState) const state = checkedValue.filter((v) => v !== orderRemindState)

@ -17,7 +17,7 @@ import MobileConversation from '@/views/mobile/Conversation'
import MobileChat from '@/views/mobile/Chat' import MobileChat from '@/views/mobile/Chat'
import CallCenter from '@/views/CallCenter' import CallCenter from '@/views/CallCenter'
import MobileSecondHeader from '@/views/mobile/SecondHeaderWrapper' import MobileSecondHeader from '@/views/mobile/SecondHeaderWrapper'
import CustomerProfile from '@/views/Conversations/Online/order/CustomerProfile' import OrderProfile from '@/components/OrderProfile'
import SnippetList from '@/views/accounts/SnippetList' import SnippetList from '@/views/accounts/SnippetList'
import GeneratePayment from '@/views/accounts/GeneratePayment' import GeneratePayment from '@/views/accounts/GeneratePayment'
@ -64,7 +64,7 @@ const router = createBrowserRouter([
{ {
element: <MobileSecondHeader />, element: <MobileSecondHeader />,
children: [ children: [
{ path: 'm/order', element: <CustomerProfile /> }, { path: 'm/order', element: <OrderProfile /> },
{ path: 'callcenter/call', element: <CallCenter /> }, { path: 'callcenter/call', element: <CallCenter /> },
{ path: 'callcenter/call/:phonenumber', element: <CallCenter /> }, { path: 'callcenter/call/:phonenumber', element: <CallCenter /> },
], ],

@ -18,6 +18,7 @@ import { postEditConversationItemColiAction } from "@/actions/ConversationAction
import useStyleStore from '@/stores/StyleStore'; import useStyleStore from '@/stores/StyleStore';
import SupplierEmailDrawer from "../Components/EmailListDrawer"; import SupplierEmailDrawer from "../Components/EmailListDrawer";
// @Deprecated OrderProfile
const CustomerProfile = ({ disabled }) => { const CustomerProfile = ({ disabled }) => {
const navigate = useNavigate(); const navigate = useNavigate();
const { notification, message } = App.useApp(); const { notification, message } = App.useApp();

Loading…
Cancel
Save