diff --git a/apps/fo/app/pages/(with-layout)/processArea/page.tsx b/apps/fo/app/pages/(with-layout)/processArea/page.tsx index fc571c665..b9519a4e6 100644 --- a/apps/fo/app/pages/(with-layout)/processArea/page.tsx +++ b/apps/fo/app/pages/(with-layout)/processArea/page.tsx @@ -70,12 +70,10 @@ export default function ProcessArea() { unitWaterShedValue: '', middleRegionValue: '', envPartValue: '', - sidoText: '', - sigunText: '' }); - const searchProcessArea = useCallback(({ sidoText, sigunText}: ReturnType, pageNo: number, pageCnt:number=20) => { - searchProcessAreaList(pageNo, pageCnt, sidoText, sigunText, searchYearValue); + const searchProcessArea = useCallback(({ sidoValue, sigunValue, sidoText, sggText}: ReturnType, pageNo: number, pageCnt:number=20) => { + searchProcessAreaList(pageNo, pageCnt, sidoValue, sigunValue, searchYearValue); }, [searchProcessAreaList, searchYearValue]); // 조회 diff --git a/apps/fo/app/store/processArea/index.tsx b/apps/fo/app/store/processArea/index.tsx index 37b4d52f0..54b8258f7 100644 --- a/apps/fo/app/store/processArea/index.tsx +++ b/apps/fo/app/store/processArea/index.tsx @@ -2,6 +2,7 @@ import { postFetch } from "@/app/components/api"; import DataForm from "@/app/components/common/DataForm"; import { fetchPlanInfo } from "../common"; import type { TableUpperProps } from "../dashboard"; +import { fetchFacilityListArea } from "../processFacility"; export type { TableUpperProps }; /**==================================== * Store - 타입 @@ -261,16 +262,7 @@ const fetchProcessAreaList = async (pageNo : number, pageSize : number, ctpvNm : head.title = '기승인\n4단계'; } }); - const res = await fetchFacilityDetailInfo(item.swtrmtFcltCd); - const detailInfo = res.data.filter((item:ProcessAreaProps) => item.ruse === true); - return { - ...item, - sido: detailInfo.length > 0 ? detailInfo[0].sido||'' : '', - sigungo: detailInfo.length > 0 ? detailInfo[0].gugun||'' : '', - location: detailInfo.length > 0 ? detailInfo[0].addr||'' : '', - fctCpc: detailInfo.length > 0 ? detailInfo[0].fctCpc||'' : 0, - trtDstr: detailInfo.length > 0 ? detailInfo[0].trtDstr||'' : '', - }; + return item; }) ); const startIndex = (pageNo - 1) * pageSize; @@ -365,7 +357,7 @@ export const processAreaReducer:(set:SetStateFunction)=>ProcessAreaActions=(set: * @param pageNo : 페이지 번호 * @param pageSize : 페이지 크기 */ - searchProcessAreaList: async ( pageNo:number, pageSize:number, ctpvNm?:string, sggNm?:string, targetYear?:string) => { + searchProcessAreaList: async ( pageNo:number, pageSize:number, sidoValue?:string, sggValue?:string, ctpvNm?:string, sggNm?:string, targetYear?:string) => { set((state: ProcessAreaType) => ({ ...state, ProcessArea: { @@ -373,7 +365,55 @@ export const processAreaReducer:(set:SetStateFunction)=>ProcessAreaActions=(set: isLoading: true, }, })); - const res = await fetchProcessAreaList(pageNo, pageSize, ctpvNm, sggNm, targetYear, set); + //const res = await fetchProcessAreaList(pageNo, pageSize, ctpvNm, sggNm, targetYear, set); + const res = await fetchFacilityListArea(pageNo, pageSize, sidoValue, sggValue, targetYear); + set((state: ProcessAreaType) => ({ + ...state, + ProcessArea: { + ...state.ProcessArea, + processAreaList: res.data, + processAreaCount: res.count, + isInit: true, + }, + })); + + const fcltyList = res.data; + + for(let i=0; i 0){ + // 증설계획 + fcltyList[i].planSwageQntSumDt4 = fcltyRes[0].planSwageQntSumDt4; + fcltyList[i].planSwageQntSum = fcltyRes[0].planSwageQntSum; + fcltyList[i].planSwageQntSumDc1 = fcltyRes[0].planSwageQntSumDc1; + fcltyList[i].planSwageQntSumDc2 = fcltyRes[0].planSwageQntSumDc2; + fcltyList[i].planSwageQntSumDc3 = fcltyRes[0].planSwageQntSumDc3; + fcltyList[i].planSwageQntSumDc4 = fcltyRes[0].planSwageQntSumDc4; + // 처리인구 + fcltyList[i].swtrmtPpltnCntDt4 = fcltyRes[0].swtrmtPpltnCntDt4; + fcltyList[i].swtrmtPpltnCnt = fcltyRes[0].swtrmtPpltnCnt; + fcltyList[i].swtrmtPpltnCntDc1 = fcltyRes[0].swtrmtPpltnCntDc1; + fcltyList[i].swtrmtPpltnCntDc2 = fcltyRes[0].swtrmtPpltnCntDc2; + fcltyList[i].swtrmtPpltnCntDc3 = fcltyRes[0].swtrmtPpltnCntDc3; + fcltyList[i].swtrmtPpltnCntDc4 = fcltyRes[0].swtrmtPpltnCntDc4; + // 처리구역면적 + fcltyList[i].swtrmtZoneAreaDt4 = fcltyRes[0].swtrmtZoneAreaDt4; + fcltyList[i].swtrmtZoneArea = fcltyRes[0].swtrmtZoneArea; + fcltyList[i].swtrmtZoneAreaDc1 = fcltyRes[0].swtrmtZoneAreaDc1; + fcltyList[i].swtrmtZoneAreaDc2 = fcltyRes[0].swtrmtZoneAreaDc2; + fcltyList[i].swtrmtZoneAreaDc3 = fcltyRes[0].swtrmtZoneAreaDc3; + fcltyList[i].swtrmtZoneAreaDc4 = fcltyRes[0].swtrmtZoneAreaDc4; + // 계획연도 + fcltyList[i].planYrDt4 = fcltyRes[0].planYrDt4; + fcltyList[i].planYr = fcltyRes[0].planYr; + fcltyList[i].planYrDc1 = fcltyRes[0].planYrDc1; + fcltyList[i].planYrDc2 = fcltyRes[0].planYrDc2; + fcltyList[i].planYrDc3 = fcltyRes[0].planYrDc3; + fcltyList[i].planYrDc4 = fcltyRes[0].planYrDc4; + } + } + res.data.forEach((item:ProcessAreaProps) => { DataForm({ type: 'float1', column: 'fctCpc', item:item as unknown as Record}); }) diff --git a/apps/fo/app/store/processFacility/index.tsx b/apps/fo/app/store/processFacility/index.tsx index 5cdab43b6..216fad59a 100644 --- a/apps/fo/app/store/processFacility/index.tsx +++ b/apps/fo/app/store/processFacility/index.tsx @@ -431,6 +431,29 @@ export const fetchFacilityListInit = async (pageNo:number, pageSize:number, part } }; +// 시설정보 리스트 데이터 호출(구분 선택 후 시설명 있을 경우) 처리구역용. pageNo, pageSize, ctpvNm, sggNm, targetYear, +export const fetchFacilityListArea = async (pageNo:number, pageSize:number, ctpvNm?:string, sggNm?:string, targetYear?:string ): Promise<{data:any[], count:number}> => { + try { + console.log(pageNo, pageSize ,ctpvNm, sggNm, targetYear) + const tailStr = "/A"+ (ctpvNm?"/"+ctpvNm:"/0") + (sggNm?"/"+sggNm:"/0") + "/0/0" ; + console.log(tailStr); + const url = '/prcsFclt/info/'+pageNo+'/'+pageSize+tailStr; + const res = await getFetch('fo', url); + res.data.forEach((item: Record) => { + item.daddr = item.addr ? item.addr : ''; + item.sidoNm = item.sido ? item.sido : ''; + item.sigungo = item.gugun ? item.gugun : ''; + item.swtrmtFcltNm = item.bscFctNm ? item.bscFctNm : ''; + item.location = item.daddr ? item.daddr : ''; + item.trtDstr = item.trtDstr ? item.trtDstr : ''; + }); + + return res; + } catch (error) { + console.error('시설정보 데이터를 가져오는데 실패했습니다:', error); + return {data: [], count: 0}; + } +}; const fetchFacilityList = async (pageNo:number, pageSize:number, partValue?:string, nameCd?:string, fcltCpct?:string, oprtngSttsCd?:string, facilityPartValue?:string, facilityName?:string ): Promise<{data:facilityListProps[], count:number}> => { try {