| @@ -1,4 +1,4 @@ | |||||
| import { PreloadPickOrder } from "@/app/api/pickOrder"; | |||||
| import { SearchParams } from "@/app/utils/fetchUtil"; | import { SearchParams } from "@/app/utils/fetchUtil"; | ||||
| import FinishedGoodSearchWrapper from "@/components/FinishedGoodSearch"; | import FinishedGoodSearchWrapper from "@/components/FinishedGoodSearch"; | ||||
| import { getServerI18n, I18nProvider } from "@/i18n"; | import { getServerI18n, I18nProvider } from "@/i18n"; | ||||
| @@ -14,7 +14,7 @@ type Props = {} & SearchParams; | |||||
| const PickOrder: React.FC<Props> = async ({ searchParams }) => { | const PickOrder: React.FC<Props> = async ({ searchParams }) => { | ||||
| const { t } = await getServerI18n("pickOrder"); | const { t } = await getServerI18n("pickOrder"); | ||||
| PreloadPickOrder(); | |||||
| return ( | return ( | ||||
| <> | <> | ||||
| @@ -13,7 +13,7 @@ export const metadata: Metadata = { | |||||
| const PickOrder: React.FC = async () => { | const PickOrder: React.FC = async () => { | ||||
| const { t } = await getServerI18n("pickOrder"); | const { t } = await getServerI18n("pickOrder"); | ||||
| PreloadPickOrder(); | |||||
| //PreloadPickOrder(); | |||||
| return ( | return ( | ||||
| <> | <> | ||||
| @@ -46,7 +46,7 @@ import { clientAuthFetch } from "@/app/utils/clientAuthFetch"; | |||||
| import { NEXT_PUBLIC_API_URL } from "@/config/api"; | import { NEXT_PUBLIC_API_URL } from "@/config/api"; | ||||
| interface Props { | interface Props { | ||||
| pickOrders: PickOrderResult[]; | |||||
| // pickOrders: PickOrderResult[]; | |||||
| printerCombo: PrinterCombo[]; | printerCombo: PrinterCombo[]; | ||||
| } | } | ||||
| @@ -56,7 +56,7 @@ type SearchQuery = Partial< | |||||
| type SearchParamNames = keyof SearchQuery; | type SearchParamNames = keyof SearchQuery; | ||||
| const PickOrderSearch: React.FC<Props> = ({ pickOrders, printerCombo }) => { | |||||
| const PickOrderSearch: React.FC<Props> = ({ printerCombo }) => { | |||||
| const { t } = useTranslation("pickOrder"); | const { t } = useTranslation("pickOrder"); | ||||
| const { data: session } = useSession() as { data: SessionWithTokens | null }; | const { data: session } = useSession() as { data: SessionWithTokens | null }; | ||||
| const currentUserId = session?.id ? parseInt(session.id) : undefined; | const currentUserId = session?.id ? parseInt(session.id) : undefined; | ||||
| @@ -64,7 +64,7 @@ const PickOrderSearch: React.FC<Props> = ({ pickOrders, printerCombo }) => { | |||||
| const [isOpenCreateModal, setIsOpenCreateModal] = useState(false) | const [isOpenCreateModal, setIsOpenCreateModal] = useState(false) | ||||
| const [items, setItems] = useState<ItemCombo[]>([]) | const [items, setItems] = useState<ItemCombo[]>([]) | ||||
| const [printButtonsEnabled, setPrintButtonsEnabled] = useState(false); | const [printButtonsEnabled, setPrintButtonsEnabled] = useState(false); | ||||
| const [filteredPickOrders, setFilteredPickOrders] = useState(pickOrders); | |||||
| //const [filteredPickOrders, setFilteredPickOrders] = useState(pickOrders); | |||||
| const [filterArgs, setFilterArgs] = useState<Record<string, any>>({}); | const [filterArgs, setFilterArgs] = useState<Record<string, any>>({}); | ||||
| const [searchQuery, setSearchQuery] = useState<Record<string, any>>({}); | const [searchQuery, setSearchQuery] = useState<Record<string, any>>({}); | ||||
| const [tabIndex, setTabIndex] = useState(0); | const [tabIndex, setTabIndex] = useState(0); | ||||
| @@ -511,7 +511,7 @@ const handleAssignByLane = useCallback(async ( | |||||
| window.removeEventListener('pickOrderCompletionStatus', handleCompletionStatusChange as EventListener); | window.removeEventListener('pickOrderCompletionStatus', handleCompletionStatusChange as EventListener); | ||||
| }; | }; | ||||
| }, []); | }, []); | ||||
| /* | |||||
| const searchCriteria: Criterion<SearchParamNames>[] = useMemo( | const searchCriteria: Criterion<SearchParamNames>[] = useMemo( | ||||
| () => { | () => { | ||||
| const baseCriteria: Criterion<SearchParamNames>[] = [ | const baseCriteria: Criterion<SearchParamNames>[] = [ | ||||
| @@ -616,7 +616,8 @@ const handleAssignByLane = useCallback(async ( | |||||
| }, | }, | ||||
| [pickOrders, t, tabIndex, items], | [pickOrders, t, tabIndex, items], | ||||
| ); | ); | ||||
| */ | |||||
| /* | |||||
| const fetchNewPagePickOrder = useCallback( | const fetchNewPagePickOrder = useCallback( | ||||
| async ( | async ( | ||||
| pagingController: Record<string, number>, | pagingController: Record<string, number>, | ||||
| @@ -635,11 +636,12 @@ const handleAssignByLane = useCallback(async ( | |||||
| }, | }, | ||||
| [], | [], | ||||
| ); | ); | ||||
| */ | |||||
| /* | |||||
| const onReset = useCallback(() => { | const onReset = useCallback(() => { | ||||
| setFilteredPickOrders(pickOrders); | setFilteredPickOrders(pickOrders); | ||||
| }, [pickOrders]); | }, [pickOrders]); | ||||
| */ | |||||
| useEffect(() => { | useEffect(() => { | ||||
| if (!isOpenCreateModal) { | if (!isOpenCreateModal) { | ||||
| setTabIndex(1) | setTabIndex(1) | ||||
| @@ -1,4 +1,4 @@ | |||||
| import { fetchPickOrders } from "@/app/api/pickOrder"; | |||||
| import GeneralLoading from "../General/GeneralLoading"; | import GeneralLoading from "../General/GeneralLoading"; | ||||
| import PickOrderSearch from "./FinishedGoodSearch"; | import PickOrderSearch from "./FinishedGoodSearch"; | ||||
| import{fetchPrinterCombo} from "@/app/api/settings/printer"; | import{fetchPrinterCombo} from "@/app/api/settings/printer"; | ||||
| @@ -7,19 +7,12 @@ interface SubComponents { | |||||
| } | } | ||||
| const FinishedGoodSearchWrapper: React.FC & SubComponents = async () => { | const FinishedGoodSearchWrapper: React.FC & SubComponents = async () => { | ||||
| const [pickOrders, printerCombo] = await Promise.all([ | |||||
| fetchPickOrders({ | |||||
| code: undefined, | |||||
| targetDateFrom: undefined, | |||||
| targetDateTo: undefined, | |||||
| type: undefined, | |||||
| status: undefined, | |||||
| itemName: undefined, | |||||
| }), | |||||
| const [printerCombo] = await Promise.all([ | |||||
| fetchPrinterCombo(), | fetchPrinterCombo(), | ||||
| ]); | ]); | ||||
| return <PickOrderSearch pickOrders={pickOrders} printerCombo={printerCombo} />; | |||||
| return <PickOrderSearch printerCombo={printerCombo} />; | |||||
| }; | }; | ||||
| FinishedGoodSearchWrapper.Loading = GeneralLoading; | FinishedGoodSearchWrapper.Loading = GeneralLoading; | ||||
| @@ -1,4 +1,4 @@ | |||||
| import { fetchPickOrders } from "@/app/api/pickOrder"; | |||||
| import { fetchPrinterCombo } from "@/app/api/settings/printer"; | import { fetchPrinterCombo } from "@/app/api/settings/printer"; | ||||
| import GeneralLoading from "../General/GeneralLoading"; | import GeneralLoading from "../General/GeneralLoading"; | ||||
| import JodetailSearch from "./JodetailSearch"; | import JodetailSearch from "./JodetailSearch"; | ||||
| @@ -8,7 +8,8 @@ interface SubComponents { | |||||
| } | } | ||||
| const JodetailSearchWrapper: React.FC & SubComponents = async () => { | const JodetailSearchWrapper: React.FC & SubComponents = async () => { | ||||
| const [pickOrders, printerCombo] = await Promise.all([ | |||||
| const [printerCombo] = await Promise.all([ | |||||
| /* | |||||
| fetchPickOrders({ | fetchPickOrders({ | ||||
| code: undefined, | code: undefined, | ||||
| targetDateFrom: undefined, | targetDateFrom: undefined, | ||||
| @@ -19,11 +20,12 @@ const JodetailSearchWrapper: React.FC & SubComponents = async () => { | |||||
| pageNum: 0, | pageNum: 0, | ||||
| pageSize: 50, | pageSize: 50, | ||||
| }), | }), | ||||
| */ | |||||
| fetchPrinterCombo(), | fetchPrinterCombo(), | ||||
| ]); | ]); | ||||
| console.log("%c printerCombo:", "color:green", printerCombo); | console.log("%c printerCombo:", "color:green", printerCombo); | ||||
| return <JodetailSearch pickOrders={pickOrders} printerCombo={printerCombo} />; | |||||
| return <JodetailSearch printerCombo={printerCombo} />; | |||||
| }; | }; | ||||
| JodetailSearchWrapper.Loading = GeneralLoading; | JodetailSearchWrapper.Loading = GeneralLoading; | ||||
| @@ -39,7 +39,7 @@ import { PrinterCombo } from "@/app/api/settings/printer"; | |||||
| import JoPickOrderDetail from "./JoPickOrderDetail"; | import JoPickOrderDetail from "./JoPickOrderDetail"; | ||||
| import MaterialPickStatusTable from "./MaterialPickStatusTable"; | import MaterialPickStatusTable from "./MaterialPickStatusTable"; | ||||
| interface Props { | interface Props { | ||||
| pickOrders: PickOrderResult[]; | |||||
| //pickOrders: PickOrderResult[]; | |||||
| printerCombo: PrinterCombo[]; | printerCombo: PrinterCombo[]; | ||||
| } | } | ||||
| @@ -49,7 +49,7 @@ type SearchQuery = Partial< | |||||
| type SearchParamNames = keyof SearchQuery; | type SearchParamNames = keyof SearchQuery; | ||||
| const JodetailSearch: React.FC<Props> = ({ pickOrders, printerCombo }) => { | |||||
| const JodetailSearch: React.FC<Props> = ({ printerCombo }) => { | |||||
| const { t } = useTranslation("jo"); | const { t } = useTranslation("jo"); | ||||
| const { data: session } = useSession() as { data: SessionWithTokens | null }; | const { data: session } = useSession() as { data: SessionWithTokens | null }; | ||||
| const currentUserId = session?.id ? parseInt(session.id) : undefined; | const currentUserId = session?.id ? parseInt(session.id) : undefined; | ||||
| @@ -57,7 +57,7 @@ const JodetailSearch: React.FC<Props> = ({ pickOrders, printerCombo }) => { | |||||
| const [isOpenCreateModal, setIsOpenCreateModal] = useState(false) | const [isOpenCreateModal, setIsOpenCreateModal] = useState(false) | ||||
| const [items, setItems] = useState<ItemCombo[]>([]) | const [items, setItems] = useState<ItemCombo[]>([]) | ||||
| const [printButtonsEnabled, setPrintButtonsEnabled] = useState(false); | const [printButtonsEnabled, setPrintButtonsEnabled] = useState(false); | ||||
| const [filteredPickOrders, setFilteredPickOrders] = useState(pickOrders); | |||||
| //const [filteredPickOrders, setFilteredPickOrders] = useState(pickOrders); | |||||
| const [filterArgs, setFilterArgs] = useState<Record<string, any>>({}); | const [filterArgs, setFilterArgs] = useState<Record<string, any>>({}); | ||||
| const [searchQuery, setSearchQuery] = useState<Record<string, any>>({}); | const [searchQuery, setSearchQuery] = useState<Record<string, any>>({}); | ||||
| const [tabIndex, setTabIndex] = useState(0); | const [tabIndex, setTabIndex] = useState(0); | ||||
| @@ -275,7 +275,7 @@ const JodetailSearch: React.FC<Props> = ({ pickOrders, printerCombo }) => { | |||||
| window.removeEventListener('pickOrderCompletionStatus', handleCompletionStatusChange as EventListener); | window.removeEventListener('pickOrderCompletionStatus', handleCompletionStatusChange as EventListener); | ||||
| }; | }; | ||||
| }, []); | }, []); | ||||
| /* | |||||
| const searchCriteria: Criterion<SearchParamNames>[] = useMemo( | const searchCriteria: Criterion<SearchParamNames>[] = useMemo( | ||||
| () => { | () => { | ||||
| const baseCriteria: Criterion<SearchParamNames>[] = [ | const baseCriteria: Criterion<SearchParamNames>[] = [ | ||||
| @@ -380,9 +380,11 @@ const JodetailSearch: React.FC<Props> = ({ pickOrders, printerCombo }) => { | |||||
| }, | }, | ||||
| [pickOrders, t, tabIndex, items], | [pickOrders, t, tabIndex, items], | ||||
| ); | ); | ||||
| */ | |||||
| const handleSwitchToRecordTab = useCallback(() => { | const handleSwitchToRecordTab = useCallback(() => { | ||||
| setTabIndex(1); // 切换到 CompleteJobOrderRecord 标签页(tabIndex 1) | setTabIndex(1); // 切换到 CompleteJobOrderRecord 标签页(tabIndex 1) | ||||
| }, []); | }, []); | ||||
| /* | |||||
| const fetchNewPagePickOrder = useCallback( | const fetchNewPagePickOrder = useCallback( | ||||
| async ( | async ( | ||||
| pagingController: Record<string, number>, | pagingController: Record<string, number>, | ||||
| @@ -405,7 +407,7 @@ const JodetailSearch: React.FC<Props> = ({ pickOrders, printerCombo }) => { | |||||
| const onReset = useCallback(() => { | const onReset = useCallback(() => { | ||||
| setFilteredPickOrders(pickOrders); | setFilteredPickOrders(pickOrders); | ||||
| }, [pickOrders]); | }, [pickOrders]); | ||||
| */ | |||||
| useEffect(() => { | useEffect(() => { | ||||
| if (!isOpenCreateModal) { | if (!isOpenCreateModal) { | ||||
| setTabIndex(1) | setTabIndex(1) | ||||