refactor: 캔버스 저장 시 얼럿 표출 여부 수정
This commit is contained in:
parent
ae57338aab
commit
6cbce58f59
@ -272,7 +272,7 @@ export default function CanvasMenu(props) {
|
|||||||
|
|
||||||
// 저장버튼(btn08) 클릭 시 호출되는 함수
|
// 저장버튼(btn08) 클릭 시 호출되는 함수
|
||||||
const handleSaveCanvas = async () => {
|
const handleSaveCanvas = async () => {
|
||||||
await saveCanvas()
|
await saveCanvas(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 나가기 버튼 클릭
|
// 나가기 버튼 클릭
|
||||||
|
|||||||
@ -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) => {
|
||||||
|
|||||||
@ -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({
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user