공통 컴포넌트: 수요처 등록시 rgtr 수정시 mdfr 입력되도록 수정

This commit is contained in:
leedj312
2025-10-29 11:21:42 +09:00
parent 4fbb3a50b8
commit 02de87264f
2 changed files with 21 additions and 7 deletions
@@ -18,6 +18,7 @@ export type DemandCompType = {
daddr: string | "";
telno: string | "";
rgtr: string | "";
mdfr?:string ;
useUsgCd: string | "";
ctpvCd: string | "";
sggCd: string | "";
@@ -54,6 +55,7 @@ interface FormSchema {
telno: string;
bznmTotNo?: string;
rgtr?: string | "";
mdfr?: string | null;
dmdAplyPswd?: string;
dmdAplyPswdConfirm?: string;
}
@@ -261,8 +263,6 @@ export function SdmRegForm({
);
useEffect(() => {
form.setValue("rgtr", "2d4b151d-1828-41e0-91d9-4cd28ea1cc7e");
if (updateList?.dmdInfoId) {
form.reset(updateList);
if (updateList?.dmdInfoId.slice(10, 14) !== "0000") {
@@ -375,7 +375,7 @@ export function SdmRegForm({
type="text"
className="!text-xl text-gray-600"
onChange={(e) => bznNoChange(e, "dmdInfoId", field)}
value={formatBusinessNumber(field.value || "")}
value={formatBusinessNumber(field.value ?? "")}
readOnly={!!updateList?.dmdInfoId}
/>
),
@@ -396,7 +396,7 @@ export function SdmRegForm({
disabled={isBznmTotNoDisabled}
onChange={(e) => bznNoChange(e, "bznmTotNo", field)}
// {...field}
value={field.value}
value={field.value ?? ""}
readOnly={!!updateList?.dmdInfoId}
/>
</FormUi>
@@ -421,6 +421,7 @@ export function SdmRegForm({
className="!text-xl text-gray-600"
readOnly={readOnly}
{...field}
value={field.value ?? ""}
/>
),
},
@@ -456,6 +457,7 @@ export function SdmRegForm({
className="!text-xl text-gray-600"
readOnly={readOnly}
{...field}
value={field.value ?? ""}
/>
),
},
@@ -469,6 +471,7 @@ export function SdmRegForm({
className="!text-xl text-gray-600"
readOnly={readOnly}
{...field}
value={field.value ?? ""}
/>
),
},
@@ -7,6 +7,7 @@ import { FormProvider, useForm, type SubmitHandler } from "react-hook-form";
import { toast, Toaster } from "sonner";
import * as z from "zod";
import type { SelectDataType } from "../search_input_select";
import { getCookie } from "@common/components/lib";
type thisProps = {
@@ -45,6 +46,7 @@ const createFormSchema = (isBznmTotNoDisabled: boolean, isDuplicate: boolean ,up
.max(11, "전화번호는 11자 이내로 입력해주세요")
.regex(/^[0-9]+$/, "전화번호는 숫자만 입력 가능합니다"),
rgtr: z.string().optional(),
mdfr: z.string().nullish(),
dmdAplyPswd : updateList?.dmdInfoId // 업데이트일경우
? z.string().optional() // 패스워드는 선택 사항이며 길이 제한 없음
: z.string().optional()
@@ -75,6 +77,7 @@ const defaultValues: FormSchema = {
daddr: '',
telno: '',
rgtr: '',
mdfr: '',
dmdAplyPswd: '',
dmdAplyPswdConfirm: '',
};
@@ -120,20 +123,28 @@ export default function SdmInsertForm({selectSidoData, selectSigunData, dataList
try {
// form 에러 체크
const formErrors = form.formState.errors;
if (Object.keys(formErrors).length > 0) {
const myUUID = getCookie('token-id');
if (Object.keys(formErrors).length > 0 ) {
const errorMessage = Object.values(formErrors)[0]?.message || '입력값을 확인해주세요.';
toast.error(errorMessage);
return;
}
if(!myUUID){
toast.error('사용자 정보가 올바르지 않습니다. 다시 로그인 해주세요.');
return;
}
const dmdInfoId = data.dmdInfoId + (data.bznmTotNo || '0000');
const formData = {
...data,
dmdInfoId,
bzmnNo: data.dmdInfoId,
rgtr: myUUID ,
};
console.log(' formData ', formData)
/* await insertSdmData(formData); */
rtnInputData(formData as unknown as DemandCompType);
@@ -175,7 +186,7 @@ export default function SdmInsertForm({selectSidoData, selectSigunData, dataList
type="submit"
className="w-32 bg-blue-600 hover:bg-blue-700 text-white font-semibold py-2 px-4 rounded-md transition-colors duration-200"
>
수요처등록
{updateList ?'수정' :'등록'}
</Button>
}