refactor: 캔버스 저장 시 얼럿 표출 여부 수정

This commit is contained in:
Daseul Kim 2025-02-06 16:35:52 +09:00
parent ae57338aab
commit 6cbce58f59
3 changed files with 13 additions and 8 deletions

View File

@ -272,7 +272,7 @@ export default function CanvasMenu(props) {
// (btn08) // (btn08)
const handleSaveCanvas = async () => { const handleSaveCanvas = async () => {
await saveCanvas() await saveCanvas(true)
} }
// //

View File

@ -7,11 +7,13 @@ import { useAxios } from '@/hooks/useAxios'
import { useSwal } from '@/hooks/useSwal' import { useSwal } from '@/hooks/useSwal'
import { usePlan } from '@/hooks/usePlan' import { usePlan } from '@/hooks/usePlan'
import { GlobalDataContext } from '@/app/GlobalDataProvider' import { GlobalDataContext } from '@/app/GlobalDataProvider'
import { QcastContext } from '@/app/QcastProvider'
import { currentCanvasPlanState } from '@/store/canvasAtom' import { currentCanvasPlanState } from '@/store/canvasAtom'
import { loginUserStore } from '@/store/commonAtom' import { loginUserStore } from '@/store/commonAtom'
export function useEstimate() { export function useEstimate() {
const { managementStateLoaded } = useContext(GlobalDataContext) const { managementStateLoaded } = useContext(GlobalDataContext)
const { setIsGlobalLoading } = useContext(QcastContext)
const router = useRouter() const router = useRouter()
const loginUserState = useRecoilValue(loginUserStore) const loginUserState = useRecoilValue(loginUserStore)
const currentCanvasPlan = useRecoilValue(currentCanvasPlanState) const currentCanvasPlan = useRecoilValue(currentCanvasPlanState)
@ -24,6 +26,9 @@ export function useEstimate() {
* 도면 견적서 저장 * 도면 견적서 저장
*/ */
const saveEstimate = async (estimateParam) => { const saveEstimate = async (estimateParam) => {
// 로딩 임시 주석
// setIsGlobalLoading(true)
const userId = loginUserState.userId const userId = loginUserState.userId
const saleStoreId = managementStateLoaded.saleStoreId const saleStoreId = managementStateLoaded.saleStoreId
const objectNo = currentCanvasPlan.objectNo const objectNo = currentCanvasPlan.objectNo
@ -54,7 +59,7 @@ export function useEstimate() {
await promisePost({ url: '/api/estimate/save-estimate', data: saveEstimateData }) await promisePost({ url: '/api/estimate/save-estimate', data: saveEstimateData })
.then(async () => { .then(async () => {
// 견적서 저장이 완료되면 캔버스 저장 후 견적서 페이지로 이동 // 견적서 저장이 완료되면 캔버스 저장 후 견적서 페이지로 이동
await saveCanvas() await saveCanvas(false)
moveEstimate(planNo, objectNo) moveEstimate(planNo, objectNo)
}) })
.catch((error) => { .catch((error) => {

View File

@ -120,9 +120,9 @@ export function usePlan(params = {}) {
/** /**
* 페이지 캔버스를 저장 * 페이지 캔버스를 저장
*/ */
const saveCanvas = async () => { const saveCanvas = async (saveAlert = true) => {
const canvasStatus = currentCanvasData('save') const canvasStatus = currentCanvasData('save')
await putCanvasStatus(canvasStatus) await putCanvasStatus(canvasStatus, saveAlert)
} }
/** /**
@ -192,7 +192,7 @@ export function usePlan(params = {}) {
/** /**
* id에 해당하는 canvas 데이터를 수정 * id에 해당하는 canvas 데이터를 수정
*/ */
const putCanvasStatus = async (canvasStatus) => { const putCanvasStatus = async (canvasStatus, saveAlert = true) => {
const planData = { const planData = {
id: currentCanvasPlan.id, id: currentCanvasPlan.id,
bgImageName: currentCanvasPlan?.bgImageName ?? null, bgImageName: currentCanvasPlan?.bgImageName ?? null,
@ -202,7 +202,7 @@ export function usePlan(params = {}) {
await promisePut({ url: '/api/canvas-management/canvas-statuses', data: planData }) await promisePut({ url: '/api/canvas-management/canvas-statuses', data: planData })
.then((res) => { .then((res) => {
setPlans((plans) => plans.map((plan) => (plan.id === currentCanvasPlan.id ? { ...plan, canvasStatus: canvasStatus } : plan))) setPlans((plans) => plans.map((plan) => (plan.id === currentCanvasPlan.id ? { ...plan, canvasStatus: canvasStatus } : plan)))
swalFire({ text: getMessage('plan.message.save') }) if (saveAlert) swalFire({ text: getMessage('plan.message.save') })
}) })
.catch((error) => { .catch((error) => {
swalFire({ text: error.message, icon: 'error' }) swalFire({ text: error.message, icon: 'error' })
@ -283,7 +283,7 @@ export function usePlan(params = {}) {
}) })
} else { } else {
if (!currentCanvasPlan || currentCanvasPlan.id !== newCurrentId) { if (!currentCanvasPlan || currentCanvasPlan.id !== newCurrentId) {
await saveCanvas() await saveCanvas(true)
} }
setCurrentCanvasPlan(plans.find((plan) => plan.id === newCurrentId)) setCurrentCanvasPlan(plans.find((plan) => plan.id === newCurrentId))
setPlans((plans) => plans.map((plan) => ({ ...plan, isCurrent: plan.id === newCurrentId }))) setPlans((plans) => plans.map((plan) => ({ ...plan, isCurrent: plan.id === newCurrentId })))
@ -316,7 +316,7 @@ export function usePlan(params = {}) {
*/ */
const handleAddPlan = async (userId, objectNo) => { const handleAddPlan = async (userId, objectNo) => {
if (currentCanvasPlan?.id) { if (currentCanvasPlan?.id) {
await saveCanvas() await saveCanvas(true)
} }
JSON.parse(currentCanvasData()).objects.length > 0 JSON.parse(currentCanvasData()).objects.length > 0
? swalFire({ ? swalFire({