refactor: 수정화면 리스트 버튼 로직 및 문구 수정

- 수정화면에서 リスト(리스트) 에서 戻る (뒤로) 버튼 문구 수정
- 버튼 클릭 시 목록 화면이 아닌 상세화면으로 이동하도록 수정
This commit is contained in:
Dayoung 2025-07-10 14:47:35 +09:00
parent d2322bf619
commit bdd035c20e
2 changed files with 32 additions and 9 deletions

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 = {