feature/survey #38

Merged
swyoo merged 53 commits from feature/survey into dev 2025-05-19 13:51:57 +09:00
4 changed files with 35 additions and 20 deletions
Showing only changes of commit 34319dadcd - Show all commits

View File

@ -1,35 +1,54 @@
'use client'
import { useRouter } from 'next/navigation'
import { useServey } from '@/hooks/useSurvey'
import { useSessionStore } from '@/store/session'
import { useEffect, useState } from 'react'
export default function DetailButton({ isTemporary, surveyId }: { isTemporary: boolean; surveyId: number }) {
export default function DetailButton({ isTemporary, surveyId, representative }: { isTemporary: boolean; surveyId: number; representative: string }) {
const router = useRouter()
const { session } = useSessionStore()
const { submitSurvey, deleteSurvey } = useServey(surveyId)
const [userNm, setUserNm] = useState('')
useEffect(() => {
if (session?.isLoggedIn) {
setUserNm(session?.userNm ?? '')
}
}, [session, setUserNm])
const handleSubmit = async () => {
if (isTemporary) {
alert('一時保存されたデータは提出できません。')
return
}
if (confirm('提出しますか??')) {
if (surveyId) {
// TODO: 제출 페이지 추가
alert('SUBMIT POPUP!!!!!!!!!!!')
await submitSurvey()
if (userNm === representative) {
if (confirm('提出しますか??')) {
if (surveyId) {
// TODO: 제출 페이지 추가
alert('SUBMIT POPUP!!!!!!!!!!!')
await submitSurvey()
}
}
} else {
alert('担当者のみ提出可能です。')
}
}
const handleUpdate = () => {
router.push(`/survey-sale/basic-info?id=${surveyId}&isTemp=${isTemporary}`)
if (userNm === representative) {
router.push(`/survey-sale/basic-info?id=${surveyId}&isTemp=${isTemporary}`)
} else {
alert('担当者のみ修正可能です。')
}
}
const handleDelete = async () => {
const result = confirm('削除しますか?')
console.log('🚀 ~ handleDelete ~ result:', result)
if (result) {
if (confirm('削除しますか?')) {
if (surveyId) {
await deleteSurvey()
router.push('/survey-sale')
if (userNm === representative) {
await deleteSurvey()
router.push('/survey-sale')
} else {
alert('担当者のみ削除可能です。')
}
}
}
}

View File

@ -56,7 +56,7 @@ export default function DetailForm({
<input type="text" className="input-frame" disabled defaultValue={surveyDetail?.customer_name ?? ''} />
</div>
</div>
<DetailButton isTemporary={isTemporary} surveyId={Number(surveyDetail?.id)} />
<DetailButton isTemporary={isTemporary} surveyId={Number(surveyDetail?.id)} representative={surveyDetail?.representative ?? ''} />
</div>
</>
)

View File

@ -196,7 +196,7 @@ export default function RoofDetailForm({
</div>
</div>
</div>
<DetailButton isTemporary={false} surveyId={Number(surveyDetail?.id)} />
<DetailButton isTemporary={false} surveyId={Number(surveyDetail?.id)} representative={surveyDetail?.representative ?? ''} />
</div>
</>
)

View File

@ -121,7 +121,7 @@ export default function BasicForm() {
onChange={(e) => handleChange('representative', e.target.value)}
/>
</div>
{(userType === 'musubi' || userType === 'order' || userType?.includes('musubi')) && (
{(userType === 'order' || userType?.includes('musubi')) && (
<>
<div className="data-input-form-bx">
<div className="data-input-form-tit"></div>
@ -202,10 +202,6 @@ export default function BasicForm() {
onChange={(e) => handleChange('address', e.target.value)}
>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
</select>
</div>
</div>