From 25a061b981602caf4a6caee087d0fd7b575df1b9 Mon Sep 17 00:00:00 2001 From: keyy1315 Date: Fri, 25 Jul 2025 14:49:04 +0900 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20Builder=20=EA=B6=8C=ED=95=9C=20?= =?UTF-8?q?=EB=A7=A4=EB=AC=BC=20=EC=9E=91=EC=84=B1=20=ED=8F=BC=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 시공ID 없는 Builder 계정 작성 매물과 Admin_Sub 작성 매물 구분하기 위한 폼 수정 --- src/components/survey-sale/detail/BasicForm.tsx | 7 ++++--- src/components/survey-sale/detail/ButtonForm.tsx | 1 + src/components/survey-sale/detail/DetailForm.tsx | 4 ++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/components/survey-sale/detail/BasicForm.tsx b/src/components/survey-sale/detail/BasicForm.tsx index 1b5b3c3..185f406 100644 --- a/src/components/survey-sale/detail/BasicForm.tsx +++ b/src/components/survey-sale/detail/BasicForm.tsx @@ -53,7 +53,7 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba /> {/* 페이지 모드 별, 권한 별 판매점, 시공점 입력 여부 처리 */} - {mode !== 'READ' && + {mode === 'CREATE' && (session?.role === 'Builder' ? ( <> {storeInput(basicInfo, setBasicInfo, mode)} @@ -64,10 +64,11 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba ) : ( <>{storeInput(basicInfo, setBasicInfo, mode)} ))} - {mode === 'READ' && ( + {(mode === 'READ' || mode === 'EDIT') && ( <> {basicInfo?.store && storeInput(basicInfo, setBasicInfo, mode)} - {basicInfo?.constructionPoint && builderInput(basicInfo, setBasicInfo, mode, session)} + {(basicInfo?.constructionPoint || (session?.role === 'Builder' && mode === 'EDIT')) && + builderInput(basicInfo, setBasicInfo, mode, session)} )} diff --git a/src/components/survey-sale/detail/ButtonForm.tsx b/src/components/survey-sale/detail/ButtonForm.tsx index 1640d7a..c799cc0 100644 --- a/src/components/survey-sale/detail/ButtonForm.tsx +++ b/src/components/survey-sale/detail/ButtonForm.tsx @@ -87,6 +87,7 @@ export default function ButtonForm({ mode, setMode, data }: ButtonFormProps) { case 'Admin_Sub': return session.storeId === basicData.storeId && session.builderId === basicData.constructionPointId case 'Builder': + return session.builderId ? session.builderId === basicData.constructionPointId : session.userId === basicData.representativeId case 'Partner': return session.builderId === basicData.constructionPointId default: diff --git a/src/components/survey-sale/detail/DetailForm.tsx b/src/components/survey-sale/detail/DetailForm.tsx index f18c47d..1241b9e 100644 --- a/src/components/survey-sale/detail/DetailForm.tsx +++ b/src/components/survey-sale/detail/DetailForm.tsx @@ -87,7 +87,7 @@ export default function DetailForm() { store: session?.storeNm ?? null, storeId: session?.storeId ?? null, constructionPoint: session?.builderNm ?? null, - constructionPointId: session?.builderId ?? null, + constructionPointId: session.role === 'Builder' ? (session.builderId ? session.builderId : '') : session.builderId ?? null, })) const [roofInfoData, setRoofInfoData] = useState(roofInfoForm) @@ -109,7 +109,7 @@ export default function DetailForm() { store: session.storeNm ?? null, storeId: session.storeId ?? null, constructionPoint: session.builderNm ?? null, - constructionPointId: session.builderId ?? null, + constructionPointId: session.role === 'Builder' ? (session.builderId ? session.builderId : '') : session.builderId ?? null, })) }, [session?.isLoggedIn]) -- 2.47.2 From 897a2b668afb3e017e77b05f4393d1e3ad603391 Mon Sep 17 00:00:00 2001 From: keyy1315 Date: Fri, 25 Jul 2025 15:37:24 +0900 Subject: [PATCH 2/2] =?UTF-8?q?style:=20=EC=A1=B0=EC=82=AC=EB=A7=A4?= =?UTF-8?q?=EB=AC=BC=20=EC=A3=BC=EC=86=8C=20=EC=B4=88=EA=B8=B0=ED=99=94=20?= =?UTF-8?q?=EB=B2=84=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/assets/images/sub/refresh.png | Bin 0 -> 402 bytes .../survey-sale/detail/BasicForm.tsx | 38 ++++++++++++++---- src/styles/components/_sub.scss | 10 +++++ 3 files changed, 40 insertions(+), 8 deletions(-) create mode 100644 public/assets/images/sub/refresh.png diff --git a/public/assets/images/sub/refresh.png b/public/assets/images/sub/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..d5ee1a04092f475ae2fe89f6cfe7f8e58a36c4e5 GIT binary patch literal 402 zcmV;D0d4+?P) zLGkMl24D2S9~qg(#&p|lHv7UPO`7fW_wUZMGfA@42CM=tU<6EoPhbW-0Yjh(R2=)x zv%n94cf$4p?AdVn=mVF4YYXrI90Qxcnhu$FfwB7h0DS`w2^jbn&=x_DZyD$S-~WHh z7ZwBG4#x3s-%U_J6KZ1Kj)0%J6611gSuro?fs47E?|)aIlN4dVvkKIT5}2t#wP=C$ z9E=TRd=wHQU`rWO*W#Tnc5?{ylyU33rsJ&F)bXk(%4nuNv^RA)Od^d%y)wnGlIGN~ zO2tkDd{^s{6uo-L`N|SG@`Vdn(UY5Ecah~ZB}>HQK-QQD)lNqLMi9)Uqx%Umv-1If>zO$+x-y#N3J07*qoM6N<$f>KbcC;$Ke literal 0 HcmV?d00001 diff --git a/src/components/survey-sale/detail/BasicForm.tsx b/src/components/survey-sale/detail/BasicForm.tsx index 185f406..ff284b1 100644 --- a/src/components/survey-sale/detail/BasicForm.tsx +++ b/src/components/survey-sale/detail/BasicForm.tsx @@ -30,6 +30,15 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba resetAddressData() }, [addressData]) + const handleAddressInitiate = () => { + setBasicInfo({ + ...basicInfo, + postCode: null, + address: null, + addressDetail: null, + }) + } + return ( <>
@@ -87,12 +96,12 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba id="investigationDate" type="date" className="date-frame" - defaultValue={basicInfo?.investigationDate?.toString()} + value={basicInfo?.investigationDate?.toString()} onChange={(e) => setBasicInfo({ ...basicInfo, investigationDate: e.target.value })} />
) : ( - + )}
@@ -102,7 +111,7 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba type="text" className="input-frame" readOnly={mode === 'READ'} - defaultValue={basicInfo?.buildingName ?? ''} + value={basicInfo?.buildingName ?? ''} onChange={(e) => setBasicInfo({ ...basicInfo, buildingName: e.target.value })} />
@@ -113,7 +122,7 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba type="text" className="input-frame" readOnly={mode === 'READ'} - defaultValue={basicInfo?.customerName ?? ''} + value={basicInfo?.customerName ?? ''} onChange={(e) => setBasicInfo({ ...basicInfo, customerName: e.target.value })} /> @@ -122,26 +131,39 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba
{/* 우편번호 */}
- +
{/* 도도부현 */}
- + setBasicInfo({ ...basicInfo, address: e.target.value })} + />
{/* 주소 */} {mode !== 'READ' && ( -
+
+
)}
市区町村名, 以後の住所
- + setBasicInfo({ ...basicInfo, addressDetail: e.target.value })} + />
diff --git a/src/styles/components/_sub.scss b/src/styles/components/_sub.scss index 8f551bb..4899ac6 100644 --- a/src/styles/components/_sub.scss +++ b/src/styles/components/_sub.scss @@ -688,4 +688,14 @@ width: 100%; } } +} +.form-flex { + .reset { + flex: none; + width: 40px; + background-image: url(/assets/images/sub/refresh.png); + background-size: 24px 24px; + background-position: center; + background-repeat: no-repeat; + } } \ No newline at end of file -- 2.47.2