diff --git a/apps/wr/app/matMng/coMng/ldrmntCoSttn/page.tsx b/apps/wr/app/matMng/coMng/ldrmntCoSttn/page.tsx
index 36a8b7151..8c4976e09 100644
--- a/apps/wr/app/matMng/coMng/ldrmntCoSttn/page.tsx
+++ b/apps/wr/app/matMng/coMng/ldrmntCoSttn/page.tsx
@@ -33,7 +33,7 @@ import toast, { Toaster } from "react-hot-toast";
import { useTranslation } from "react-i18next";
export default function LdrmntCoSttn() {
- const { code, ldrmnt, ldrmntInit, ldrmntSearch, ldrmntUpdate } = useWrStore(
+ const { auth, code, ldrmnt, ldrmntInit, ldrmntSearch, ldrmntUpdate } = useWrStore(
(state) => state
);
const { ldrmntRes, excelList, ldrmntResCount } = ldrmnt;
@@ -47,6 +47,7 @@ export default function LdrmntCoSttn() {
const [resetPage, isResetPage] = useState(false);
const [isDownloadClicked, setIsDownloadClicked] = useState(false);
const { t } = useTranslation('base');
+ const { regAuthrtYn, mdfcnAuthrtYn } = auth;
const excelClick = useCallback(() => {
excelDownload(
@@ -224,6 +225,7 @@ export default function LdrmntCoSttn() {
onClick={() => {
setIsExcelOpen({ isModal: true });
}}
+ disabled={regAuthrtYn === 'N'}
>
엑셀등록
@@ -269,14 +271,16 @@ export default function LdrmntCoSttn() {
setDetailModal({ ...detailModal, isOpen: !detailModal.isOpen })
}}
bodyClass={"w-[40vw] max-w-none max-h-[calc(100%-70px)]"}
- body={ {
- const handleConfirm = async () => {
- await ldrmntUpdate(value);
- setDetailModal({ ...detailModal, isOpen: false });
- ldrmntSearch(false, pageNation, '20', computeCityNm(), searchTxt || "");
- };
- confirmToast(t('isUpdateMsg'), handleConfirm);
- }} />}
+ body={ {
+ const handleConfirm = async () => {
+ await ldrmntUpdate(value);
+ setDetailModal({ ...detailModal, isOpen: false });
+ ldrmntSearch(false, pageNation, '20', computeCityNm(), searchTxt || "");
+ };
+ confirmToast(t('isUpdateMsg'), handleConfirm);
+ }} />}
/>
state);
const [searchTxt, setSearchTxt] = useState("");
const [pageNation, setPageNation] = useState(1);
@@ -30,12 +30,9 @@ export default function Home() {
const [bdstTable, setbdstTable] = useState();
const [issNewReg, setIsNewReg] = useState(false);
- // const [bdstChgProps, setBdstChgProps] = useState<{
- // isOpen: boolean;
- // chgBuilding: chgBuilding[];
- // }>({ isOpen: false, chgBuilding: [] });
const { htdflRes ,htdflResCount} = htdfl;
+ const { regAuthrtYn, mdfcnAuthrtYn } = auth;
useEffect(() => {
if (!htdfl.isInit) {
@@ -116,7 +113,10 @@ export default function Home() {
>
조회
-
@@ -149,6 +149,7 @@ export default function Home() {
diff --git a/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx b/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx
index 614a8f90e..934946b74 100644
--- a/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx
+++ b/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx
@@ -38,6 +38,7 @@ import { useTranslation } from "react-i18next";
export default function PublicReuseFaciltyInsert() {
const {
+ auth,
code,
pbnst,
pubHasuInit,
@@ -47,8 +48,10 @@ export default function PublicReuseFaciltyInsert() {
pubHasuSearch,
pbnstRuseBizUpdate,
} = useWrStore((state) => state);
+
const { t } = useTranslation("base");
const { pubFacHeadList, pbnstHasuResCount, pbnstHasuRes, pbnstRes } = pbnst;
+ const { regAuthrtYn, mdfcnAuthrtYn } = auth;
const [, setCurrentTab] = useState
("mng");
const [isRuseReg, setIsRuseReg] = useState<{
isModal: boolean;
@@ -290,6 +293,7 @@ export default function PublicReuseFaciltyInsert() {
}
isResetPage(true);
}}
+
>
조회
@@ -307,6 +311,7 @@ export default function PublicReuseFaciltyInsert() {
appendPbnstRuseFclt();
}
}}
+ disabled={regAuthrtYn === "N"}
>
신규등록
@@ -319,19 +324,17 @@ export default function PublicReuseFaciltyInsert() {
- {/* */}
- {" "}
- {/* 높이 조정 */}
-
+ {/* */} {/* 높이 조정 */}
+
{/* */}
@@ -351,6 +354,7 @@ export default function PublicReuseFaciltyInsert() {
size={"sm"}
onClick={form.handleSubmit(onSubmit, onInvalid)}
className="mr-5 mt-2"
+ disabled={mdfcnAuthrtYn === "N"}
>
저장
@@ -364,7 +368,7 @@ export default function PublicReuseFaciltyInsert() {
setIndexMng(index);
}}
indexMng={indexMng}
- readonly={false}
+ readonly={mdfcnAuthrtYn === "N"}
/>
@@ -376,9 +380,9 @@ export default function PublicReuseFaciltyInsert() {
}}
indexMng={indexMng}
indexBiz={indexBiz}
+ readonly={mdfcnAuthrtYn === "N"}
/>
-
) : (
diff --git a/apps/wr/app/ruseFcltMng/fcltReg/rainReg/page.tsx b/apps/wr/app/ruseFcltMng/fcltReg/rainReg/page.tsx
index bd0b9bb8e..e3daab9f9 100644
--- a/apps/wr/app/ruseFcltMng/fcltReg/rainReg/page.tsx
+++ b/apps/wr/app/ruseFcltMng/fcltReg/rainReg/page.tsx
@@ -1,8 +1,6 @@
"use client";
import { useWrStore } from "@/app/store";
-import {
- type customRainBdst,
-} from "@/app/store/ruseFcltMng/fcltReg/rainReg";
+import { type customRainBdst } from "@/app/store/ruseFcltMng/fcltReg/rainReg";
import { formatCommaNumber, tableData } from "@/components/lib/func/commom";
import RainRegForm from "@/components/ui/form/fcltReg/rainReg/rainRegForm";
import { BdstReg } from "@/components/ui/modal/fcltReg/bdstRegModal/bdstRegModal";
@@ -19,14 +17,19 @@ import {
import ListDiv from "@common/business_components/ui/list_div";
import { Button } from "@common/components";
import { useEffect, useState } from "react";
-import { Toaster } from "react-hot-toast";
+import { Toaster } from "react-hot-toast";
export default function Home() {
- const { rain, code, initRain, rainSearch, getRainData } = useWrStore(
+ const { auth, rain, code, initRain, rainSearch, getRainData } = useWrStore(
(state) => {
return state;
}
);
+
+ const { regAuthrtYn, mdfcnAuthrtYn } = auth;
+
+
+
const { rainRes, rainResCount } = rain;
const [rainForm, setRainForm] = useState
();
const [issNewReg, setIsNewReg] = useState(false);
@@ -53,7 +56,7 @@ export default function Home() {
return {
...item,
archArea: formatCommaNumber(archArea),
-
+ bdstChgYn: item.chgBuilding[0]?.bdstChgNm != null ? "Y" : "N",
};
}
);
@@ -64,13 +67,10 @@ export default function Home() {
}
}
}, [code, rainRes]);
- const cellClick: (val: number | undefined) => void = (
- val
- ) => {
+ const cellClick: (val: number | undefined) => void = (val) => {
if (val !== undefined) {
setRainForm(rainRes[val]);
}
-
};
useEffect(() => {
@@ -99,7 +99,7 @@ export default function Home() {
size={"sm"}
onClick={() => {
rainSearch(searchTxt || "", 1, "41");
- //rainSearch(searchTxt || "", pageNation, "41");
+ //rainSearch(searchTxt || "", pageNation, "41");
}}
>
조회
@@ -107,7 +107,10 @@ export default function Home() {
setIsNewReg(!issNewReg)}
+ onClick={() => {
+ setIsNewReg(!issNewReg);
+ }}
+ disabled={regAuthrtYn === "N"}
>
신규등록
@@ -143,6 +146,7 @@ export default function Home() {
diff --git a/apps/wr/app/ruseFcltMng/fcltReg/rswtReg/page.tsx b/apps/wr/app/ruseFcltMng/fcltReg/rswtReg/page.tsx
index b1d5cbb04..598ddfeca 100644
--- a/apps/wr/app/ruseFcltMng/fcltReg/rswtReg/page.tsx
+++ b/apps/wr/app/ruseFcltMng/fcltReg/rswtReg/page.tsx
@@ -20,9 +20,11 @@ import { useEffect, useState } from "react";
import { Toaster } from "react-hot-toast";
export default function Home() {
- const { code, rswt, initRswt, rswtBdstSearch, getRswtBdstData } = useWrStore(
+ const { auth,code, rswt, initRswt, rswtBdstSearch, getRswtBdstData } = useWrStore(
(state) => state
);
+ const { regAuthrtYn, mdfcnAuthrtYn } = auth;
+
const [rswtForm, setRswtForm] = useState();
const [searchTxt, setSearchTxt] = useState();
const [issNewReg, setIsNewReg] = useState(false);
@@ -114,6 +116,7 @@ export default function Home() {
size={"sm"}
className="mr-4"
onClick={() => setIsNewReg(!issNewReg)}
+ disabled={regAuthrtYn === "N"}
>
신규등록
@@ -146,6 +149,7 @@ export default function Home() {
diff --git a/apps/wr/app/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx b/apps/wr/app/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx
index 9793a5116..2daef0074 100644
--- a/apps/wr/app/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx
+++ b/apps/wr/app/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx
@@ -1,6 +1,11 @@
"use client";
import { useWrStore } from "@/app/store";
import { btnClass } from "@/app/store/common/code";
+import type { customPbnst } from "@/app/store/ruseFcltMng/fcltReg/pbnstReg/type";
+import type { WaterReuseFacility } from "@/app/store/ruseFcltMng/fcltSttn/pbnstSttn/type";
+import { excelDownload, yearOptions } from "@/components/lib/func/commom";
+import HeadChModal from "@/components/ui/modal/sttn/headChModal/headChModal";
+import { PbnstSttnModal } from "@/components/ui/modal/sttn/pbnstSttnModal/pbnstSttnModal";
import {
ContentsDiv,
SearchBaseForm,
@@ -12,14 +17,9 @@ import {
type ReturnType,
} from "@common/business_components/ui";
import ListDiv from "@common/business_components/ui/list_div";
-import { Button, Label } from "@common/components/ui";
-import HeadChModal from "@/components/ui/modal/sttn/headChModal/headChModal";
-import { useCallback, useEffect, useRef, useState } from "react";
import { HeadMakeColSpan } from "@common/business_components/ui/table/HeadMakeColSpan";
-import type { customPbnst } from "@/app/store/ruseFcltMng/fcltReg/pbnstReg/type";
-import { excelDownload, yearOptions } from "@/components/lib/func/commom";
-import type { WaterReuseFacility } from "@/app/store/ruseFcltMng/fcltSttn/pbnstSttn/type";
-import { PbnstSttnModal } from "@/components/ui/modal/sttn/pbnstSttnModal/pbnstSttnModal";
+import { Button, Label } from "@common/components/ui";
+import { useCallback, useEffect, useRef, useState } from "react";
export default function PbnstSttn() {
const {
@@ -29,6 +29,7 @@ export default function PbnstSttn() {
pbnSttnInit,
getPbnStnDetail,
getFlcts,
+ resetPbnstDetail
} = useWrStore((state) => state);
const { pbnstSttnRes, fclts, pbnstSttnResCount } = pbnstSttn;
@@ -103,9 +104,6 @@ export default function PbnstSttn() {
});
}, [pbnstSttn.pbnstDetail]);
- useEffect(() => {
- console.log("pbnDetaileData.isModal ", pbnDetaileData.isModal);
- }, [pbnDetaileData.isModal]);
return (
<>
@@ -233,8 +231,9 @@ export default function PbnstSttn() {
open={pbnDetaileData.isModal}
onOpenChange={(open) => {
//TODO:OPEN 상태 확인필요
- if(!open)
- setPbnDetaileData({ data: {} as customPbnst, isModal: open });
+ if (!open)
+ setPbnDetaileData({ data: {} as customPbnst, isModal: open });
+ resetPbnstDetail();
}}
/>
diff --git a/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx b/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx
index 03397255c..bf18d4d98 100644
--- a/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx
+++ b/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx
@@ -44,6 +44,7 @@ import { useTranslation } from "react-i18next";
export default function Page() {
const {
+ auth,
code,
rainChkgdn,
rswtChkgdn,
@@ -64,6 +65,7 @@ export default function Page() {
} = useWrStore((state) => {
return state;
});
+ const { regAuthrtYn, mdfcnAuthrtYn, delAuthrtYn } = auth;
const [isRegExcel, setIsRegExcel] = useState(false);
const [updateRainDetail, setUpdateRainDetail] = useState(
[]
@@ -301,6 +303,7 @@ export default function Page() {
onClick={() => {
clickDelete(deleteIdx, selFcltDiv);
}}
+ disabled={delAuthrtYn === 'N'}
>
삭제
@@ -313,6 +316,7 @@ export default function Page() {
onClick={() => {
chkUpdateTable(selFcltDiv);
}}
+ disabled={mdfcnAuthrtYn === 'N'}
>
저장
@@ -330,6 +334,7 @@ export default function Page() {
onClick={() => {
setIsRegExcel(!isRegExcel);
}}
+ disabled={regAuthrtYn === 'N'}
>
결과등록
@@ -354,6 +359,7 @@ export default function Page() {
pageNation={rainPageNation}
onPageChange={rainPageChange}
pageCount={rainChkgdn.rainChkCount}
+ readonly={mdfcnAuthrtYn === 'N'}
/>
) : (
)}
@@ -380,6 +387,7 @@ export default function Page() {
type={selFcltDiv}
obj={isModal.data}
setIsModal={(open) => setIsModal((prev) => ({ ...prev, open }))}
+ readonly={mdfcnAuthrtYn === 'N' ? false : true}
/>
}
>
diff --git a/apps/wr/app/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx b/apps/wr/app/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx
index 0572acce9..fbab00284 100644
--- a/apps/wr/app/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx
+++ b/apps/wr/app/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx
@@ -38,10 +38,11 @@ import { useTranslation } from "react-i18next";
import { headMakeprfmnc } from "../chkgdnReg/TableHead";
export default function PrfmncPrfmncReg() {
- const { prfmnc, prfmncHasuInit, prfmnRegData, prfmncHasuNmSearch } = useWrStore(
+ const { auth, prfmnc, prfmncHasuInit, prfmnRegData, prfmncHasuNmSearch } = useWrStore(
(state) => state
);
const { pbnstPrfmncHeadList, monthHeadList, prfmncRes, prfmncResCount } = prfmnc;
+ const { regAuthrtYn, mdfcnAuthrtYn } = auth;
const [bdstTable, setbdstTable] = useState();
const [searchTxt, setSearchTxt] = useState();
const [isExcelOpen, setIsExcelOPen] = useState<{
@@ -92,7 +93,7 @@ export default function PrfmncPrfmncReg() {
searchYear,
pbnstRuseFcltId
) as unknown as PrfType
- ,searchYear
+ , searchYear
);
};
@@ -124,6 +125,9 @@ export default function PrfmncPrfmncReg() {
};
if (prfmncRes[index]?.prfList) {
prfmncRes[index].prfList?.forEach((prfItem) => {
+ const yr = Number(prfItem.ym?.slice(0, 4)); // "YYYY"
+
+ if(yr === Number(searchYear)) {
const month = Number(prfItem?.ym?.slice(4)); // "MM"
const monthKey = `${month}월`;
@@ -154,7 +158,11 @@ export default function PrfmncPrfmncReg() {
outSubtotal.total += value;
}
});
+ }
});
+
+ if(inSubtotal.total!==0 && outSubtotal.total!==0) {
+
inUsageData.push(inSubtotal);
outUsageData.push(outSubtotal);
const usageTotalObj: { [key: string]: any } = {
@@ -173,18 +181,21 @@ export default function PrfmncPrfmncReg() {
const tableData = [...inUsageData, ...outUsageData, usageTotalObj];
setpbnstRuseFcltId(prfmncRes[index].pbnstRuseFcltId);
setInputData(tableData);
+ }else{
+ setInputData([]);
+ }
} else {
setInputData([]);
}
}
},
- [prfmncRes]
+ [prfmncRes,searchYear]
);
useEffect(() => {
if (!prfmnc.isInit) {
const year = new Date().getFullYear()
- prfmncHasuInit(1, "41", String(year));
+ prfmncHasuInit(1, '41', String(year));
}
}, [prfmnc.isInit, prfmncHasuInit]);
useEffect(() => {
@@ -259,6 +270,7 @@ export default function PrfmncPrfmncReg() {
onClick={() => {
onSave();
}}
+ disabled={mdfcnAuthrtYn === 'N'}
>
저장
@@ -272,6 +284,7 @@ export default function PrfmncPrfmncReg() {
setIsExcelOPen({ ...isExcelOpen, isModal: true });
}
}}
+ disabled={regAuthrtYn === 'N'}
>
파일등록
@@ -302,7 +315,7 @@ export default function PrfmncPrfmncReg() {
}}
onPageChange={
(page) => {
- prfmncHasuInit(page, "41", searchYear);
+ prfmncHasuInit(page, '41', searchYear);
setPageNation(page)
}}
/>
@@ -321,7 +334,7 @@ export default function PrfmncPrfmncReg() {
{headMakeprfmnc(monthHeadList, [])}
- {InputTableBody(inputData ?? [], monthHeadList, setInputData)}
+ {InputTableBody(inputData ?? [], monthHeadList, setInputData, mdfcnAuthrtYn === 'N' ? false : true)}
@@ -348,7 +361,7 @@ export default function PrfmncPrfmncReg() {
}
open={isExcelOpen.isModal}
onOpenChange={() => {
- setIsExcelOPen({ isModal: false, data: {} as FcPrfType });
+ setIsExcelOPen({ ...isExcelOpen, isModal: false });
}}
>
diff --git a/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx b/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx
index a2955f386..ba1821f20 100644
--- a/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx
+++ b/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx
@@ -99,7 +99,9 @@ export default function Page() {
isRainSttn(true)
rainChkSttnInit(1, rainPageSize, new Date().getFullYear().toString(), commonCd);
setIsModal({ data: {}, open: false });
+
}
+
}, [rainChkSttn.isInit, rainChkSttnInit, rainPageSize]);
useEffect(() => {
@@ -226,6 +228,7 @@ export default function Page() {
pageNation={rainPageNation}
onPageChange={rainPageChange}
pageCount={rainChkSttn.rainChkCount}
+ readonly={true}
/>
) : (
)}
@@ -247,7 +251,7 @@ export default function Page() {
setIsModal({ open: !open, data: {} });
}}
bodyClass={"w-[80vw] max-w-none"}
- body={ { }} />}
+ body={ { }} />}
>
diff --git a/apps/wr/app/store/common/auth/index.tsx b/apps/wr/app/store/common/auth/index.tsx
index 4e0b08d1b..21be6e01c 100644
--- a/apps/wr/app/store/common/auth/index.tsx
+++ b/apps/wr/app/store/common/auth/index.tsx
@@ -1,21 +1,6 @@
-import { getFetch, getFetchWithCount } from "@/components/lib/api";
+import { getFetchWithCount } from "@/components/lib/api";
import toast from "react-hot-toast";
-export const getMenuAuthrts = async (menuCd: number) => {
- const response = await getFetch(
- "LOCAL",
- `/cms-service/api/v1/menu-authrts/pageinfo/${menuCd}`
- );
-
- authStateExport.auth = {
- mngAuthrtYn: response[0].mngAuthrtYn,
- inqAuthrtYn: response[0].mngAuthrtYn,
- regAuthrtYn: response[0].mngAuthrtYn,
- mdfcnAuthrtYn: response[0].mngAuthrtYn,
- delAuthrtYn: response[0].mngAuthrtYn,
- };
-};
-
export type authState = {
auth: {
mngAuthrtYn: string;
diff --git a/apps/wr/app/store/matDmd/drgtSttn/index.tsx b/apps/wr/app/store/matDmd/drgtSttn/index.tsx
index fa1d3f894..f6257ebaf 100644
--- a/apps/wr/app/store/matDmd/drgtSttn/index.tsx
+++ b/apps/wr/app/store/matDmd/drgtSttn/index.tsx
@@ -98,9 +98,10 @@ export const drgtActionsExport: (set: any) => drgtActions = (
const year = today.getFullYear();
const month = String(today.getMonth() + 1).padStart(2, '0');
const formatted = `${year}${month}`;
- const fromDate = formatted;
- const toDate = formatted;
-
+ let fromDate = formatted;
+ let toDate = formatted;
+ fromDate='202506'
+ toDate='202506'
const drgtRes = await initFetch(fromDate, toDate, []);
set((state: drgtState) => {
return {
diff --git a/apps/wr/app/store/ruseFcltMng/fcltSttn/pbnstSttn/index.tsx b/apps/wr/app/store/ruseFcltMng/fcltSttn/pbnstSttn/index.tsx
index e94c7a002..3c59c9e3b 100644
--- a/apps/wr/app/store/ruseFcltMng/fcltSttn/pbnstSttn/index.tsx
+++ b/apps/wr/app/store/ruseFcltMng/fcltSttn/pbnstSttn/index.tsx
@@ -27,9 +27,9 @@ export type pbnstSttnState = {
ruseGuranteeHeadList: TableUpperProps[]
ruseDmdHeadList: TableUpperProps[]
ruseFcltHeadList: TableUpperProps[]
- pbnstSttnResCount:number;
+ pbnstSttnResCount: number;
excelList: [];
- fclts:string[]
+ fclts: string[]
isInit: boolean;
};
};
@@ -43,15 +43,15 @@ type pbnstSttnActions = {
reurnValue: ReturnType,
searchNm: string | undefined,
year: string,
- fclts:string[]
+ fclts: string[]
) => void;
- getFlcts:()=>void;
+ getFlcts: () => void;
pbnSttnInit: (
page: string,
total: string,
reurnValue: ReturnType,
year: string,
- flcts:string[]
+ flcts: string[]
) => void;
getPbnStnDetail: (pbnstRuseFcltId: string) => void;
pbnNmSearch: (
@@ -60,8 +60,9 @@ type pbnstSttnActions = {
reurnValue: ReturnType,
searchNm: string | undefined,
year: string,
- flcts:string[]
+ flcts: string[]
) => void;
+ resetPbnstDetail: () => void;
};
export type pbnstSttnType = pbnstSttnState & pbnstSttnActions;
@@ -77,11 +78,11 @@ export const pbnstSttnStateExport: pbnstSttnState = {
ruseDmdHeadList: ruseDmdHeadListExport,
ruseFcltHeadList: ruseFcltHeadListExport,
pbnstSttnRes: [],
- pbnstSttnResCount:1,
+ pbnstSttnResCount: 1,
pbnstDetail: {} as customPbnst,
pbnstSearchData: [],
excelList: [],
- fclts:[],
+ fclts: [],
isInit: false,
},
};
@@ -92,12 +93,12 @@ const hasuListFetch = async (
reurnValue: ReturnType,
searchNm: string | undefined,
year: string,
- flcts:string[]
+ flcts: string[]
) => {
let url = `/prcsFclt/ruseInfo/`;
if (reurnValue.partValue === "A") {
- url+=`${page}/${total}/${reurnValue.partValue}/${
+ url += `${page}/${total}/${reurnValue.partValue}/${
// reurnValue.sidoValue ? reurnValue.sidoValue : reurnValue.sigunValue
reurnValue.sigunValue !== '0' ? reurnValue.sigunValue : reurnValue.sidoValue
}/0/1/SW`
@@ -108,12 +109,12 @@ const hasuListFetch = async (
? reurnValue.unitWaterShedValue
: reurnValue.middleRegionValue
}/0/1/SW`
- } else if( reurnValue.partValue === 'G'){
+ } else if (reurnValue.partValue === 'G') {
url += `${page}/${total}/${reurnValue.envPartValue}/${reurnValue.sigunValue !== '0' ? reurnValue.sigunValue : reurnValue.sidoValue}/0/1/SW`
- }else{
+ } else {
url += `1/2/A/0/0/1/SW`
}
@@ -121,8 +122,7 @@ const hasuListFetch = async (
url += "/" + searchNm
}
- console.log(' flcts ' ,flcts)
- const pbnList = await postFectch(url, flcts,fetchType.COMMON);
+ const pbnList = await postFectch(url, flcts, fetchType.COMMON);
const getRuseList = await postFectch(
`/reuseFc/pubDetailList/${year}`,
flcts,
@@ -139,7 +139,7 @@ const hasuListFetch = async (
fclt.bscFctCd === item.pbnstRuseFcltId.substring(0, 11)
);
- if(findData){
+ if (findData) {
const usage = item.prfList.reduce(
(acc, cur) => {
@@ -161,48 +161,42 @@ const hasuListFetch = async (
cur.rvrKeepUswtr +
cur.indstUswtr;
acc.total = acc.inUsage + acc.outUsage;
-
+
return acc;
},
{ total: 0, inUsage: 0, outUsage: 0 }
);
- console.log('findData ', findData)
return {
- rvbsn: findData?.rvbsn ||'-',
- lgbsn: findData?.lgbsn||'-',
- mdmbsn: findData?.mdmbsn||'-',
- rgnNm: findData?.rgnNm||'-',
- sido: findData?.sido||'-',
- gugun: findData?.gugun||'-',
- bscFctNm: findData?.bscFctNm||'-',
- efflWqltStndrdNm: findData?.efflWqltStndrdNm||'-',
- fctCpc: Number(findData?.fctCpc)||0,
+ rvbsn: findData?.rvbsn || '-',
+ lgbsn: findData?.lgbsn || '-',
+ mdmbsn: findData?.mdmbsn || '-',
+ rgnNm: findData?.rgnNm || '-',
+ sido: findData?.sido || '-',
+ gugun: findData?.gugun || '-',
+ bscFctNm: findData?.bscFctNm || '-',
+ efflWqltStndrdNm: findData?.efflWqltStndrdNm || '-',
+ fctCpc: Number(findData?.fctCpc) || 0,
tel: findData?.tel ?? "-",
- ruseUtztnFcltNm: item?.ruseUtztnFcltNm||'-',
- fcltCpct: item?.fcltCpct||'-',
- splyExtraCpct: item?.splyExtraCpct||'-',
- ruseCpct: item?.ruseCpct||'-',
- pbnstRuseFcltId: item.pbnstRuseFcltId||'-',
+ ruseUtztnFcltNm: item?.ruseUtztnFcltNm || '-',
+ fcltCpct: item?.fcltCpct || '-',
+ splyExtraCpct: item?.splyExtraCpct || '-',
+ ruseCpct: item?.ruseCpct || '-',
+ pbnstRuseFcltId: item.pbnstRuseFcltId || '-',
usageTotal: usage?.total,
inUsage: usage?.inUsage,
outUsage: usage?.outUsage,
- operMthd: item.operList[0]?.operMthd||'-',
+ operMthd: item.operList[0]?.operMthd || '-',
rprtvBzenty: item.operList[0]?.rprtvBzenty,
bgngDt: moment(item.operList[0]?.bgngDt).format("YYYY-MM-DD") ?? "",
endDt: moment(item.operList[0]?.endDt).format("YYYY-MM-DD") ?? "",
- searchNm: findData?.bscFctNm||'-',
- searchPk: findData?.bscFctCd||'-',
+ searchNm: findData?.bscFctNm || '-',
+ searchPk: findData?.bscFctCd || '-',
prfList: item?.prfList ?? []
};
}
}
).filter(Boolean);
-
-
- console.log( ' checkWrRegListRes ', getRuseList.data)
- console.log( ' data ', data)
-
return data;
};
@@ -210,12 +204,12 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
set: any
) => {
return {
- getFlcts:async ()=>{
- const fclts= await getFetch(fetchType.WR,'/reuseFc/pubFc')
+ getFlcts: async () => {
+ const fclts = await getFetch(fetchType.WR, '/reuseFc/pubFc')
return set((state: pbnstSttnState) => ({
pbnstSttn: {
...state.pbnstSttn,
- fclts:fclts
+ fclts: fclts
},
}));
},
@@ -239,11 +233,11 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
reurnValue: ReturnType,
searchNm: string | undefined,
year: string,
- fclts:string[]
+ fclts: string[]
) => {
try {
-
-
+
+
const pbnstSttnRes = await hasuListFetch(
page,
total,
@@ -265,7 +259,7 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
},
};
});
- } else{
+ } else {
set((state: pbnstSttnState) => {
return {
@@ -273,8 +267,8 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
pbnstSttn: {
...state.pbnstSttn,
pbnstSttnRes: pbnstSttnRes,
- pbnstSttnResCount:pbnstSttnRes.length
- // isInit: false,
+ pbnstSttnResCount: pbnstSttnRes.length
+ // isInit: false,
},
};
});
@@ -283,31 +277,31 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
console.log("error", erTxt);
}
},
- pbnSttnInit: async(
+ pbnSttnInit: async (
page: string,
total: string,
reurnValue: ReturnType,
year: string,
- fclts:string[]
+ fclts: string[]
) => {
try {
const pbnstSttnRes = await hasuListFetch(
- page,
- total,
- reurnValue,
- undefined,
- year,
- fclts
- );
- console.log('pbnstSttnRes ' , pbnstSttnRes)
- set( (state: pbnstSttnState) => {
+ page,
+ total,
+ reurnValue,
+ undefined,
+ year,
+ fclts
+ );
+ set((state: pbnstSttnState) => {
return {
...state,
pbnstSttn: {
...state.pbnstSttn,
pbnstSttnRes: pbnstSttnRes,
- pbnstSttnResCount:pbnstSttnRes.length,
+ pbnstSttnResCount: pbnstSttnRes.length,
isInit: false,
+ pbnstDetail: {} as customPbnst
},
};
});
@@ -315,6 +309,17 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
console.log("error", erTxt);
}
},
+ resetPbnstDetail: async () => {
+ set((state: pbnstSttnState) => {
+ return {
+ ...state,
+ pbnstSttn: {
+ ...state.pbnstSttn,
+ pbnstDetail: {} as customPbnst
+ },
+ };
+ })
+ },
getPbnStnDetail: async (pbnstRuseFcltId: string) => {
try {
let pbnstDetail = await getFetch("wr", `/reuseFc/pubFc/${pbnstRuseFcltId}`);
@@ -340,7 +345,7 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
reurnValue: ReturnType,
searchNm: string | undefined,
year: string,
- flcts:string[]
+ flcts: string[]
) => {
try {
@@ -359,7 +364,7 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
pbnstSttn: {
...state.pbnstSttn,
pbnstSearchData: pbnstSttnRes,
- pbnstSttnResCount:pbnstSttnRes.length,
+ pbnstSttnResCount: pbnstSttnRes.length,
},
};
});
diff --git a/apps/wr/app/store/ruseFcltMng/fcltSttn/rainSttn/excel.tsx b/apps/wr/app/store/ruseFcltMng/fcltSttn/rainSttn/excel.tsx
index 3de4ee1a6..b57e0edde 100644
--- a/apps/wr/app/store/ruseFcltMng/fcltSttn/rainSttn/excel.tsx
+++ b/apps/wr/app/store/ruseFcltMng/fcltSttn/rainSttn/excel.tsx
@@ -1,6 +1,7 @@
import type { SelectDataType } from "@common/business_components/ui";
import type { customRainBdst } from "../../fcltReg/rainReg";
-
+import { bdstUsgCd } from "@/app/store/common/code/basicCode";
+//TODO: 공통코드시 삭제되니 수정 해야됨
export const excelRainSttnParsing = (
excel: { data: customRainBdst[] },
sidoCode: SelectDataType[],
@@ -9,14 +10,15 @@ export const excelRainSttnParsing = (
const excelExportData: string[][] = [];
excel.data.forEach((item) => {
+ console.log("item", item)
excelExportData.push([
sidoCode.find((sido) => sido.val === item.ctpvCd?.toString())?.text ?? "",
sggCode.find((sgg) => sgg.val === item.sggCd?.toString())?.text ?? "",
item.bdstNm ?? "",
item.daddr ?? "",
- String(item.bdstInfoSn ?? ""),
+ bdstUsgCd.find((cd) => cd.val === item.reuseBuilding?.[0]?.bdstUsgCd.toString())?.text ?? "", //건축물용도
String(item.frstArchPrmsnDt ?? ""),
- String(item.archArea ?? ""),
+ String(item.archArea.split('.')[0] === '-1' ? '확인불가' : item.archArea.split('.')[0]),
String(item.chgBuilding.length > 0 ? "Y" : "N"),
String(item.reuseBuilding?.[0]?.lawTrgtYn ?? ""),
String(item.reuseBuilding?.[0]?.instlCmptnDt ?? ""),
@@ -28,7 +30,7 @@ export const excelRainSttnParsing = (
String(item.reuseBuilding?.[0]?.rainyObj?.filtrTrtmfctPrs ?? ""),
String(item.reuseBuilding?.[0]?.rainyObj?.dtfcltCpct ?? ""),
String(item.reuseBuilding?.[0]?.instlCstSprtYn ?? ""),
- String(item.reuseBuilding?.[0]?.instlCstSprtAmt ?? ""),
+ String(item.reuseBuilding?.[0]?.instlCstSprtAmt === -1 ? "확인불가" : String(item.reuseBuilding?.[0]?.instlCstSprtAmt) ?? ""),
String(item.reuseBuilding?.[0]?.grntchBdstCertYn ?? ""),
String(item.reuseBuilding?.[0]?.grntchBdstCertYr ?? ""),
String(item.reuseBuilding?.[0]?.grntchBdstCertNo ?? ""),
diff --git a/apps/wr/app/store/store.tsx b/apps/wr/app/store/store.tsx
index 3ab1439ff..284f300c5 100644
--- a/apps/wr/app/store/store.tsx
+++ b/apps/wr/app/store/store.tsx
@@ -195,7 +195,7 @@ export const StoreZus = (
getMiddleRegionCd(set);
getUnitWaterShedCd(set);
getEnvPartCd(set);
- LoginApi.login({userId: "tuser10003", password: "test1234!"})
+ LoginApi.login({userId: "CLEANWATER", password: "gktneh12!@"})
return {
...initState,
...comFcltSearchAction(set),
diff --git a/apps/wr/components/lib/func/TableData.tsx b/apps/wr/components/lib/func/TableData.tsx
index 24e6349a9..192bc43c3 100644
--- a/apps/wr/components/lib/func/TableData.tsx
+++ b/apps/wr/components/lib/func/TableData.tsx
@@ -95,7 +95,8 @@ export const chRowspanTable = (
) => void,
toggleSelection: (pk: number, checked: boolean) => void,
selectedIds: number[],
- handleCellClick: (index: number, headId: string) => void
+ handleCellClick: (index: number, headId: string) => void,
+ disable? : boolean
) => {
let order = 0
// rowspan된 셀 렌더링 여부 추적용
@@ -138,6 +139,7 @@ export const chRowspanTable = (
onCheckedChange={(checked) =>
toggleSelection(row.chkgdnSn, checked === true)
}
+ disabled={disable}
>
) : key === "order" ? (
++order
@@ -339,7 +341,9 @@ export const InputTableBody = (
// className={`${head.id !== "utztnUsgCd" ? "text-right" : "text-center"} !text-xl h-10 w-full`}
className={`${textAlignClass} !text-xl h-10 w-full`}
onChange={(e) =>
- handleChange(dataIndex, head.id, e.target.value, setInputData)
+ handleCommaNumberChange(e, val =>
+ handleChange(dataIndex, head.id, String(val), setInputData)
+ )
}
value={formatCommaNumber(data[head.id as keyof any]) ?? ""}
maxLength={numSize}
diff --git a/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx b/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx
index 9184f702f..43f707619 100644
--- a/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx
+++ b/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx
@@ -31,10 +31,12 @@ export default function ConCostForm({
form,
type,
selectionVersion,
+ readonly = false,
}: {
form: UseFormReturn;
type: string;
selectionVersion: number;
+ readonly: boolean;
}) {
const {
constCostRes,
@@ -58,14 +60,11 @@ export default function ConCostForm({
}
}, [ref, getConstCostFee, getRateFee]);
-
useEffect(() => {
// 다른 행을 선택하면(selectionVersion 변경) 체크박스 상태를 초기화합니다.
setCheckFinish(false);
}, [selectionVersion]);
-
-
const zipDowonLoad = () => {
fetch(`/2024_constarctFeeProgram.zip`, {}).then(async (response) => {
const blobRet = await response.blob();
@@ -95,7 +94,7 @@ export default function ConCostForm({
return;
}
- const dmndQtyYear = dmndQtyWatch * 365;
+ const dmndQtyYear = dmndQtyWatch;
if (usgPrcsProcs && usgPrcsProcs?.length > 0) {
const firstProc =
getConstFctCode(usgPrcsProcs?.split("+")[0] || "") || "";
@@ -165,29 +164,32 @@ export default function ConCostForm({
cstrnCst: value.demandCst.cstrnCst || 0,
fcltSbsdCstrnCst: value.demandCst.fcltSbsdCstrnCst || 0,
prcsFcltCpctCstrnCst: value.demandCst.prcsFcltCpctCstrnCst || 0,
- flg: checkFinish?'Checked':'Sub',
+ flg: checkFinish ? "Checked" : "Sub",
rgtr: TEST_UUID,
};
if (checkFinish) {
toast((t) => (
-
- 검토완료 변경시 공사비는 변경할수 없습니다.
+
+ 검토완료 변경시 공사비는 변경할수 없습니다.
진행하시겠습니까?
- {
- toast.dismiss(t.id);
- coMatRvwUpdate("11000SW001R1", form.getValues("dmdInfoId"), data);
- }}
- >
- 확인
-
- toast.dismiss(t.id)}>취소
+ {
+ toast.dismiss(t.id);
+ coMatRvwUpdate(
+ "11000SW001R1",
+ form.getValues("dmdInfoId"),
+ data
+ );
+ }}
+ >
+ 확인
+
+ toast.dismiss(t.id)}>
+ 취소
+
));
@@ -229,6 +231,7 @@ export default function ConCostForm({
className="mr-3"
size={"sm"}
onClick={form.handleSubmit(onSubmit)}
+ disabled={readonly}
>
저장
@@ -236,9 +239,14 @@ export default function ConCostForm({
+ onCheckedChange={
+ (checked) => {
+ if (readonly) return;
+ setCheckFinish(checked === true);
+ }
+
// 'indeterminate' 상태를 무시하고 순수 boolean 값으로만 상태를 업데이트합니다.
- setCheckFinish(checked === true)}
+ }
>
{
- console.log('dmndQty ', e)
+ console.log("dmndQty ", e);
//field.onChange(Number(e.target.value) * 365 );
}}
- value={Number(field.value) * 365 || 0}
+ // value={Number(field.value) * 365 || 0}
+ value={Number(field.value) || 0}
readOnly
/>
@@ -377,7 +386,7 @@ export default function ConCostForm({
}
childrenBody={
<>
-
+
>
}
bodyClassName={"w-[40vw] h-full"}
@@ -414,8 +423,7 @@ export default function ConCostForm({
}
childrenBody={
<>
-
-
+
>
}
bodyClassName={"w-[22vw]"}
@@ -476,8 +484,7 @@ export default function ConCostForm({
type="number"
step="0.01"
onChange={(e) => {
- console.log('totalConstCost ', e)
-
+ console.log("totalConstCost ", e);
}}
value={field.value ?? 0}
readOnly
@@ -521,6 +528,9 @@ export default function ConCostForm({
type="number"
step="0.01"
onChange={(e) => {
+
+ if(readonly) return;
+
field.onChange(Number(e.target.value));
}}
value={field.value ?? 0}
diff --git a/apps/wr/components/ui/form/fcltReg/pbnstReg/buseReg/bugRegForm.tsx b/apps/wr/components/ui/form/fcltReg/pbnstReg/buseReg/bugRegForm.tsx
index 5c1edb471..2589422c8 100644
--- a/apps/wr/components/ui/form/fcltReg/pbnstReg/buseReg/bugRegForm.tsx
+++ b/apps/wr/components/ui/form/fcltReg/pbnstReg/buseReg/bugRegForm.tsx
@@ -44,6 +44,7 @@ export function PbnstBuseForm({
indexBiz = 0,
setIndexBiz,
form,
+ readonly = false,
}: {
formType: string;
firstBizData?: fcBizType[];
@@ -51,6 +52,7 @@ export function PbnstBuseForm({
indexMng: number;
indexBiz: number;
setIndexBiz: (index: number) => void;
+ readonly?: boolean;
}) {
const {
code,
@@ -329,6 +331,7 @@ export function PbnstBuseForm({
onClick={addRuseFcltObj}
type="button"
size={commonButonSize}
+ disabled={readonly}
>
추가
@@ -343,6 +346,7 @@ export function PbnstBuseForm({
sonClass="col-span-4"
indexMng={indexMng}
indexBiz={indexBiz}
+ readonly={readonly}
/>
재이용 원수취수 현황
@@ -394,6 +402,7 @@ export function PbnstBuseForm({
onClick={() => setIsFcOrgwts(true)}
size={commonButonSize}
className=""
+ disabled={readonly}
>
추가등록
@@ -412,6 +421,7 @@ export function PbnstBuseForm({
indexMng={indexMng}
formNm={"fcOrgwts"}
indexBiz={indexBiz}
+ readonly={readonly}
/>
재이용 공급관로 설치 현황
@@ -424,6 +434,7 @@ export function PbnstBuseForm({
className="w-32"
selectClass="w-full"
onSelectValue={(val) => setPpiYn(String(val))}
+ readOnly={readonly}
/>
추가등록
@@ -447,6 +459,7 @@ export function PbnstBuseForm({
size={commonButonSize}
className="!text-xl !bg-red-500 !text-white ml-1"
onClick={removeSelected}
+ disabled={readonly}
>
삭제
@@ -471,6 +484,7 @@ export function PbnstBuseForm({
form={form}
formNm={"pplInstls"}
upHeadList={[]}
+ readonly={readonly}
/>
@@ -494,7 +508,7 @@ export function PbnstBuseForm({
sonClass="col-span-4"
indexMng={indexMng}
indexBiz={indexBiz}
- readonly={false}
+ readonly={readonly}
/>