diff --git a/src/components/main/MainContents.jsx b/src/components/main/MainContents.jsx index 09aeb046..452e2a3a 100644 --- a/src/components/main/MainContents.jsx +++ b/src/components/main/MainContents.jsx @@ -85,6 +85,7 @@ export default function MainContents() { } } + console.log('qcastState:::', qcastState?.businessCharger) return (
@@ -106,8 +107,8 @@ export default function MainContents() { >
{dayjs(row.lastEditDatetime).format('YYYY.MM.DD HH:mm:ss')} - {row.objectNo} - {row.objectName} + {row.tempFlg === '0' ? row.objectNo : getMessage('stuff.gridData.tempObjectNo')} + {row.objectName ? row.objectName : '-'} {row.saleStoreName}
@@ -115,7 +116,13 @@ export default function MainContents() { })} ) : ( - +
+

{getMessage('main.content.objectList.noData1')}

+

{getMessage('main.content.objectList.noData2')}

+ +
)} diff --git a/src/components/management/StuffDetail.jsx b/src/components/management/StuffDetail.jsx index 640957d1..f31bbcaa 100644 --- a/src/components/management/StuffDetail.jsx +++ b/src/components/management/StuffDetail.jsx @@ -1307,12 +1307,16 @@ export default function StuffDetail() { delete params_sort.workNo delete params_sort.workName - // console.log(JSON.stringify(detail_sort) === JSON.stringify(params_sort)) - // console.log(Object.entries(detail_sort).toString() === Object.entries(params_sort).toString()) if (Object.entries(detail_sort).toString() === Object.entries(params_sort).toString()) { return alert(getMessage('stuff.detail.noChgData')) } + if (params?.receiveUser !== '') { + if (params?.receiveUser.trim().length > 10) { + return alert(getMessage('stuff.detail.tempSave.message2')) + } + } + if (editMode === 'NEW') { await promisePost({ url: apiUrl, data: params }) .then((res) => { @@ -1384,6 +1388,13 @@ export default function StuffDetail() { params.saleStoreLevel = session.storeLvl } + // 담당자 자리수 체크 + if (params?.receiveUser !== '') { + if (params?.receiveUser.trim().length > 10) { + return alert(getMessage('stuff.detail.tempSave.message2')) + } + } + const apiUrl = '/api/object/save-object' if (objectNo) { await promisePut({ url: apiUrl, data: params }) diff --git a/src/hooks/roofcover/useRoofAllocationSetting.js b/src/hooks/roofcover/useRoofAllocationSetting.js index 0840dc2d..0671f502 100644 --- a/src/hooks/roofcover/useRoofAllocationSetting.js +++ b/src/hooks/roofcover/useRoofAllocationSetting.js @@ -83,7 +83,13 @@ export function useRoofAllocationSetting(id) { } setCurrentRoofList([ ...currentRoofList, - { ...currentRoofMaterial, selected: false, id: currentRoofMaterial.roofMatlCd, name: currentRoofMaterial.roofMatlNm }, + { + ...currentRoofMaterial, + selected: false, + id: currentRoofMaterial.roofMatlCd, + name: currentRoofMaterial.roofMatlNm, + index: currentRoofList.length, + }, ]) } @@ -108,15 +114,18 @@ export function useRoofAllocationSetting(id) { // 지붕재 오른쪽 마우스 클릭 후 단일로 지붕재 변경 필요한 경우 const handleSaveContext = () => { + const newRoofList = currentRoofList.map((roof, idx) => { + return { ...roof, index: idx } + }) setBasicSetting((prev) => { return { ...prev, - selectedRoofMaterial: currentRoofList.find((roof) => roof.selected), + selectedRoofMaterial: newRoofList.find((roof) => roof.selected), } }) - setRoofList(currentRoofList) - const selectedRoofMaterial = currentRoofList.find((roof) => roof.selected) + setRoofList(newRoofList) + const selectedRoofMaterial = newRoofList.find((roof) => roof.selected) setSurfaceShapePattern(currentObject, roofDisplay.column, false, selectedRoofMaterial) closeAll() } @@ -180,14 +189,18 @@ export function useRoofAllocationSetting(id) { canvas.remove(wallLine) }) + const newRoofList = currentRoofList.map((roof, idx) => { + return { ...roof, index: idx } + }) + setBasicSetting((prev) => { return { ...prev, - selectedRoofMaterial: currentRoofList.find((roof) => roof.selected), + selectedRoofMaterial: newRoofList.find((roof) => roof.selected), } }) - setRoofList(currentRoofList) + setRoofList(newRoofList) const roofs = canvas.getObjects().filter((obj) => obj.name === 'roof') @@ -245,8 +258,6 @@ export function useRoofAllocationSetting(id) { return roof }) - newRoofList[selectedIndex].selected = true - setCurrentRoofList(newRoofList) } diff --git a/src/locales/ja.json b/src/locales/ja.json index f1532f56..c4a457ea 100644 --- a/src/locales/ja.json +++ b/src/locales/ja.json @@ -665,6 +665,7 @@ "stuff.detail.tooltip.saleStoreId": "販売代理店または販売代理店IDを1文字以上入力してください", "stuff.detail.tooltip.surfaceType": "塩害地域の定義は各メーカーの設置マニュアルをご確認ください", "stuff.detail.tempSave.message1": "一時保存されました。商品番号を取得するには、必須項目をすべて入力してください。", + "stuff.detail.tempSave.message2": "担当者は10桁以下で入力してください.", "stuff.detail.confirm.message1": "販売店情報を変更すると、設計依頼文書番号が削除されます。変更しますか?", "stuff.detail.delete.message1": "仕様が確定したものは削除できません。", "stuff.detail.planList.title": "プランリスト", @@ -800,6 +801,8 @@ "main.storeName": "販売店名", "main.objectNo": "物件番号", "main.faq": "FAQ", + "main.content.objectList.noData1": "登録された商品情報はありません.", + "main.content.objectList.noData2": "下のボタンをクリックして商品情報を登録してください.", "main.content.objectList": "最近の更新物件一覧", "main.content.notice": "お知らせ", "main.content.download1": "操作マニュアル", diff --git a/src/locales/ko.json b/src/locales/ko.json index 4d0f393c..94f21f7e 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -675,6 +675,7 @@ "stuff.detail.tooltip.saleStoreId": "판매대리점 또는 판매대리점ID를 1자 이상 입력하세요", "stuff.detail.tooltip.surfaceType": "염해지역 정의는 각 메이커의 설치 메뉴얼을 확인해주십시오", "stuff.detail.tempSave.message1": "임시저장 되었습니다. 물건번호를 획득하려면 필수 항목을 모두 입력해 주십시오.", + "stuff.detail.tempSave.message2": "담당자는 10자리 이하로 입력해 주십시오.", "stuff.detail.confirm.message1": "판매점 정보를 변경하면, 설계의뢰 문서번호가 삭제됩니다. 변경하시겠습니까?", "stuff.detail.delete.message1": "사양이 확정된 물건은 삭제할 수 없습니다.", "stuff.detail.planList.title": "플랜리스트", @@ -810,6 +811,8 @@ "main.storeName": "판매점명", "main.objectNo": "물건번호", "main.faq": "FAQ", + "main.content.objectList.noData1": "등록된 물건정보가 없습니다.", + "main.content.objectList.noData2": "아래 버튼을 클릭하여 물건정보를 등록하십시오.", "main.content.objectList": "최근 갱신 물건목록", "main.content.notice": "공지사항", "main.content.download1": "조작메뉴얼", diff --git a/src/store/settingAtom.js b/src/store/settingAtom.js index 1b837fdd..305bcb57 100644 --- a/src/store/settingAtom.js +++ b/src/store/settingAtom.js @@ -224,9 +224,7 @@ export const roofMaterialsAtom = atom({ export const selectedRoofMaterialSelector = selector({ key: 'selectedRoofMaterialSelector', get: ({ get }) => { - const addedRoofs = get(addedRoofsState) - - return addedRoofs.find((roof) => roof.selected) + return get(basicSettingState).selectedRoofMaterial }, })