diff --git a/src/components/PutAwayScan/PutAwayModal.tsx b/src/components/PutAwayScan/PutAwayModal.tsx index 11f89ad..650ef3b 100644 --- a/src/components/PutAwayScan/PutAwayModal.tsx +++ b/src/components/PutAwayScan/PutAwayModal.tsx @@ -10,6 +10,7 @@ import { TextField, Typography, Paper, + Divider, } from "@mui/material"; import { useCallback, useEffect, useLayoutEffect, useMemo, useState } from "react"; import ReactQrCodeScanner, { @@ -25,7 +26,7 @@ import { import { StockInLine } from "@/app/api/po"; import { WarehouseResult } from "@/app/api/warehouse"; // import { QrCodeInfo } from "@/app/api/qrcde"; -import { Check, QrCode } from "@mui/icons-material"; +import { Check, QrCode, ErrorOutline, CheckCircle } from "@mui/icons-material"; import { useTranslation } from "react-i18next"; import { useSearchParams } from "next/navigation"; import { useQrCodeScannerContext } from "../QrCodeScannerProvider/QrCodeScannerProvider"; @@ -110,6 +111,11 @@ const PutAwayModal: React.FC = ({ open, onClose, warehouse, stockInLineId }); const errors = formProps.formState.errors; + useEffect(() => { + if (itemDetail) { + startScanner(); + } + }, [itemDetail]) const closeHandler = useCallback>( (...args) => { @@ -130,6 +136,12 @@ const PutAwayModal: React.FC = ({ open, onClose, warehouse, stockInLineId [], ); + const startScanner = () => { + // setIsOpenScanner(true); + scanner.startScan(); + console.log("%c Scanning started ", "color:cyan"); + }; + const openScanner = () => { setIsOpenScanner(true); scanner.startScan(); @@ -138,7 +150,7 @@ const PutAwayModal: React.FC = ({ open, onClose, warehouse, stockInLineId useEffect(() => { if (warehouseId > 0) { // Scanned Warehouse - if (isOpenScanner) { + if (scanner.isScanning) { setIsOpenScanner(false); setVerified(true); scanner.stopScan(); @@ -288,38 +300,109 @@ const PutAwayModal: React.FC = ({ open, onClose, warehouse, stockInLineId 處理上架 - - - - - { - const value = e.target.value; - validateQty(Number(value)); - setPutQty(Number(value)); - }} - // onBlur={(e) => { - // const value = e.target.value; - // setPutQty(Number(value)); - // validateQty(Number(value)); - // }} - // disabled={true} - // {...register("acceptedQty", { - // required: "acceptedQty required!", - // })} - error={qtyError !== ""} - helperText={qtyError} - /> + + + + + + {verified? ( + <> + + + 掃瞄完成 + + + ) : ( + <> + + + 請掃瞄倉庫二維碼 + + + ) + } + + + + + {`${warehouseId > 0 ? warehouse.find((w) => w.id == warehouseId)?.name + : warehouse.find((w) => w.id == 3)?.name}`} + + + + - + + {/* - - - 0 ? warehouse.find((w) => w.id == warehouseId)?.name - : warehouse.find((w) => w.id == 3)?.name - // : warehouse.find((w) => w.id == itemDetail.defaultWarehouseId)?.name //TODO fix empty - } - // {...register("acceptedQty", { - // required: "acceptedQty required!", - // })} - error={!verified} - helperText={verified ? "掃碼完成" : "等待掃碼"} - /> - - {/* */} - - + */} -