From c204ba367064453f9af00a121fb097c5c7987605 Mon Sep 17 00:00:00 2001 From: yschoi Date: Mon, 14 Jul 2025 21:29:31 +0900 Subject: [PATCH] =?UTF-8?q?pk,fk=20=EB=B9=84=EC=A7=80=EB=8B=88=EC=8A=A4=20?= =?UTF-8?q?=EC=BB=B4=ED=8F=AC=EB=84=8C=ED=8A=B8=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business_components/src/ui/map/Gis.js | 4 +- .../src/ui/sdmInsertForm/form.tsx | 49 +++++++++---------- .../src/ui/sdmInsertForm/index.tsx | 14 +++--- .../src/ui/sdmInsertForm/sdmNameBox.tsx | 8 +-- 4 files changed, 37 insertions(+), 38 deletions(-) diff --git a/packages/common/business_components/src/ui/map/Gis.js b/packages/common/business_components/src/ui/map/Gis.js index de36a4144..a723b2340 100644 --- a/packages/common/business_components/src/ui/map/Gis.js +++ b/packages/common/business_components/src/ui/map/Gis.js @@ -91,11 +91,11 @@ function Gis({ if (layerName === '하수재이용시설') { featureId = data.searchPk; } else if (layerName === '빗물이용시설'|| layerName == '중수도시설') { - featureId = data.bdstInfoPk; + featureId = data.bdstInfoSn; } else if (layerName === '하수처리시설') { featureId = data.bscFctCd; } else if (layerName === '온배수시설' ) { - featureId = data.bdstRuseFcltPk; + featureId = data.bdstRuseFcltSn; } else { console.warn('해당 레이어에 대한 featureId 매핑 없음', layerNm); featureId = data.fid || data.id || data.ftrIdn; diff --git a/packages/common/business_components/src/ui/sdmInsertForm/form.tsx b/packages/common/business_components/src/ui/sdmInsertForm/form.tsx index 91c2c9db0..786b07925 100644 --- a/packages/common/business_components/src/ui/sdmInsertForm/form.tsx +++ b/packages/common/business_components/src/ui/sdmInsertForm/form.tsx @@ -10,8 +10,7 @@ import { SdmSearchForm } from "./sdmNameBox"; // 수요처 정보 export type DemandCompType = { index : number | ''; - dmdInfoPk : string | ''; - dmdInfoFk : string | ''; + dmdInfoId : string | ''; bzmnNo : string | ''; dmdCoNm : string | ''; daddr : string | ''; @@ -49,7 +48,7 @@ interface FormSchema { ctpvCd: string; sggCd: string; dmdCoNm: string; - dmdInfoPk: string; + dmdInfoId: string; daddr: string; telno: string; bznmTotNo?: string; @@ -127,19 +126,19 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun type: string, field: ControllerRenderProps | undefined ) => { - if(!updateList?.dmdInfoPk) + if(!updateList?.dmdInfoId) switch (type) { case "ctpvCd": initializeSigunData(val); setSidoValue(val); field?.onChange(val); - form.setValue('dmdInfoPk', ''); + form.setValue('dmdInfoId', ''); form.setValue('bznmTotNo', ''); break; case "sggCd": setSigunValue(val); field?.onChange(val); - form.setValue('dmdInfoPk', ''); + form.setValue('dmdInfoId', ''); form.setValue('bznmTotNo', ''); break; } @@ -158,11 +157,11 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun const rtnCompData = item; form.setValue('dmdCoNm', rtnCompData?.dmdCoNm || ''); - form.setValue('dmdInfoPk', rtnCompData?.dmdInfoPk.substring(0,10) || ''); - form.setValue('bznmTotNo', rtnCompData?.dmdInfoPk.substring(10,14)==='0000' ? '' : rtnCompData?.dmdInfoPk.substring(10,14)); + form.setValue('dmdInfoId', rtnCompData?.dmdInfoId.substring(0,10) || ''); + form.setValue('bznmTotNo', rtnCompData?.dmdInfoId.substring(10,14)==='0000' ? '' : rtnCompData?.dmdInfoId.substring(10,14)); // 수요처 불러온 후 사업자번호를 바꿀경우를 대비함 - setOrgBznmNo(rtnCompData?.dmdInfoPk); + setOrgBznmNo(rtnCompData?.dmdInfoId); const sidoCd = rtnCompData?.ctpvCd.trim() || ''; setSidoValue(sidoCd); form.setValue('ctpvCd', sidoCd); @@ -174,7 +173,7 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun form.setValue('sggCd', sigunCd); }, 100); - if(rtnCompData?.dmdInfoPk.substring(10,14) === '0000') { + if(rtnCompData?.dmdInfoId.substring(10,14) === '0000') { handleCheckboxChange(true); } else { handleCheckboxChange(false); @@ -194,7 +193,7 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun const bznNoChange = useCallback((e: React.ChangeEvent, noType: string, field?: ControllerRenderProps) => { const value = e.target.value; - if(noType === 'dmdInfoPk') { + if(noType === 'dmdInfoId') { // 숫자만 추출하여 저장 (포맷팅 제거) const digitsOnly = value.replace(/\D/g, ""); @@ -216,15 +215,15 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun useEffect(() => { - if(updateList?.dmdInfoPk){ + if(updateList?.dmdInfoId){ form.reset(updateList) - if(updateList?.dmdInfoPk.slice(10,14) !== '0000') { + if(updateList?.dmdInfoId.slice(10,14) !== '0000') { handleCheckboxChange( false); - form.setValue('bznmTotNo', updateList?.dmdInfoPk.slice(10,14)); + form.setValue('bznmTotNo', updateList?.dmdInfoId.slice(10,14)); } else { handleCheckboxChange( true); } - form.setValue('dmdInfoPk', updateList?.dmdInfoPk.slice(0,10)); + form.setValue('dmdInfoId', updateList?.dmdInfoId.slice(0,10)); setUpdateNm(updateList?.dmdCoNm) // setSigunValue(updateList?.sggCd) }else{ @@ -245,14 +244,14 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun name: "ctpvCd", label: "시도", component: (field) => ( - updateList?.dmdInfoPk ? ( + updateList?.dmdInfoId ? ( {field.onChange(e.target.value)} } value={ selectSidoData.find(item => item.val === field.value?.trim() )?.text??''} - readOnly={!!updateList?.dmdInfoPk} + readOnly={!!updateList?.dmdInfoId} /> ) : ( ( - updateList?.dmdInfoPk ? ( + updateList?.dmdInfoId ? ( {field.onChange(e.target.value)} } value={selectSigunData.find(item => item.val === field.value?.trim() )?.text??''} - readOnly={!!updateList?.dmdInfoPk} + readOnly={!!updateList?.dmdInfoId} /> ) : ( ( bznNoChange(e, 'dmdInfoPk', field)} + onChange={(e) => bznNoChange(e, 'dmdInfoId', field)} value={formatBusinessNumber(field.value || '')} - readOnly={!!updateList?.dmdInfoPk} + readOnly={!!updateList?.dmdInfoId} /> ) }, @@ -338,7 +337,7 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun onChange={(e) => bznNoChange(e, 'bznmTotNo', field)} // {...field} value={ field.value} - readOnly={!!updateList?.dmdInfoPk} + readOnly={!!updateList?.dmdInfoId} /> ) @@ -406,12 +405,12 @@ export function SdmRegForm({ form, onCheckboxChange, selectSidoData, selectSigun return ( <> {formFields - .filter(({ name }) => !(updateList?.dmdInfoPk && (name === "dmdAplyPswd" || name === "dmdAplyPswdConfirm"))) + .filter(({ name }) => !(updateList?.dmdInfoId && (name === "dmdAplyPswd" || name === "dmdAplyPswdConfirm"))) .map(({ name, label, component }) => { const error = form.formState.errors[name]; const inputId = `${name}-input`; const errorId = `${name}-error`; - const isRequired = ["ctpvCd", "sggCd", "dmdCoNm", "dmdInfoPk", "daddr", "telno", "dmdAplyPswd", "dmdAplyPswdConfirm"].includes(name); + const isRequired = ["ctpvCd", "sggCd", "dmdCoNm", "dmdInfoId", "daddr", "telno", "dmdAplyPswd", "dmdAplyPswdConfirm"].includes(name); return ( isBznmTotNoDisabled ? !isDuplicate : true, "이미 등록된 사업자등록번호입니다"), @@ -43,11 +43,11 @@ const createFormSchema = (isBznmTotNoDisabled: boolean, isDuplicate: boolean ,up .max(11, "전화번호는 11자 이내로 입력해주세요") .regex(/^[0-9]+$/, "전화번호는 숫자만 입력 가능합니다"), rgtr: z.string().optional(), - dmdAplyPswd : updateList?.dmdInfoPk // 업데이트일경우 + dmdAplyPswd : updateList?.dmdInfoId // 업데이트일경우 ? z.string().optional() // 패스워드는 선택 사항이며 길이 제한 없음 : z.string().optional() .refine((val) => !val || (val.length >= 8 && val.length <= 16), "패스워드는 8자 이상 16자 이내로 입력해주세요"), - dmdAplyPswdConfirm: updateList?.dmdInfoPk // 업데이트일경우 + dmdAplyPswdConfirm: updateList?.dmdInfoId // 업데이트일경우 ? z.string().optional() // 패스워드는 선택 사항이며 길이 제한 없음 :z.string() .min(1, "패스워드확인을 입력해주세요"), @@ -68,7 +68,7 @@ const defaultValues: FormSchema = { ctpvCd: '', sggCd: '', dmdCoNm: '', - dmdInfoPk: '', + dmdInfoId: '', bznmTotNo: '', daddr: '', telno: '', @@ -152,11 +152,11 @@ export default function SdmInsertForm({selectSidoData, selectSigunData, dataList return; } - const dmdInfoPk = data.dmdInfoPk + (data.bznmTotNo || '0000'); + const dmdInfoId = data.dmdInfoId + (data.bznmTotNo || '0000'); const formData = { ...data, - dmdInfoPk, - bzmnNo: data.dmdInfoPk, + dmdInfoId, + bzmnNo: data.dmdInfoId, }; console.log(' formData ', formData) diff --git a/packages/common/business_components/src/ui/sdmInsertForm/sdmNameBox.tsx b/packages/common/business_components/src/ui/sdmInsertForm/sdmNameBox.tsx index 059d63d90..59800b31e 100644 --- a/packages/common/business_components/src/ui/sdmInsertForm/sdmNameBox.tsx +++ b/packages/common/business_components/src/ui/sdmInsertForm/sdmNameBox.tsx @@ -102,19 +102,19 @@ export const SdmSearchForm = ({ } }} > - {item.dmdInfoPk.substring(10, 14) !== "0000" ? ( + {item.dmdInfoId.substring(10, 14) !== "0000" ? ( <> 사업자번호 : {" "} - {item.dmdInfoPk.substring(0, 10)}  + {item.dmdInfoId.substring(0, 10)}  종사업자번호 :{" "} {" "} - {item.dmdInfoPk.substring(10, 14)}  + {item.dmdInfoId.substring(10, 14)}  ) : ( <> 사업자번호 : {" "} - {item.dmdInfoPk.substring(0, 10)}  + {item.dmdInfoId.substring(0, 10)}  )} {item.dmdCoNm}