import { zodResolver } from "@hookform/resolvers/zod"; import React, { useState } from "react"; import { FormProvider, useForm } from "react-hook-form"; import { defaultPayment, paymentSchema } from "./collectionSchema"; import Label from "../common/Label"; import DatePicker from "../common/DatePicker"; import { formatDate } from "date-fns"; import { useCollectionContext } from "../../pages/collections/CollectionPage"; import { useAddPayment, useCollection } from "../../hooks/useCollections"; import { formatFigure, localToUtc } from "../../utils/appUtils"; import { formatUTCToLocalTime } from "../../utils/dateUtils"; import Avatar from "../common/Avatar"; import { PaymentHistorySkeleton } from "./CollectionSkeleton"; import { usePaymentAjustmentHead } from "../../hooks/masterHook/useMaster"; import { AppFormController } from "../../hooks/appHooks/useAppForm"; import SelectField from "../common/Forms/SelectField"; const AddPayment = ({ onClose }) => { const { addPayment } = useCollectionContext(); const { data, isLoading, isError, error } = useCollection( addPayment?.invoiceId ); const { data: paymentTypes, isLoading: isPaymentTypeLoading, isError: isPaymentTypeError, error: paymentError, } = usePaymentAjustmentHead(true); const methods = useForm({ resolver: zodResolver(paymentSchema), defaultValues: defaultPayment, }); const { control, register, handleSubmit, reset, formState: { errors }, } = methods; const { mutate: AddPayment, isPending } = useAddPayment(() => { handleClose(); }); const onSubmit = (formData) => { const payload = { ...formData, paymentReceivedDate: localToUtc(formData.paymentReceivedDate), invoiceId: addPayment.invoiceId, }; AddPayment(payload); }; const handleClose = (formData) => { reset(defaultPayment); }; return (
Transaction ID: {" "} {payment.transactionId}
{payment?.comment}