Merge pull request 'feature/survey : 조사매물 컴포넌트 수정' (#101) from feature/survey into dev

Reviewed-on: #101
This commit is contained in:
seul 2025-07-10 14:53:59 +09:00
commit f3e6f91a2f
3 changed files with 33 additions and 10 deletions

View File

@ -53,7 +53,7 @@ export default function BasicForm({ basicInfo, setBasicInfo, mode, session }: Ba
/>
</div>
{/* 페이지 모드 별, 권한 별 판매점, 시공점 입력 여부 처리 */}
{mode === 'READ' || session?.role === 'Builder' ? (
{session?.role === 'Builder'? (
<>
{storeInput(basicInfo, setBasicInfo, mode)}
{builderInput(basicInfo, setBasicInfo, mode)}

View File

@ -215,7 +215,7 @@ export default function ButtonForm({ mode, setMode, data }: ButtonFormProps) {
return (
<div className="sale-form-btn-wrap">
<div className="btn-flex-wrap">
<ListButton />
<ListButton mode={mode} setMode={setMode} />
</div>
</div>
)
@ -230,10 +230,14 @@ export default function ButtonForm({ mode, setMode, data }: ButtonFormProps) {
{mode === 'READ' && (
<div className="sale-form-btn-wrap">
<div className="btn-flex-wrap">
<ListButton />
{(permissions.isWriter || permissions.isSubmiter || (permissions.isReceiver && isSubmit)) && <EditButton setMode={setMode} disabled={buttonDisabled} />}
<ListButton mode={mode} setMode={setMode} />
{(permissions.isWriter || permissions.isSubmiter || (permissions.isReceiver && isSubmit)) && (
<EditButton setMode={setMode} disabled={buttonDisabled} />
)}
{(permissions.isWriter || (permissions.isReceiver && isSubmit)) && <DeleteButton handleDelete={handleDelete} disabled={buttonDisabled} />}
{!isSubmit && permissions.isSubmiter && !data.basic.srlNo?.includes('一時保存') && <SubmitButton handleSubmit={handleSubmit} disabled={buttonDisabled} />}
{!isSubmit && permissions.isSubmiter && !data.basic.srlNo?.includes('一時保存') && (
<SubmitButton handleSubmit={handleSubmit} disabled={buttonDisabled} />
)}
</div>
</div>
)}
@ -242,11 +246,14 @@ export default function ButtonForm({ mode, setMode, data }: ButtonFormProps) {
{/* 작성자 - 임시저장, 저장, 제출(미제출인 매물) 버튼 표시 */}
{/* 제출권한자 - 임시저장, 저장, 제출(미제출인 매물) 버튼 표시 */}
{/* 제출수신자 - 임시저장, 저장 버튼 표시 */}
{/* 수정화면에서는 리스트 버튼 클릭 시 READ 모드로 이동 */}
{(mode === 'CREATE' || mode === 'EDIT') && (
<div className="sale-form-btn-wrap">
<div className="btn-flex-wrap">
<ListButton />
{(data.basic.srlNo?.includes('一時保存') || mode === 'CREATE') && <TempButton handleSave={() => handleSave(true)} disabled={buttonDisabled} />}
<ListButton mode={mode} setMode={setMode} />
{(data.basic.srlNo?.includes('一時保存') || mode === 'CREATE') && (
<TempButton handleSave={() => handleSave(true)} disabled={buttonDisabled} />
)}
<SaveButton handleSave={() => handleSave(false)} disabled={buttonDisabled} />
</div>
</div>
@ -256,12 +263,25 @@ export default function ButtonForm({ mode, setMode, data }: ButtonFormProps) {
}
/** Button Components */
const ListButton = () => {
const ListButton = ({ mode, setMode }: { mode: Mode; setMode: (mode: Mode) => void }) => {
const router = useRouter()
const { showConfirm } = useAlertMsg()
return (
<div className="btn-bx">
<button className="btn-frame n-blue icon" onClick={() => router.push('/survey-sale')}>
<i className="btn-arr"></i>
<button
className="btn-frame n-blue icon"
onClick={() => {
if (mode === 'READ' || mode === 'CREATE') {
router.push('/survey-sale')
} else {
showConfirm(CONFIRM_MESSAGE.EDIT_CANCEL_CONFIRM, () => {
setMode('READ')
})
}
}}
>
{mode === 'READ' || mode === 'CREATE' ? 'リスト' : '戻る'}
<i className="btn-arr"></i>
</button>
</div>
)

View File

@ -39,6 +39,9 @@ export const CONFIRM_MESSAGE = {
/** 문의 저장 확인 메세지 - "문의를 등록 하시겠습니까? 한화재팬 담당자에게 문의 메일이 발송됩니다." */
SAVE_INQUIRY_CONFIRM: 'お問い合わせを登録しますか? Hanwha Japanの担当者にお問い合わせメールが送信されます。',
/** 작성 / 수정 취소 확인 메세지 - "변경 내용이 저장되지 않았습니다. 돌아가도 되겠습니까?" */
EDIT_CANCEL_CONFIRM: '変更内容が保存されていません。戻ってもよろしいですか?',
}
export const WARNING_MESSAGE = {