From c146f1175c477cb7c3c76863a777da556f80c955 Mon Sep 17 00:00:00 2001 From: AmirReza Jamali Date: Tue, 23 Sep 2025 15:25:30 +0330 Subject: [PATCH] fixed: edit customer company not appearing --- src/components/forms/customers/CreateCustomer.tsx | 3 ++- .../forms/customers/useCreateCustomerPresenter.ts | 13 ++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/components/forms/customers/CreateCustomer.tsx b/src/components/forms/customers/CreateCustomer.tsx index f7ccbce..a519cba 100644 --- a/src/components/forms/customers/CreateCustomer.tsx +++ b/src/components/forms/customers/CreateCustomer.tsx @@ -17,7 +17,7 @@ interface IProps { } const CreateCustomer = ({ defaultValues, editMode, id }: IProps) => { - const { errors, handleSubmit, register, onSubmit, companies, router } = + const { errors, handleSubmit, register, watch, onSubmit, companies, router } = useCreateCustomerPresenter({ defaultValues, editMode, id }); return ( @@ -54,6 +54,7 @@ const CreateCustomer = ({ defaultValues, editMode, id }: IProps) => {
({ diff --git a/src/components/forms/customers/useCreateCustomerPresenter.ts b/src/components/forms/customers/useCreateCustomerPresenter.ts index 8e475ca..5060f28 100644 --- a/src/components/forms/customers/useCreateCustomerPresenter.ts +++ b/src/components/forms/customers/useCreateCustomerPresenter.ts @@ -7,6 +7,7 @@ import { } from "@/hooks/queries"; import { CreateCustomerCredentials } from "@/lib/api"; import { useRouter } from "next/navigation"; +import { useEffect } from "react"; import { SubmitHandler, useForm } from "react-hook-form"; interface IProps { @@ -24,6 +25,8 @@ const useCreateCustomerPresenter = ({ register, handleSubmit, formState: { errors }, + setValue, + watch, } = useForm({ mode: "onChange", defaultValues, @@ -34,6 +37,14 @@ const useCreateCustomerPresenter = ({ id as string, ); const { data: companies } = useCompanyFullList(); + useEffect(() => { + if (defaultValues) { + const companies = defaultValues?.companies?.map( + (company: any) => company.id, + ); + setValue("companies", companies); + } + }, [defaultValues]); const onSubmit: SubmitHandler = (data) => { if (editMode) { updateCustomer({ @@ -41,7 +52,6 @@ const useCreateCustomerPresenter = ({ credentials: data, }); } else { - createCustomer({ ...data, employee_count: data.employee_count ? +data.employee_count : undefined, @@ -52,6 +62,7 @@ const useCreateCustomerPresenter = ({ }; return { handleSubmit, + watch, register, errors, onSubmit,