|
|
@@ -33,6 +33,7 @@ import DoneIcon from "@mui/icons-material/Done"; |
|
|
|
import { GridRowSelectionModel } from "@mui/x-data-grid"; |
|
|
|
import { useQcCodeScanner } from "../QrCodeScannerProvider/QrCodeScannerProvider"; |
|
|
|
import { |
|
|
|
completeConsoPickOrder, |
|
|
|
CreateStockOutLine, |
|
|
|
createStockOutLine, |
|
|
|
fetchPickOrderLineClient, |
|
|
@@ -199,9 +200,7 @@ const PickOrderDetail: React.FC<Props> = ({ consoCode, qc }) => { |
|
|
|
[] |
|
|
|
); |
|
|
|
|
|
|
|
const [isCompletedOrder, setIsCompletedOrder] = useState<boolean>(() => { |
|
|
|
return pickOrderLine.every((line) => line.status == "completed") |
|
|
|
}) |
|
|
|
const [isCompletedOrder, setIsCompletedOrder] = useState(false); |
|
|
|
|
|
|
|
const fetchPickOrderLine = useCallback( |
|
|
|
async (params: Record<string, any>) => { |
|
|
@@ -215,12 +214,12 @@ const PickOrderDetail: React.FC<Props> = ({ consoCode, qc }) => { |
|
|
|
}); |
|
|
|
if (res) { |
|
|
|
console.log(res); |
|
|
|
console.log(res.records.every((line) => line.status == "completed")) |
|
|
|
setIsCompletedOrder(() => |
|
|
|
console.log(res.records.every((line) => line.status == "completed")); |
|
|
|
setIsCompletedOrder(() => |
|
|
|
res.records.every((line) => line.status == "completed") |
|
|
|
) |
|
|
|
); |
|
|
|
setPickOrderLine(res.records); |
|
|
|
|
|
|
|
|
|
|
|
setPolTotalCount(res.total); |
|
|
|
} else { |
|
|
|
console.log("error"); |
|
|
@@ -595,7 +594,14 @@ const PickOrderDetail: React.FC<Props> = ({ consoCode, qc }) => { |
|
|
|
fetchPickOrderLine(polCriteriaArgs); |
|
|
|
} |
|
|
|
if (selectedRow.length > 0) fetchStockOutLine(solCriteriaArgs, selectedRow); |
|
|
|
}, [qcOpen, approvalOpen, solCriteriaArgs, selectedRow, triggerRefetch, polCriteriaArgs]); |
|
|
|
}, [ |
|
|
|
qcOpen, |
|
|
|
approvalOpen, |
|
|
|
solCriteriaArgs, |
|
|
|
selectedRow, |
|
|
|
triggerRefetch, |
|
|
|
polCriteriaArgs, |
|
|
|
]); |
|
|
|
|
|
|
|
const getLotDetail = useCallback( |
|
|
|
async (stockInLineId: number): Promise<LotLineInfo> => { |
|
|
@@ -633,7 +639,8 @@ const PickOrderDetail: React.FC<Props> = ({ consoCode, qc }) => { |
|
|
|
|
|
|
|
const homemade_Qrcode = { |
|
|
|
// stockInLineId: 156, // eggs |
|
|
|
stockInLineId: 162, // chicken wings |
|
|
|
// stockInLineId: 162, // chicken wings |
|
|
|
stockInLineId: 168, // sesame |
|
|
|
}; |
|
|
|
|
|
|
|
useEffect(() => { |
|
|
@@ -728,6 +735,16 @@ const PickOrderDetail: React.FC<Props> = ({ consoCode, qc }) => { |
|
|
|
[apiRef] |
|
|
|
); |
|
|
|
|
|
|
|
const handleCompleteOrder = useCallback(async () => { |
|
|
|
const res = await completeConsoPickOrder(consoCode) |
|
|
|
if (res) { |
|
|
|
// completed |
|
|
|
triggerRefetch() |
|
|
|
} else { |
|
|
|
// not completed |
|
|
|
triggerRefetch() |
|
|
|
} |
|
|
|
}, [consoCode, triggerRefetch]) |
|
|
|
return ( |
|
|
|
<> |
|
|
|
<Stack spacing={2}> |
|
|
@@ -743,6 +760,7 @@ const PickOrderDetail: React.FC<Props> = ({ consoCode, qc }) => { |
|
|
|
disabled={!isCompletedOrder} |
|
|
|
color={buttonData.buttonColor as ButtonProps["color"]} |
|
|
|
startIcon={buttonData.buttonIcon} |
|
|
|
onClick={handleCompleteOrder} |
|
|
|
> |
|
|
|
{buttonData.buttonText} |
|
|
|
</Button> |
|
|
@@ -815,6 +833,7 @@ const PickOrderDetail: React.FC<Props> = ({ consoCode, qc }) => { |
|
|
|
)} |
|
|
|
</Grid> |
|
|
|
<Grid item xs={12} sx={{ height: 400 }}> |
|
|
|
{isChangeLotSolId} |
|
|
|
<StyledDataGrid |
|
|
|
apiRef={apiRef} |
|
|
|
rows={stockOutLine} |
|
|
|