diff --git a/src/components/estimate/popup/DocDownOptionPop.jsx b/src/components/estimate/popup/DocDownOptionPop.jsx
index d6f1d5ec..50dfd018 100644
--- a/src/components/estimate/popup/DocDownOptionPop.jsx
+++ b/src/components/estimate/popup/DocDownOptionPop.jsx
@@ -4,11 +4,14 @@ import { useMessage } from '@/hooks/useMessage'
import { useAxios } from '@/hooks/useAxios'
import { useRecoilValue } from 'recoil'
import { floorPlanObjectState, estimateState } from '@/store/floorPlanObjectAtom'
+import { usePathname } from 'next/navigation'
export default function DocDownOptionPop({ planNo, setEstimatePopupOpen, docDownPopLockFlg }) {
const { getMessage } = useMessage()
const { promisePost } = useAxios()
+ const pathName = usePathname()
+
//EXCEL, PDF 구분
const [schDownload, setSchDownload] = useState('EXCEL')
//다운로드 파일 EXCEL
@@ -85,8 +88,10 @@ export default function DocDownOptionPop({ planNo, setEstimatePopupOpen, docDown
link.remove()
window.URL.revokeObjectURL(fileUrl)
//문서 다운받으면 lockFlg = 1 잠금상태로!
- // estimateRecoilState.lockFlg = '1'
- // docDownPopLockFlg()
+ estimateRecoilState.lockFlg = '1'
+ if (pathName.includes('/floor-plan')) {
+ docDownPopLockFlg()
+ }
}
})
.catch((error) => {
diff --git a/src/components/floor-plan/CanvasMenu.jsx b/src/components/floor-plan/CanvasMenu.jsx
index a47de33f..c3465ca6 100644
--- a/src/components/floor-plan/CanvasMenu.jsx
+++ b/src/components/floor-plan/CanvasMenu.jsx
@@ -150,7 +150,7 @@ export default function CanvasMenu(props) {
text: getMessage('stuff.detail.move.confirmMsg'),
type: 'confirm',
confirmFn: () => {
- router.push(`/management/stuff/detail?objectNo=${objectNo}`)
+ router.push(`/management/stuff/detail?objectNo=${objectNo}`, { scroll: false })
},
})
break
@@ -331,33 +331,32 @@ export default function CanvasMenu(props) {
if (isObjectNotEmpty(estimateRecoilState)) {
if (estimateRecoilState?.createUser === 'T01') {
if (sessionState.userId !== 'T01') {
- setButtonStyle('none')
- // setButtonStyle1('none')
- // setButtonStyle2('none')
- // setButtonStyle3('none')
- // setButtonStyle4('none')
- // setButtonStyle5('none')
+ setButtonStyle1('none')
+ setButtonStyle2('none')
+ setButtonStyle3('none')
+ setButtonStyle4('none')
+ setButtonStyle5('none')
}
} else {
if (estimateRecoilState?.tempFlg === '1') {
- // setButtonStyle1('none')
- // setButtonStyle2('')
- // setButtonStyle3('none')
- // setButtonStyle4('none')
- // setButtonStyle5('none')
+ setButtonStyle1('none')
+ setButtonStyle2('')
+ setButtonStyle3('none')
+ setButtonStyle4('none')
+ setButtonStyle5('none')
} else {
if (estimateRecoilState?.tempFlg === '0' && estimateRecoilState?.lockFlg === '0') {
- // setButtonStyle1('')
- // setButtonStyle2('')
- // setButtonStyle3('')
- // setButtonStyle4('')
- // setButtonStyle5('')
+ setButtonStyle1('')
+ setButtonStyle2('')
+ setButtonStyle3('')
+ setButtonStyle4('')
+ setButtonStyle5('')
} else {
- // setButtonStyle1('')
- // setButtonStyle2('none')
- // setButtonStyle3('none')
- // setButtonStyle4('')
- // setButtonStyle5('')
+ setButtonStyle1('')
+ setButtonStyle2('none')
+ setButtonStyle3('none')
+ setButtonStyle4('')
+ setButtonStyle5('')
}
}
}
@@ -431,11 +430,11 @@ export default function CanvasMenu(props) {
// 문서다운로드 팝업에서 다운로드 하면 문서 잠금
const docDownPopLockFlg = () => {
- // setButtonStyle1('')
- // setButtonStyle2('none')
- // setButtonStyle3('none')
- // setButtonStyle4('')
- // setButtonStyle5('')
+ setButtonStyle1('')
+ setButtonStyle2('none')
+ setButtonStyle3('none')
+ setButtonStyle4('')
+ setButtonStyle5('')
}
return (
@@ -524,20 +523,20 @@ export default function CanvasMenu(props) {
{menuNumber === 5 && (
<>
-
{/* 견적서(menuNumber=== 5) 상세화면인경우 문서다운로드 팝업 */}
{estimatePopupOpen && (
- //
-
+
)}
{/* 견적서(menuNumber ===5)복사 팝업 */}
{estimateCopyPopupOpen && }
diff --git a/src/components/management/Stuff.jsx b/src/components/management/Stuff.jsx
index 005408c4..f55815fb 100644
--- a/src/components/management/Stuff.jsx
+++ b/src/components/management/Stuff.jsx
@@ -272,7 +272,7 @@ export default function Stuff() {
stuffSearchParams.pageNo = stuffSearchParams.pageNo
async function fetchData() {
- const apiUrl = `/api/object/list?saleStoreId=${session?.storeId}&${queryStringFormatter(stuffSearchParams)}`
+ const apiUrl = `/api/object/list?${queryStringFormatter(stuffSearchParams)}`
await get({ url: apiUrl }).then((res) => {
if (!isEmptyArray(res)) {
setGridProps({ ...gridProps, gridData: res, count: res[0].totCnt })
@@ -302,7 +302,7 @@ export default function Stuff() {
setPageNo(1)
async function fetchData() {
- const apiUrl = `/api/object/list?saleStoreId=${session?.storeId}&${queryStringFormatter(stuffSearchParams)}`
+ const apiUrl = `/api/object/list?${queryStringFormatter(stuffSearchParams)}`
await get({ url: apiUrl }).then((res) => {
if (!isEmptyArray(res)) {
setGridProps({ ...gridProps, gridData: res, count: res[0].totCnt })
diff --git a/src/components/management/StuffDetail.jsx b/src/components/management/StuffDetail.jsx
index 52ddb680..15ea41fc 100644
--- a/src/components/management/StuffDetail.jsx
+++ b/src/components/management/StuffDetail.jsx
@@ -10,7 +10,7 @@ import { globalLocaleStore } from '@/store/localeAtom'
import { isEmptyArray, isNotEmptyArray, isObjectNotEmpty, queryStringFormatter } from '@/util/common-utils'
import { useMessage } from '@/hooks/useMessage'
import { useForm } from 'react-hook-form'
-import { useRecoilValue, useSetRecoilState, useResetRecoilState, useRecoilState } from 'recoil'
+import { useRecoilValue, useSetRecoilState, useRecoilState } from 'recoil'
import { SessionContext } from '@/app/SessionProvider'
import FindAddressPop from './popup/FindAddressPop'
import PlanRequestPop from './popup/PlanRequestPop'
@@ -19,18 +19,16 @@ import { useCommonCode } from '@/hooks/common/useCommonCode'
import StuffPlanQGrid from './StuffPlanQGrid'
import { floorPlanObjectState } from '@/store/floorPlanObjectAtom'
import { GlobalDataContext } from '@/app/GlobalDataProvider'
-// import { ManagementContext } from '@/app/management/ManagementProvider'
import DocDownOptionPop from '../estimate/popup/DocDownOptionPop'
import { stuffSearchState } from '@/store/stuffAtom'
import { QcastContext } from '@/app/QcastProvider'
-
+import { useCanvasMenu } from '@/hooks/common/useCanvasMenu'
import { useSwal } from '@/hooks/useSwal'
export default function StuffDetail() {
const [stuffSearch, setStuffSearch] = useRecoilState(stuffSearchState)
const { swalFire } = useSwal()
const { setIsGlobalLoading } = useContext(QcastContext)
- const resetStuffRecoil = useResetRecoilState(stuffSearchState)
const stuffSearchParams = useRecoilValue(stuffSearchState)
const setFloorPlanObjectNo = useSetRecoilState(floorPlanObjectState) //견적서 화면용 물건번호리코일
@@ -41,6 +39,8 @@ export default function StuffDetail() {
const [showButton, setShowButton] = useState('') //임시저장, 저장, 삭제 버튼 컨트롤
+ const { setMenuNumber } = useCanvasMenu()
+
//공통코드
const { commonCode, findCommonCode } = useCommonCode()
const [selOptions, setSelOptions] = useState('') //선택한 1차점
@@ -1596,6 +1596,7 @@ export default function StuffDetail() {
pid: planNo,
objectNo: objectNo,
}
+ setMenuNumber(null)
const url = `/floor-plan?${queryStringFormatter(param)}`
router.push(url)
}
diff --git a/src/components/management/StuffSearchCondition.jsx b/src/components/management/StuffSearchCondition.jsx
index ab4d0b47..ad265c55 100644
--- a/src/components/management/StuffSearchCondition.jsx
+++ b/src/components/management/StuffSearchCondition.jsx
@@ -705,6 +705,18 @@ export default function StuffSearchCondition() {
stuffSearch.pageSize = 100
setSchSelSaleStoreId('')
setOtherSaleStoreId('')
+ } else {
+ setStartDate(stuffSearch?.schFromDt ? stuffSearch.schFromDt : dayjs(new Date()).add(-1, 'year').format('YYYY-MM-DD'))
+ setEndDate(stuffSearch?.schToDt ? stuffSearch.schToDt : dayjs(new Date()).format('YYYY-MM-DD'))
+ setObjectNo(stuffSearch.schObjectNo ? stuffSearch.schObjectNo : objectNo)
+ setSaleStoreName(stuffSearch.schSaleStoreName ? stuffSearch.schSaleStoreName : saleStoreName)
+ setAddress(stuffSearch.schAddress ? stuffSearch.schAddress : address)
+ setobjectName(stuffSearch.schObjectName ? stuffSearch.schObjectName : objectName)
+ setDispCompanyName(stuffSearch.schDispCompanyName ? stuffSearch.schDispCompanyName : dispCompanyName)
+ setReceiveUser(stuffSearch.schReceiveUser ? stuffSearch.schReceiveUser : receiveUser)
+ setDateType(stuffSearch.schDateType ? stuffSearch.schDateType : dateType)
+ setTempFlg(stuffSearch.schTempFlg ? stuffSearch.schTempFlg : tempFlg)
+ setMyDataCheck(stuffSearch.schMyDataCheck)
}
} else {
setStartDate(stuffSearch?.schFromDt ? stuffSearch.schFromDt : dayjs(new Date()).add(-1, 'year').format('YYYY-MM-DD'))
diff --git a/src/components/management/StuffSubHeader.jsx b/src/components/management/StuffSubHeader.jsx
index 3ea7f3c9..6dc316cb 100644
--- a/src/components/management/StuffSubHeader.jsx
+++ b/src/components/management/StuffSubHeader.jsx
@@ -15,7 +15,6 @@ import { isObjectNotEmpty, queryStringFormatter } from '@/util/common-utils'
import { useCanvasMenu } from '@/hooks/common/useCanvasMenu'
import { GlobalDataContext } from '@/app/GlobalDataProvider'
-// import { ManagementContext } from '@/app/management/ManagementProvider'
import { SessionContext } from '@/app/SessionProvider'
export default function StuffSubHeader({ type }) {
diff --git a/src/locales/ja.json b/src/locales/ja.json
index 41d0a817..a96ff061 100644
--- a/src/locales/ja.json
+++ b/src/locales/ja.json
@@ -938,7 +938,7 @@
"estimate.detail.unlock.alertMsg": "見積書を修正して保存",
"estimate.detail.alert.delFile": "添付ファイルを完全に削除するには[保存]ボタンをクリックしてください",
"estimate.detail.alert.selectDelItem": "削除する商品を選択してください.",
- "estimate.menu.move.valid1": "見積書を作成したら、見積書を照会できます.",
+ "estimate.menu.move.valid1": "回路を分割していないため、見積もりを呼び出すことはできません.",
"simulator.title.sub1": "物件番号",
"simulator.title.sub2": "作成日",
"simulator.title.sub3": "システム容量",
diff --git a/src/locales/ko.json b/src/locales/ko.json
index 4b51f8f2..2d049d61 100644
--- a/src/locales/ko.json
+++ b/src/locales/ko.json
@@ -947,7 +947,7 @@
"estimate.detail.unlock.alertMsg": "견적서를 수정하고, 저장하십시오",
"estimate.detail.alert.delFile": "첨부파일을 완전히 삭제하려면 [저장]버튼을 클릭하십시오.",
"estimate.detail.alert.selectDelItem": "삭제할 제품을 선택하세요.",
- "estimate.menu.move.valid1": "견적서를 생성한 후에, 견적서를 조회할 수 있습니다.",
+ "estimate.menu.move.valid1": "회로를 나누지 않았기 때문에 견적서를 호출할 수 없습니다.",
"simulator.title.sub1": "물건번호",
"simulator.title.sub2": "작성일",
"simulator.title.sub3": "시스템 용량",