From 399645a80a4a1f5de8dc1c6bf9db4cdeeec63cd6 Mon Sep 17 00:00:00 2001 From: bicochan Date: Mon, 13 Jul 2026 14:43:55 +0900 Subject: [PATCH] =?UTF-8?q?[as]=20feat:=20=EC=84=A4=EA=B3=84=EC=9E=90=20?= =?UTF-8?q?=EC=A0=84=ED=99=94=EB=B2=88=ED=98=B8=20=EA=B2=80=EC=A6=9D=20?= =?UTF-8?q?=EC=BD=94=EB=93=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/pages/fnrs-cnsltn/lib/fnrs-cnsltn-regist-schema.ts | 5 ++++- apps/as/src/pages/instl-sncn/lib/instl-sncn-regist-schema.ts | 5 ++++- .../src/widgets/pbadms-sprt/ui/contact-info-form-section.tsx | 2 ++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/apps/as/src/pages/fnrs-cnsltn/lib/fnrs-cnsltn-regist-schema.ts b/apps/as/src/pages/fnrs-cnsltn/lib/fnrs-cnsltn-regist-schema.ts index 332ef9e14..276fe6e9c 100644 --- a/apps/as/src/pages/fnrs-cnsltn/lib/fnrs-cnsltn-regist-schema.ts +++ b/apps/as/src/pages/fnrs-cnsltn/lib/fnrs-cnsltn-regist-schema.ts @@ -10,7 +10,10 @@ export const fnrsCnsltnRegistSchema = z.object({ cfmtnBgtBizNo: z.string().optional(), bgtAplyYr: z.string().optional(), dsgnrNm: z.string().min(1, "설계자 이름은 필수입니다"), - dsgnrTelno: z.string().min(1, "설계자 전화번호는 필수입니다"), + dsgnrTelno: z + .string() + .min(1, "설계자 전화번호는 필수입니다") + .regex(/^[0-9-]+$/, "숫자와 하이픈(-)만 입력 가능합니다"), dsgnrOgdpNm: z.string().min(1, "설계자 소속은 필수입니다"), dsgnrEmlAddr: z .string() diff --git a/apps/as/src/pages/instl-sncn/lib/instl-sncn-regist-schema.ts b/apps/as/src/pages/instl-sncn/lib/instl-sncn-regist-schema.ts index 17badc640..ae55e92b9 100644 --- a/apps/as/src/pages/instl-sncn/lib/instl-sncn-regist-schema.ts +++ b/apps/as/src/pages/instl-sncn/lib/instl-sncn-regist-schema.ts @@ -9,7 +9,10 @@ export const instlSncnRegistSchema = z.object({ taskSeComCd: z.array(z.string()).min(1, "구분은 필수입니다"), sncnSeComCd: z.string().min(1, "사업구분은 필수입니다"), dsgnrNm: z.string().min(1, "설계자 이름은 필수입니다"), - dsgnrTelno: z.string().min(1, "설계자 전화번호는 필수입니다"), + dsgnrTelno: z + .string() + .min(1, "설계자 전화번호는 필수입니다") + .regex(/^[0-9-]+$/, "숫자와 하이픈(-)만 입력 가능합니다"), dsgnrOgdpNm: z.string().min(1, "설계자 소속은 필수입니다"), dsgnrEmlAddr: z .string() diff --git a/apps/as/src/widgets/pbadms-sprt/ui/contact-info-form-section.tsx b/apps/as/src/widgets/pbadms-sprt/ui/contact-info-form-section.tsx index 7787f7a40..1d6e31a16 100644 --- a/apps/as/src/widgets/pbadms-sprt/ui/contact-info-form-section.tsx +++ b/apps/as/src/widgets/pbadms-sprt/ui/contact-info-form-section.tsx @@ -70,6 +70,8 @@ function ContactInfoFormSection({ fieldPrefix }: ContactInfoFormSectionProps) { id={field.name} placeholder="설계자 전화번호" aria-invalid={fieldState.invalid} + maxLength={13} + onChange={(e) => field.onChange(e.target.value.replace(/[^0-9-]/g, ""))} />