import { QcItemWithChecks } from "@/app/api/qc"; import useUploadContext from "../UploadProvider/useUploadContext"; import { PickOrderQcInput, updateStockOutLine, UpdateStockOutLine, } from "@/app/api/pickOrder/actions"; import { FormProvider, SubmitHandler, useForm } from "react-hook-form"; import QcContent from "./QcContent"; import { Box, Button, Modal, ModalProps, Stack } from "@mui/material"; import { useCallback } from "react"; import { useTranslation } from "react-i18next"; import { Check } from "@mui/icons-material"; import { StockOutLine } from "@/app/api/pickOrder"; import dayjs from "dayjs"; import { INPUT_DATE_FORMAT, OUTPUT_TIME_FORMAT } from "@/app/utils/formatUtil"; const style = { position: "absolute", top: "50%", left: "50%", transform: "translate(-50%, -50%)", // overflow: "scroll", bgcolor: "background.paper", pt: 5, px: 5, pb: 10, display: "block", width: { xs: "60%", sm: "60%", md: "60%" }, }; interface Props extends Omit { qc: QcItemWithChecks[]; qcDefaultValues: StockOutLine & PickOrderQcInput; disabled: boolean; } const QcForm: React.FC = ({ qc, qcDefaultValues, disabled, open, onClose, }) => { const { setIsUploading } = useUploadContext(); const { t } = useTranslation("pickOrder"); const formProps = useForm({ defaultValues: { qty: qcDefaultValues.qty, status: qcDefaultValues.status, }, }); const errors = formProps.formState.errors; const closeHandler = useCallback>( (...args) => { onClose?.(...args); // reset(); }, [onClose], ); const onSubmit = useCallback>( async (data, event) => { console.log(data); console.log(qcDefaultValues); // checking later // post const postData: UpdateStockOutLine = { id: qcDefaultValues.id, itemId: qcDefaultValues.itemId, pickOrderLineId: qcDefaultValues.pickOrderLineId, inventoryLotLineId: qcDefaultValues.inventoryLotLineId, qty: data.qty, status: data.status, // pickTime: dayjs().format(`${INPUT_DATE_FORMAT} ${OUTPUT_TIME_FORMAT}`), }; console.log(postData); // return const res = await updateStockOutLine(postData); if (res) { console.log(res); closeHandler({}, "backdropClick"); } else { console.log(res); console.log("bug la"); } }, [closeHandler, qcDefaultValues], ); return ( <> {!disabled ? ( ) : undefined} ); }; export default QcForm;