@@ -198,7 +198,7 @@ const NewWindowPopup: React.FC<NewWindowPopupProps> = ({
|
||||
pbnstSttn.pbnstSttnRes &&
|
||||
pbnstSttn.pbnstSttnRes[index]
|
||||
) {
|
||||
setFcltPk(pbnstSttn.pbnstSttnRes[index].pbnstRuseFcltPk);
|
||||
setFcltPk(pbnstSttn.pbnstSttnRes[index].pbnstRuseFcltId);
|
||||
onFeatureSelect(pbnstSttn.pbnstSttnRes[index]);
|
||||
onClose()
|
||||
}
|
||||
|
||||
@@ -261,7 +261,7 @@ export default function CoSttn() {
|
||||
</div>
|
||||
<UiModal
|
||||
bodyClass={
|
||||
"w-[40vw] max-w-none h-[80vh] " // +upadateData?.dmdInfoPk?'h-[60vh]':'h-[90vh]'
|
||||
"w-[40vw] max-w-none h-[80vh] " // +upadateData?.dmdInfoId?'h-[60vh]':'h-[90vh]'
|
||||
}
|
||||
open={isDmdModal.isMoal}
|
||||
onOpenChange={() => {
|
||||
@@ -281,7 +281,7 @@ export default function CoSttn() {
|
||||
? objSearch.sgg
|
||||
: objSearch.city;
|
||||
console.log("data ", data);
|
||||
if (upadateData?.dmdInfoPk) {
|
||||
if (upadateData?.dmdInfoId) {
|
||||
console.log("data ", data);
|
||||
await updateDemandCompany(data as DemandCompType);
|
||||
coSttnInit("1", "13", String(con));
|
||||
@@ -292,11 +292,11 @@ export default function CoSttn() {
|
||||
} else {
|
||||
const dmd = await getFetch(
|
||||
fetchType.WR,
|
||||
`/reuseFc/request/${data.dmdInfoPk}`
|
||||
`/reuseFc/request/${data.dmdInfoId}`
|
||||
);
|
||||
if (dmd) {
|
||||
toast.error(
|
||||
`사업자번호 ${dmd.dmdInfoPk}는 이미 등록되었습니다. 다시등록해주세요`
|
||||
`사업자번호 ${dmd.dmdInfoId}는 이미 등록되었습니다. 다시등록해주세요`
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -74,7 +74,7 @@ export default function Home() {
|
||||
}
|
||||
// if (headId === "bdstChgYn" && val !== undefined) {
|
||||
// if (
|
||||
// htdflRes[val]?.bdstInfoPk != null &&
|
||||
// htdflRes[val]?.bdstInfoSn != null &&
|
||||
// htdflRes[val]?.chgBuilding?.length > 0
|
||||
// ) {
|
||||
// bdstChgModal(htdflRes[val]?.chgBuilding as chgBuilding[]);
|
||||
|
||||
@@ -99,7 +99,7 @@ export default function PublicReuseFaciltyInsert() {
|
||||
|
||||
const pbnst = data.map((fclt) => {
|
||||
return {
|
||||
pbnstRuseFcltPk: fclt.pbnstRuseFcltPk,
|
||||
pbnstRuseFcltId: fclt.pbnstRuseFcltId,
|
||||
fcltCpct: fclt.fcltCpct,
|
||||
ruseCpct: fclt.ruseCpct,
|
||||
splyExtraCpct: fclt.splyExtraCpct,
|
||||
@@ -336,7 +336,7 @@ export default function PublicReuseFaciltyInsert() {
|
||||
</ListDiv>
|
||||
</div>
|
||||
<ListDiv className="col-span-2 pr-6 ">
|
||||
{formWatch && formWatch[0]?.pbnstRuseFcltPk ? (
|
||||
{formWatch && formWatch[0]?.pbnstRuseFcltId ? (
|
||||
<Tabs defaultValue="mng" onValueChange={handleTabChange}>
|
||||
<TabsList className="">
|
||||
<TabsTrigger className="!text-xl" value="mng">
|
||||
|
||||
@@ -4,8 +4,8 @@ export function createDefaultPbnstItem(row: pubHasuType, index: number) {
|
||||
const pk = row.bscFctCd + String(index + 1);
|
||||
|
||||
return JSON.parse(JSON.stringify({
|
||||
pbnstRuseFcltPk: pk,
|
||||
swtrmtFcltFk: "",
|
||||
pbnstRuseFcltId: pk,
|
||||
swtrmtFcltId: "",
|
||||
ruseUtztnFcltNm: "",
|
||||
fcltCpct: 0,
|
||||
ruseCpct: 0,
|
||||
@@ -21,9 +21,9 @@ export function createDefaultPbnstItem(row: pubHasuType, index: number) {
|
||||
}
|
||||
|
||||
|
||||
export function createDefaultOper(pbnstRuseFcltFk: string): operType {
|
||||
export function createDefaultOper(pbnstRuseFcltId: string): operType {
|
||||
return {
|
||||
pbnstRuseFcltFk,
|
||||
pbnstRuseFcltId,
|
||||
operMthd: "",
|
||||
rprtvBzenty: "",
|
||||
bgngDt: new Date(),
|
||||
@@ -36,11 +36,11 @@ export function createDefaultPbnstItem(row: pubHasuType, index: number) {
|
||||
|
||||
|
||||
export function createDefaultBiz(
|
||||
pbnstRuseFcltFk: string,
|
||||
pbnstRuseFcltId: string,
|
||||
cycl: number
|
||||
): fcBizType {
|
||||
return {
|
||||
pbnstRuseFcltFk,
|
||||
pbnstRuseFcltId,
|
||||
cycl,
|
||||
// 필요한 값 있으면 여기에 추가
|
||||
} as fcBizType;
|
||||
|
||||
@@ -60,8 +60,8 @@ export default function PbnstSttn() {
|
||||
const cellCLick = useCallback(
|
||||
(index: number | undefined) => {
|
||||
if (index !== undefined && pbnstSttnRes && pbnstSttnRes[index]) {
|
||||
const pbnstRuseFcltPk = pbnstSttnRes[index].pbnstRuseFcltPk;
|
||||
getPbnStnDetail(pbnstRuseFcltPk);
|
||||
const pbnstRuseFcltId = pbnstSttnRes[index].pbnstRuseFcltId;
|
||||
getPbnStnDetail(pbnstRuseFcltId);
|
||||
}
|
||||
},
|
||||
[getPbnStnDetail, pbnstSttnRes]
|
||||
@@ -96,7 +96,7 @@ export default function PbnstSttn() {
|
||||
}, [fclts]);
|
||||
|
||||
useEffect(() => {
|
||||
if (pbnstSttn.pbnstDetail.pbnstRuseFcltPk)
|
||||
if (pbnstSttn.pbnstDetail.pbnstRuseFcltId)
|
||||
setPbnDetaileData({
|
||||
isModal: true,
|
||||
data: pbnstSttn.pbnstDetail,
|
||||
|
||||
@@ -49,7 +49,7 @@ export default function PrfmncPrfmncReg() {
|
||||
data: FcPrfType;
|
||||
}>({ isModal: false, data: {} as FcPrfType });
|
||||
const [inputData, setInputData] = useState<any[]>();
|
||||
const [pbnstRuseFcltPk, setPbnstRuseFcltPk] = useState<string>();
|
||||
const [pbnstRuseFcltId, setpbnstRuseFcltId] = useState<string>();
|
||||
const [pageNation, setPageNation] = useState<number>(1);
|
||||
const [cellNum, setCellNum] = useState<number>(1);
|
||||
const [searchYear, setSearchYear] = useState<string>(
|
||||
@@ -67,22 +67,22 @@ export default function PrfmncPrfmncReg() {
|
||||
/*
|
||||
const onSave = useCallback(
|
||||
async() => {
|
||||
if (pbnstRuseFcltPk) {
|
||||
if (pbnstRuseFcltId) {
|
||||
await prfmnRegData(pageNation,'41',
|
||||
excelToPbnPrfData(
|
||||
inputData as unknown as JSON[],
|
||||
searchYear,
|
||||
pbnstRuseFcltPk
|
||||
pbnstRuseFcltId
|
||||
) as unknown as PrfType
|
||||
);
|
||||
// cellClick(cellNum)
|
||||
}
|
||||
}, [inputData, searchYear, pbnstRuseFcltPk, pageNation,cellNum]);*/
|
||||
}, [inputData, searchYear, pbnstRuseFcltId, pageNation,cellNum]);*/
|
||||
|
||||
const { t } = useTranslation('base');
|
||||
const onSave = useCallback(() => {
|
||||
const handleConfirm = async () => {
|
||||
if (!pbnstRuseFcltPk) return;
|
||||
if (!pbnstRuseFcltId) return;
|
||||
|
||||
prfmnRegData(
|
||||
pageNation,
|
||||
@@ -90,14 +90,14 @@ export default function PrfmncPrfmncReg() {
|
||||
excelToPbnPrfData(
|
||||
inputData as unknown as JSON[],
|
||||
searchYear,
|
||||
pbnstRuseFcltPk
|
||||
pbnstRuseFcltId
|
||||
) as unknown as PrfType
|
||||
,searchYear
|
||||
);
|
||||
};
|
||||
|
||||
confirmToast(t('isUpdateMsg'), handleConfirm);
|
||||
}, [inputData, searchYear, pbnstRuseFcltPk, pageNation, cellNum]);
|
||||
}, [inputData, searchYear, pbnstRuseFcltId, pageNation, cellNum]);
|
||||
|
||||
const cellClick = useCallback(
|
||||
(index: number | undefined) => {
|
||||
@@ -171,7 +171,7 @@ export default function PrfmncPrfmncReg() {
|
||||
(usageTotalObj as any)[key] = val;
|
||||
}
|
||||
const tableData = [...inUsageData, ...outUsageData, usageTotalObj];
|
||||
setPbnstRuseFcltPk(prfmncRes[index].pbnstRuseFcltPk);
|
||||
setpbnstRuseFcltId(prfmncRes[index].pbnstRuseFcltId);
|
||||
setInputData(tableData);
|
||||
} else {
|
||||
setInputData([]);
|
||||
|
||||
@@ -207,10 +207,10 @@ export default function PbnstPrfmncSttn() {
|
||||
rawData.forEach((item) => {
|
||||
// 실적 테이블 데이터
|
||||
if (chartId) {
|
||||
if (item.prfList?.[0]?.ym.slice(0, 4) === year && item.prfList?.[0]?.pbnstRuseFcltFk === chartId) {
|
||||
if (item.prfList?.[0]?.ym.slice(0, 4) === year && item.prfList?.[0]?.pbnstRuseFcltId === chartId) {
|
||||
prfTableData(item.prfList, year);
|
||||
}
|
||||
item.prfList.filter((e) => e.ym.slice(0, 4) === year && e.pbnstRuseFcltFk === chartId).forEach((element) => {
|
||||
item.prfList.filter((e) => e.ym.slice(0, 4) === year && e.pbnstRuseFcltId === chartId).forEach((element) => {
|
||||
// 누적
|
||||
wshwtr += element.wshwtr;
|
||||
coolUswtr += element.coolUswtr;
|
||||
@@ -498,7 +498,7 @@ export default function PbnstPrfmncSttn() {
|
||||
number: String(idx + 1)
|
||||
})
|
||||
}))
|
||||
if (prfmncRes?.[0]?.pbnstRuseFcltPk) setChartId(prfmncRes[0].pbnstRuseFcltPk)
|
||||
if (prfmncRes?.[0]?.pbnstRuseFcltId) setChartId(prfmncRes[0].pbnstRuseFcltId)
|
||||
}, [prfmncRes]);
|
||||
|
||||
|
||||
@@ -510,7 +510,7 @@ export default function PbnstPrfmncSttn() {
|
||||
|
||||
const cellClick = (index: number | undefined, headId: string) => {
|
||||
if (index !== undefined && headId !== undefined) {
|
||||
setChartId(prfmncRes[index].pbnstRuseFcltPk)
|
||||
setChartId(prfmncRes[index].pbnstRuseFcltId)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -15,8 +15,8 @@ export const comFcltStateExport: comFcltState = {
|
||||
demandCompList: [],
|
||||
checkDemand: {
|
||||
index: 0,
|
||||
dmdInfoPk: "",
|
||||
dmdInfoFk: "",
|
||||
dmdInfoId: "",
|
||||
dmdInfoId: "",
|
||||
bzmnNo: "",
|
||||
dmdCoNm: "",
|
||||
daddr: "",
|
||||
|
||||
@@ -2,7 +2,7 @@ import { z } from "zod";
|
||||
|
||||
const DemandInfoSchema = z.object({
|
||||
dmdInfoSn: z.number(),
|
||||
dmdInfoFk: z.string().nullish(),
|
||||
dmdInfoId: z.string().nullish(),
|
||||
dmndTmng: z.coerce.date().nullish(),
|
||||
dmndQty: z.number().nullish(),
|
||||
wntUntprc: z.number().nullish(),
|
||||
@@ -22,10 +22,10 @@ const DemandInfoSchema = z.object({
|
||||
});
|
||||
|
||||
const DemandMatchingSchema = z.object({
|
||||
dmdInfoFk: z.string().nullish(),
|
||||
splyFcltFk: z.string().nullish(),
|
||||
dmdInfoId: z.string().nullish(),
|
||||
pbnstRuseFcltId: z.string().nullish(),
|
||||
splyFcltFlg: z.string().nullish(),
|
||||
pbnstRuseFcltBizFk: z.number().nullish(),
|
||||
pbnstRuseFcltBizSn: z.number().nullish(),
|
||||
splyBgngDay: z.coerce.date().nullish(),
|
||||
splyEndDay: z.coerce.date().nullish(),
|
||||
splyCpct: z.number().nullish(),
|
||||
@@ -38,7 +38,7 @@ const DemandMatchingSchema = z.object({
|
||||
});
|
||||
|
||||
const DemandCoSchema = z.object({
|
||||
dmdInfoPk: z.string().nullish(),
|
||||
dmdInfoId: z.string().nullish(),
|
||||
dmdCoNm: z.string().nullish(),
|
||||
ctpvCd: z.string().nullish(),
|
||||
sggCd: z.string().nullish(),
|
||||
@@ -70,7 +70,7 @@ export const DmdCoReqSchema = z.object({
|
||||
cityText: z.string().nullish(),
|
||||
sggText: z.string().nullish(),
|
||||
dmdInfoSn: z.number().default(0),
|
||||
dmdInfoFk: z.string().default(''),
|
||||
dmdInfoId: z.string().default(''),
|
||||
dmndTmng: z.coerce.date().nullish(),
|
||||
dmndQty: z.number().nullish(), // null 또는 undefined 허용
|
||||
blgcOxygDmndQnt: z.number().nullish(),
|
||||
|
||||
@@ -9,7 +9,7 @@ export const excelCoSttnParsing = (data: any[],sidoCode:SelectDataType[] , sggCo
|
||||
sggCode.find((sgg) => sgg.val === item.sggCd.toString().trim() )?.text ?? "",
|
||||
item.dmdCoNm ?? "",
|
||||
item.daddr ?? "",
|
||||
String(item.dmdInfoPk ?? ""),
|
||||
String(item.dmdInfoId ?? ""),
|
||||
item.telno ?? "",
|
||||
moment(item.regDt).format("YYYY-MM-DD") ?? ""
|
||||
]);
|
||||
|
||||
@@ -35,7 +35,7 @@ export const coSttHeadListExport: z.infer<typeof sttnHeadListType> = [
|
||||
visible: true,
|
||||
},
|
||||
{
|
||||
id: "dmdInfoPk",
|
||||
id: "dmdInfoId",
|
||||
title: "사업자번호",
|
||||
visible: true,
|
||||
},
|
||||
@@ -85,7 +85,7 @@ export const coSttNodeListExport: CommonTableProps[] = [
|
||||
colSpan: 1,
|
||||
},
|
||||
{
|
||||
id: "dmdInfoPk",
|
||||
id: "dmdInfoId",
|
||||
title: "사업자번호",
|
||||
visible: true,
|
||||
row: 1,
|
||||
|
||||
@@ -12,7 +12,7 @@ export const useTypes = [
|
||||
];
|
||||
|
||||
export type Buildingtype = {
|
||||
bdstInfoPk: number;
|
||||
bdstInfoSn: number;
|
||||
ctpvCd: 1;
|
||||
sggCd: 1001;
|
||||
daddr: "string3";
|
||||
@@ -34,7 +34,7 @@ export const buildingToExcelType = (
|
||||
buildings.forEach((building) => {
|
||||
useTypes.forEach((useType) => {
|
||||
excelData.push([
|
||||
building.bdstInfoPk.toString(),
|
||||
building.bdstInfoSn.toString(),
|
||||
sidoCode.find((sido) => sido.val === building.ctpvCd.toString())
|
||||
?.text || "",
|
||||
sggCdoe.find((sido) => sido.val === building.sggCd.toString())
|
||||
@@ -108,7 +108,7 @@ export const excelToRainChkData = (excelData: any, year: string) => {
|
||||
});
|
||||
return {
|
||||
bdstNm:item["시설명"] ?? "",
|
||||
bdstRuseFcltFk: Number(item["NO"]),
|
||||
bdstRuseFcltSn: Number(item["NO"]),
|
||||
chckYmd: checkYmd,
|
||||
spwtPositn: item["유량측정방법"] ?? "",
|
||||
rgtr: TEST_UUID,
|
||||
|
||||
@@ -2,7 +2,7 @@ import type { TableUpperProps } from "@/app/store/common/type/header";
|
||||
import { z } from "zod";
|
||||
|
||||
export const chkgdRegExcel = z.object({
|
||||
bdstInfoPk: z.number().default(111111111),
|
||||
bdstInfoSn: z.number().default(111111111),
|
||||
chckYr: z
|
||||
.string()
|
||||
.default("")
|
||||
@@ -21,7 +21,7 @@ export const chkgdRegExcel = z.object({
|
||||
});
|
||||
|
||||
export const guideDetail = z.object({
|
||||
chkgdnFk: z.number().nullable(),
|
||||
chkgdnSn: z.number().nullable(),
|
||||
utztnUsgCd: z.string(),
|
||||
chckYmd: z.string(),
|
||||
ym: z.string(),
|
||||
@@ -30,8 +30,8 @@ export const guideDetail = z.object({
|
||||
flg: z.string(),
|
||||
});
|
||||
export const rainChkZod = z.object({
|
||||
chkgdnPk: z.number().nullable(),
|
||||
bdstRuseFcltFk: z.number(),
|
||||
chkgdnSn: z.number().nullable(),
|
||||
bdstRuseFcltSn: z.number(),
|
||||
chckYmd: z.string(),
|
||||
cityText:z.string().nullish(),
|
||||
sggText:z.string().nullish(),
|
||||
@@ -45,7 +45,7 @@ export const rainChkZod = z.object({
|
||||
guideDetails: z.array(guideDetail),
|
||||
building: z
|
||||
.object({
|
||||
bdstInfoPk: z.number(),
|
||||
bdstInfoSn: z.number(),
|
||||
ctpvCd: z.number(),
|
||||
sggCd: z.number(),
|
||||
daddr: z.string().nullable(),
|
||||
@@ -60,7 +60,7 @@ export const rainChkZod = z.object({
|
||||
.nullable(),
|
||||
rainyDetails: z.array(
|
||||
z.object({
|
||||
chkgdnFk: z.number().nullable(),
|
||||
chkgdnSn: z.number().nullable(),
|
||||
utztnUsgCd: z.string(),
|
||||
ph: z.number().nullable(),
|
||||
trbt: z.number().nullable(),
|
||||
|
||||
@@ -75,7 +75,7 @@ type rainChkgdnActions = {
|
||||
sggCode: SelectDataType[]
|
||||
): Promise<void>;
|
||||
rainChkExcelDataUPload(excelData: rainChkZodType[] ,year :string) : Promise<void>;
|
||||
rainChkDelete(chkgdnPks: number[] ,year :string): Promise<void>;
|
||||
rainChkDelete(chkgdnSns: number[] ,year :string): Promise<void>;
|
||||
rainChkHeadChange: (rainChkgdn: rainChkgdnState, isEdit: boolean) => void;
|
||||
rainChkNmSearch: (
|
||||
pageNo: number,
|
||||
@@ -316,9 +316,9 @@ export const rainChkgdnActionsExport: (set: any) => rainChkgdnActions = (
|
||||
toast.error("지도점검 수질 및 과태료 수정 오류입니다.");
|
||||
}
|
||||
},
|
||||
rainChkDelete: async (chkgdnPks: number[] ,year :string) => {
|
||||
rainChkDelete: async (chkgdnSns: number[] ,year :string) => {
|
||||
try {
|
||||
const res = await deleteFectch(`/reuseChk/rainy`, chkgdnPks);
|
||||
const res = await deleteFectch(`/reuseChk/rainy`, chkgdnSns);
|
||||
|
||||
if (res) {
|
||||
toast.success("삭제가 완료되었습니다. ");
|
||||
|
||||
@@ -16,7 +16,7 @@ export const rswtMakeExcelSample = (
|
||||
buildings.forEach((building) => {
|
||||
useTypes.forEach((useType) => {
|
||||
excelSite.guideDetail.push([
|
||||
building.bdstInfoPk.toString(),
|
||||
building.bdstInfoSn.toString(),
|
||||
sidoCode.find((sido) => sido.val === building.ctpvCd.toString())
|
||||
?.text || "",
|
||||
sggCdoe.find((sido) => sido.val === building.sggCd.toString())?.text ||
|
||||
@@ -62,7 +62,7 @@ export const rswtMakeExcelSample = (
|
||||
buildings.forEach((building) => {
|
||||
useTypes.forEach((useType) => {
|
||||
excelSite.polutions.push([
|
||||
building.bdstInfoPk.toString(),
|
||||
building.bdstInfoSn.toString(),
|
||||
sidoCode.find((sido) => sido.val === building.ctpvCd.toString())
|
||||
?.text || "",
|
||||
sggCdoe.find((sido) => sido.val === building.sggCd.toString())?.text ||
|
||||
@@ -146,7 +146,7 @@ export const excelToRswtGuideData = (excelData: any, year: string) => {
|
||||
});
|
||||
|
||||
return {
|
||||
bdstRuseFcltFk: Number(item["NO"]),
|
||||
bdstRuseFcltSn: Number(item["NO"]),
|
||||
operMngCd: item["운영관리형태"],
|
||||
anlOperCst: Number(item["연간운영비(원/년)"]) ?? 0,
|
||||
prcsCpct: item["처리용량(m³)"],
|
||||
@@ -209,7 +209,7 @@ export const excelToRswtPolution = (excelData: any) => {
|
||||
});
|
||||
|
||||
return {
|
||||
bdstRuseFcltFk: Number(item["NO"]),
|
||||
bdstRuseFcltSn: Number(item["NO"]),
|
||||
chckYmd: checkYmd,
|
||||
utztnUsgCd: item["이용용도"],
|
||||
operMngCd: item["운영관리형태"],
|
||||
|
||||
@@ -19,8 +19,8 @@ export type polutionType = {
|
||||
edit?:boolean
|
||||
};
|
||||
const reuseBuildingZod = z.object({
|
||||
bdstRuseFcltPk: z.number().nullish(),
|
||||
bdstInfoFk: z.number().nullish(),
|
||||
bdstRuseFcltSn: z.number().nullish(),
|
||||
bdstInfoSn: z.number().nullish(),
|
||||
instlCmptnDt: z.string().nullable(), // Assuming it's a date string or null
|
||||
instlCst: z.number(),
|
||||
operMngCd: z.string().nullable(),
|
||||
@@ -41,7 +41,7 @@ const reuseBuildingZod = z.object({
|
||||
});
|
||||
|
||||
const buildingZod = z.object({
|
||||
bdstInfoPk: z.number().nullable(),
|
||||
bdstInfoSn: z.number().nullable(),
|
||||
ctpvCd: z.number(),
|
||||
sggCd: z.number(),
|
||||
daddr: z.string().nullable(),
|
||||
@@ -75,7 +75,7 @@ export const rswtrPolutionsZode = z.object({
|
||||
|
||||
export const rswtrDetailsZod = z.object({
|
||||
chkgdnDtlPk: z.string().nullish(),
|
||||
chkgdnFk: z.string().nullish(),
|
||||
chkgdnSn: z.string().nullish(),
|
||||
utztnUsgCd: z.string(),
|
||||
vltnDt: z.string(),
|
||||
vltnMttr: z.string(),
|
||||
@@ -87,8 +87,8 @@ export const rswtrDetailsZod = z.object({
|
||||
})
|
||||
|
||||
export const rswtChkgdZod = z.object({
|
||||
chkgdnPk: z.number().nullish(),
|
||||
bdstRuseFcltFk: z.number().nullish(),
|
||||
chkgdnSn: z.number().nullish(),
|
||||
bdstRuseFcltSn: z.number().nullish(),
|
||||
chckYmd: z.string(),
|
||||
prcsCpct: z.number(),
|
||||
dtfcltCpct: z.number(),
|
||||
|
||||
@@ -78,9 +78,9 @@ type rswtChkgdnActions = {
|
||||
sggCode: SelectDataType[]
|
||||
): Promise<void>;
|
||||
rswtChkExceDataUpload: (excelData: rswtChkZodType[]) => void;
|
||||
rswtChkDelete: (chkgdnPks: number[] ,year:string) => void;
|
||||
rswtChkDelete: (chkgdnSns: number[] ,year:string) => void;
|
||||
rswtChkDetilsUpdate: (rswtChkDetails: rswtrChkDetailsZodType[] ,year:string) => void;
|
||||
rswtChkPolAndGuide: (chkGdnPk: number) => void;
|
||||
rswtChkPolAndGuide: (chkgdnSn: number) => void;
|
||||
rswtChkPolInit: () => void;
|
||||
rwstPolAndGuideUpdate: (rswtChk: rswtChkZodType[]) => void;
|
||||
rswtChkHeadChange: (rswtChkgdn: rswtChkgdnState, isEdit: boolean) => void;
|
||||
@@ -293,9 +293,9 @@ export const rswtChkgdnActionsExport: (set: any) => rswtChkgdnActions = (
|
||||
|
||||
}
|
||||
},
|
||||
rswtChkDelete: async (chkgdnPks: number[] ,year:string) => {
|
||||
rswtChkDelete: async (chkgdnSns: number[] ,year:string) => {
|
||||
try {
|
||||
const res = await deleteFectch(`/reuseChk/reuseWater`, chkgdnPks);
|
||||
const res = await deleteFectch(`/reuseChk/reuseWater`, chkgdnSns);
|
||||
|
||||
if (res) {
|
||||
toast.success("삭제가 완료되었습니다.")
|
||||
@@ -314,11 +314,11 @@ export const rswtChkgdnActionsExport: (set: any) => rswtChkgdnActions = (
|
||||
console.error(error);
|
||||
}
|
||||
},
|
||||
rswtChkPolAndGuide: async (chkGdnPk: number) => {
|
||||
rswtChkPolAndGuide: async (chkgdnSn: number) => {
|
||||
try {
|
||||
const rswtChkPolGuide = await getFetch(
|
||||
"wr",
|
||||
`/reuseChk/reuseWater/${chkGdnPk}`
|
||||
`/reuseChk/reuseWater/${chkgdnSn}`
|
||||
);
|
||||
|
||||
return set((state: rswtChkgdnState) => ({
|
||||
@@ -349,7 +349,7 @@ export const rswtChkgdnActionsExport: (set: any) => rswtChkgdnActions = (
|
||||
try {
|
||||
const chData = await makeMdfrChk(rswtChk);
|
||||
const res = await putFectch(
|
||||
`/reuseChk/reuseWater/${rswtChk[0]?.chkgdnPk}`,
|
||||
`/reuseChk/reuseWater/${rswtChk[0]?.chkgdnSn}`,
|
||||
chData[0]
|
||||
);
|
||||
if (res.ok) {
|
||||
|
||||
@@ -23,7 +23,7 @@ type NameMap = {
|
||||
};
|
||||
|
||||
|
||||
export const excelToPbnPrfData = (excelData: JSON[], year: string,pbnstRuseFcltFk:string) => {
|
||||
export const excelToPbnPrfData = (excelData: JSON[], year: string,pbnstRuseFcltId:string) => {
|
||||
// 월별 데이터 하나로 병합
|
||||
const merged = {} as any;
|
||||
excelData.forEach((item: any) => {
|
||||
@@ -46,7 +46,7 @@ export const excelToPbnPrfData = (excelData: JSON[], year: string,pbnstRuseFcltF
|
||||
|
||||
return({
|
||||
...(item as object),
|
||||
pbnstRuseFcltFk:pbnstRuseFcltFk,
|
||||
pbnstRuseFcltId:pbnstRuseFcltId,
|
||||
rgtr: TEST_UUID,
|
||||
mdfr: TEST_UUID,
|
||||
})
|
||||
|
||||
@@ -4,7 +4,7 @@ import type { TableUpperProps } from "../../common/type/header";
|
||||
export const pbnPrfRegExcelZod = z.object({
|
||||
ym: z.string().default(""),
|
||||
bscFctNm: z.string().default(""),
|
||||
pbnstRuseFcltFk: z.string(),
|
||||
pbnstRuseFcltId: z.string(),
|
||||
pbnstRuseFcltNm: z.string().default(""),
|
||||
file: z.instanceof(File).optional(),
|
||||
});
|
||||
@@ -14,7 +14,7 @@ export const pbnstPrfmncHeadListExport: TableUpperProps[] = [
|
||||
{ id: "gugun", title: "시군구" },
|
||||
{ id: "bscFctNm", title: "시설명" },
|
||||
{ id: "ruseUtztnFcltNm", title: "재이용시설명" },
|
||||
{ id: "pbnstRuseFcltPk", title: "재이용시설코드" },
|
||||
{ id: "pbnstRuseFcltId", title: "재이용시설코드" },
|
||||
];
|
||||
|
||||
export const monthHeadListExport: TableUpperProps[] = [
|
||||
|
||||
@@ -58,7 +58,7 @@ const hasuListFetch = async (page: number, sggOrCity: string , year:string,searc
|
||||
let findData = rainRes.data.map((item: pubHasuType) => {
|
||||
const data = checkWrRegListRes?.fcPrfList.find(
|
||||
(fclt: FcPrfType) =>
|
||||
fclt.pbnstRuseFcltPk.substring(0, 11) === item?.bscFctCd
|
||||
fclt.pbnstRuseFcltId.substring(0, 11) === item?.bscFctCd
|
||||
);
|
||||
if(data !==undefined){
|
||||
return( {
|
||||
@@ -68,7 +68,7 @@ const hasuListFetch = async (page: number, sggOrCity: string , year:string,searc
|
||||
bscFctNm: item.bscFctNm,
|
||||
bscFctCd: item.bscFctCd,
|
||||
ruseUtztnFcltNm: data.ruseUtztnFcltNm,
|
||||
pbnstRuseFcltPk: data.pbnstRuseFcltPk,
|
||||
pbnstRuseFcltId: data.pbnstRuseFcltId,
|
||||
prfList: data.prfList,
|
||||
});
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ export type PrfUsageSummary = {
|
||||
|
||||
|
||||
export const PrfSchema = z.object({
|
||||
pbnstRuseFcltFk: z.string(),
|
||||
pbnstRuseFcltId: z.string(),
|
||||
ym: z.string(), // 예: "202310"
|
||||
wshwtr: z.number(),
|
||||
coolUswtr: z.number(),
|
||||
@@ -40,7 +40,7 @@ export const PrfSchema = z.object({
|
||||
});
|
||||
|
||||
export const FcPrfSchema = z.object({
|
||||
pbnstRuseFcltPk: z.string(),
|
||||
pbnstRuseFcltId: z.string(),
|
||||
ruseUtztnFcltNm: z.string(),
|
||||
fcltCpct: z.number(),
|
||||
ruseCpct: z.number(),
|
||||
|
||||
@@ -54,14 +54,14 @@ const hasuListFetch = async (page: string, sggOrCity: string) => {
|
||||
const data = checkWrRegListRes.fcPrfList.map((item: FcPrfType) => {
|
||||
const findData = rainRes.data.find(
|
||||
(fclt: pubHasuType) =>
|
||||
fclt.bscFctCd === item.pbnstRuseFcltPk.substring(0, 11)
|
||||
fclt.bscFctCd === item.pbnstRuseFcltId.substring(0, 11)
|
||||
);
|
||||
return {
|
||||
sido: findData?.sido,
|
||||
gugun: findData?.gugun,
|
||||
bscFctNm: findData?.bscFctNm,
|
||||
ruseUtztnFcltNm: item.ruseUtztnFcltNm,
|
||||
pbnstRuseFcltPk: item.pbnstRuseFcltPk,
|
||||
pbnstRuseFcltId: item.pbnstRuseFcltId,
|
||||
};
|
||||
});
|
||||
return data;
|
||||
@@ -151,7 +151,7 @@ export const pbnstPrfmncSttnActionsExport: (set: any) => pbnstPrfmncSttnActions
|
||||
res.data.forEach((item : any) => {
|
||||
if (item.prfList.length === 0) {
|
||||
const year: string = ""; // 연도 정보가 없으면 빈 문자열, 필요시 item에서 추출.
|
||||
const yearVal: { [key: string]: any } = { year: year, pbnstRuseFcltPk: item.pbnstRuseFcltPk ?? "", ruseUtztnFcltNm : item.ruseUtztnFcltNm ?? "" };
|
||||
const yearVal: { [key: string]: any } = { year: year, pbnstRuseFcltId: item.pbnstRuseFcltId ?? "", ruseUtztnFcltNm : item.ruseUtztnFcltNm ?? "" };
|
||||
yearVal[`${year}inUsage`] = 0;
|
||||
yearVal[`${year}outUsage`] = 0;
|
||||
yearVal[`${year}total`] = 0;
|
||||
@@ -179,7 +179,7 @@ export const pbnstPrfmncSttnActionsExport: (set: any) => pbnstPrfmncSttnActions
|
||||
const yearData = yearsData.find(
|
||||
(yearItem) =>
|
||||
yearItem.year === year &&
|
||||
yearItem.pbnstRuseFcltPk == acc.pbnstRuseFcltFk
|
||||
yearItem.pbnstRuseFcltId == acc.pbnstRuseFcltId
|
||||
);
|
||||
|
||||
if (yearData) {
|
||||
@@ -187,7 +187,7 @@ export const pbnstPrfmncSttnActionsExport: (set: any) => pbnstPrfmncSttnActions
|
||||
yearData[`${year}outUsage`] += outUsageSum;
|
||||
yearData[`${year}total`] += (inUsageSum + outUsageSum);
|
||||
} else {
|
||||
const yearVal: { [key: string]: any } = { year: year, pbnstRuseFcltPk: acc.pbnstRuseFcltFk, ruseUtztnFcltNm : item.ruseUtztnFcltNm ?? "" };
|
||||
const yearVal: { [key: string]: any } = { year: year, pbnstRuseFcltId: acc.pbnstRuseFcltId, ruseUtztnFcltNm : item.ruseUtztnFcltNm ?? "" };
|
||||
yearVal[`${year}inUsage`] = inUsageSum;
|
||||
yearVal[`${year}outUsage`] = outUsageSum;
|
||||
yearVal[`${year}total`] = inUsageSum + outUsageSum;
|
||||
@@ -197,7 +197,7 @@ export const pbnstPrfmncSttnActionsExport: (set: any) => pbnstPrfmncSttnActions
|
||||
});
|
||||
const resData: any[] = []
|
||||
pbnstRes.forEach((acc) => {
|
||||
const data = yearsData.find((item) => item.pbnstRuseFcltPk.substring(0, 11) === acc.bscFctCd)
|
||||
const data = yearsData.find((item) => item.pbnstRuseFcltId.substring(0, 11) === acc.bscFctCd)
|
||||
if (data) {
|
||||
resData.push({ ...acc, ...data })
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ import { htdTableHeadList } from "./headList";
|
||||
|
||||
const hdtflObjSchema = z.object({
|
||||
htdflFcltPk: z.number().nullish(),
|
||||
bdstRuseFcltFk: z.number().nullish(),
|
||||
bdstRuseFcltSn: z.number().nullish(),
|
||||
etgtType: z
|
||||
.string()
|
||||
.min(1, { message: validationMessages.required("에너지원 종류") }),
|
||||
@@ -61,7 +61,7 @@ const hdtflObjSchema = z.object({
|
||||
});
|
||||
|
||||
export const hdtflZod = z.object({
|
||||
bdstInfoPk: z.number().nullish(),
|
||||
bdstInfoSn: z.number().nullish(),
|
||||
ctpvCd: z.number().default(0),
|
||||
sggCd: z.number().default(0),
|
||||
cityText: z.string().nullish(),
|
||||
|
||||
@@ -30,12 +30,12 @@ export type publicReuseFacilityType = {
|
||||
area?: string;
|
||||
reuse?: string;
|
||||
register?: string;
|
||||
swtrmtFcltFk: string;
|
||||
swtrmtFcltId: string;
|
||||
};
|
||||
|
||||
export type ruseFcltType = {
|
||||
swtrmtFcltFk: string;
|
||||
pbnstRuseFcltPk: string;
|
||||
swtrmtFcltId: string;
|
||||
pbnstRuseFcltId: string;
|
||||
fcltNm: string;
|
||||
fcltCpct: number;
|
||||
swtrmtCpct: number;
|
||||
@@ -44,7 +44,7 @@ export type ruseFcltType = {
|
||||
};
|
||||
|
||||
export type PbnstDemandComType = {
|
||||
dmdInfoPk: string | "";
|
||||
dmdInfoId: string | "";
|
||||
bzmnNo: string | "";
|
||||
dmdCoNm: string | "";
|
||||
daddr: string | "";
|
||||
@@ -56,7 +56,7 @@ export type PbnstDemandComType = {
|
||||
dmdAplyPswd: string | "";
|
||||
splyCpct: number | 0;
|
||||
splyFmYn: string | "Y";
|
||||
// dmdInfoFk:string|''
|
||||
// dmdInfoId:string|''
|
||||
};
|
||||
|
||||
export const pubHasuZod = z.object({
|
||||
@@ -85,7 +85,7 @@ const zNumNullish = zNum.nullish();
|
||||
const zNumDefaultZero = zNum.default(0).nullish();
|
||||
|
||||
const pplInstlSchema = z.object({
|
||||
ruseFcltBizFk: zNumNullish,
|
||||
pbnstRuseFcltBizSn: zNumNullish,
|
||||
choose: z.boolean().default(false),
|
||||
pdmt: z.string().default(""),
|
||||
ppMqlt: z.string().default(""),
|
||||
@@ -93,7 +93,7 @@ const pplInstlSchema = z.object({
|
||||
});
|
||||
|
||||
const fcFileSchema = z.object({
|
||||
ruseFcltFk: z.string().nullish(),
|
||||
pbnstRuseFcltId: z.string().nullish(),
|
||||
fileTkn: z.string(),
|
||||
filePath: z.string(),
|
||||
fileKnd: z.string(),
|
||||
@@ -104,8 +104,8 @@ const fcFileSchema = z.object({
|
||||
});
|
||||
|
||||
export const fcOperSchema = z.object({
|
||||
pbnstRuseFcltOperInfoPk: zNumNullish,
|
||||
pbnstRuseFcltFk: z.string().nullish(),
|
||||
pbnstRuseFcltOperInfoSn: zNumNullish,
|
||||
pbnstRuseFcltId: z.string().nullish(),
|
||||
operMthd: z.string(),
|
||||
rprtvBzenty: z.string(),
|
||||
bgngDt: zDateDefaultNow,
|
||||
@@ -118,8 +118,8 @@ export const fcOperSchema = z.object({
|
||||
});
|
||||
|
||||
const fcOrgwtSchema = z.object({
|
||||
pbnstRuseFcltBizFk: zNumNullish,
|
||||
swtrmtFcltFk: z.string().nullish(),
|
||||
pbnstRuseFcltBizSn: zNumNullish,
|
||||
swtrmtFcltId: z.string().nullish(),
|
||||
orgwtWtritQnt: zNum,
|
||||
tmsYn: z.enum(["Y", "N"]).default("N"),
|
||||
dschgFmYn: z.enum(["Y", "N"]).default("N"),
|
||||
@@ -133,7 +133,7 @@ const fcOrgwtSchema = z.object({
|
||||
});
|
||||
|
||||
const dmdColist = z.object({
|
||||
dmdInfoPk: z.string().default(""),
|
||||
dmdInfoId: z.string().default(""),
|
||||
dmdCoNm: z.string().default(""),
|
||||
daddr: z.string(),
|
||||
useUsgCd: z.string().nullish(),
|
||||
@@ -143,13 +143,13 @@ const dmdColist = z.object({
|
||||
splyFmYn: z.string().nullish(),
|
||||
rgtr: z.string().nullish(),
|
||||
mdfr: z.string().nullish(),
|
||||
pbnstRuseFcltBizPk: zNumDefaultZero,
|
||||
pbnstRuseFcltFk: z.string().nullish(),
|
||||
pbnstRuseFcltBizSn: zNumDefaultZero,
|
||||
pbnstRuseFcltId: z.string().nullish(),
|
||||
});
|
||||
|
||||
export const fcBizSchema = z.object({
|
||||
pbnstRuseFcltBizPk: zNumNullish,
|
||||
pbnstRuseFcltFk: z.string().nullish(),
|
||||
pbnstRuseFcltBizSn: zNumNullish,
|
||||
pbnstRuseFcltId: z.string().nullish(),
|
||||
cycl: zNum.default(1),
|
||||
seCd: z.string().max(10, "구분은 10자를 초과할 수 없습니다.").default(""),
|
||||
bizMthdCd: z.string().default(""),
|
||||
@@ -232,8 +232,8 @@ export const fcBizSchema = z.object({
|
||||
});
|
||||
|
||||
export const pbnstRegZod = z.object({
|
||||
pbnstRuseFcltPk: z.string().default(""),
|
||||
swtrmtFcltFk: z.string().default(""),
|
||||
pbnstRuseFcltId: z.string().default(""),
|
||||
swtrmtFcltId: z.string().default(""),
|
||||
ruseUtztnFcltNm: //z.string().default(''),
|
||||
z.preprocess(
|
||||
(v) => (v !== null && v !== undefined ? String(v).trim() : ""), // null/undefined → "", 공백 제거
|
||||
|
||||
@@ -27,7 +27,7 @@ const rainyObjSchema = z.object({
|
||||
})
|
||||
|
||||
export const rainZod = z.object({
|
||||
bdstInfoPk: z.number().optional(),
|
||||
bdstInfoSn: z.number().optional(),
|
||||
ctpvCd: z.number().optional(),
|
||||
sggCd: z.number().optional(),
|
||||
daddr: z.string().default(""),
|
||||
@@ -43,7 +43,7 @@ export const rainZod = z.object({
|
||||
})
|
||||
|
||||
export type chgBuilding={
|
||||
bdstInfoFk?: number|null,
|
||||
bdstInfoSn?: number|null,
|
||||
archChgPrmsnDt?: Date,
|
||||
archChgArea?: string,
|
||||
bdstChgNm?: string
|
||||
@@ -173,11 +173,11 @@ export const rainFacActionsExport: (set: any) => rainFacSActions = (
|
||||
if(res.status===200){
|
||||
if(data.chgBuilding.length > 0){
|
||||
|
||||
const chPK = res?.data?.bdstInfoPk
|
||||
const chPK = res?.data?.bdstInfoSn
|
||||
const makeCh= res.data.chgBuilding.map((item: chgBuilding) =>
|
||||
( {
|
||||
...item,
|
||||
bdstInfoFk: chPK,
|
||||
bdstInfoSn: chPK,
|
||||
})
|
||||
);
|
||||
const chch= await postFectch("/reuseFc/chgBuilding", makeCh);
|
||||
|
||||
@@ -8,8 +8,8 @@ export const validationMessages = {
|
||||
};
|
||||
|
||||
export const baseReuseBuildingSchema = z.object({
|
||||
bdstRuseFcltPk: z.number().nullish(),
|
||||
bdstInfoFk: z.number().nullish(),
|
||||
bdstRuseFcltSn: z.number().nullish(),
|
||||
bdstInfoSn: z.number().nullish(),
|
||||
instlCmptnDt: z.coerce.date().default(() => new Date()),
|
||||
instlCst: z
|
||||
.number()
|
||||
@@ -47,7 +47,7 @@ export const baseReuseBuildingSchema = z.object({
|
||||
});
|
||||
|
||||
export const chgBuildingSchema = z.object({
|
||||
bdstInfoFk: z.number().nullish(),
|
||||
bdstInfoSn: z.number().nullish(),
|
||||
archChgPrmsnDt: z.coerce.date({required_error: validationMessages.required("허가일")}),
|
||||
archChgArea: z.string().default("-"),
|
||||
bdstChgNm: z.string().min(1, { message: validationMessages.requiredSelect("구분") }),
|
||||
@@ -58,8 +58,8 @@ export const chgBuildingSchema = z.object({
|
||||
|
||||
|
||||
export const htdflReuseBuildingSchema = z.object({
|
||||
bdstRuseFcltPk: z.number().nullish(),
|
||||
bdstInfoFk: z.number().nullish(),
|
||||
bdstRuseFcltSn: z.number().nullish(),
|
||||
bdstInfoSn: z.number().nullish(),
|
||||
instlCmptnDt: z.coerce.date().default(() => new Date()),
|
||||
instlCst: z.number().nullish(),
|
||||
operMngCd: z.string().optional().nullish(),
|
||||
|
||||
@@ -8,7 +8,7 @@ import { makeMdfr, makeRstr } from "../bdstReg";
|
||||
import { baseReuseBuildingSchema, chgBuildingSchema, validationMessages } from "../rainReg/type";
|
||||
|
||||
const rswtrObjSchema = z.object({
|
||||
bdstRuseFcltFk: z.number().nullish(),
|
||||
bdstRuseFcltSn: z.number().nullish(),
|
||||
//wtrUsqty: z.number({ required_error: validationMessages.required("물사용량(m³)") }).positive({ message: validationMessages.required("물사용량(m³)") }),
|
||||
//oblgTrgtWtrUsqty: z.number().nullish().default(0),
|
||||
orgwtKndCd: z.string({ required_error: validationMessages.requiredSelect("원수 종류") }).min(1, { message: validationMessages.requiredSelect("원수 종류") }),
|
||||
@@ -29,7 +29,7 @@ import { baseReuseBuildingSchema, chgBuildingSchema, validationMessages } from "
|
||||
})
|
||||
|
||||
export const rswtZod = z.object({
|
||||
bdstInfoPk: z.number().nullish(),
|
||||
bdstInfoSn: z.number().nullish(),
|
||||
ctpvCd: z.number({ required_error: '시도를 선택하세요.' }),
|
||||
sggCd: z.number({ required_error: '시군구를 선택하세요.' }),
|
||||
daddr: z.string().default(""),
|
||||
@@ -184,11 +184,11 @@ export const rswtFacActionsExport: (set: any) => rswtFacSActions = (
|
||||
if (res.status===200) {
|
||||
if(data.chgBuilding.length>0 ){
|
||||
|
||||
const chPK = res?.data?.bdstInfoPk
|
||||
const chPK = res?.data?.bdstInfoSn
|
||||
const makeCh= res.data.chgBuilding.map((item: chgBuilding) =>
|
||||
( {
|
||||
...item,
|
||||
bdstInfoFk: chPK,
|
||||
bdstInfoSn: chPK,
|
||||
})
|
||||
);
|
||||
const chch= await postFectch("/reuseFc/chgBuilding", makeCh);
|
||||
|
||||
@@ -53,7 +53,7 @@ type pbnstSttnActions = {
|
||||
year: string,
|
||||
flcts:string[]
|
||||
) => void;
|
||||
getPbnStnDetail: (pbnstRuseFcltPk: string) => void;
|
||||
getPbnStnDetail: (pbnstRuseFcltId: string) => void;
|
||||
pbnNmSearch: (
|
||||
page: string,
|
||||
total: string,
|
||||
@@ -136,7 +136,7 @@ const hasuListFetch = async (
|
||||
(item: FcPrfType) => {
|
||||
const findData = pbnList.data.find(
|
||||
(fclt: pubHasuType) =>
|
||||
fclt.bscFctCd === item.pbnstRuseFcltPk.substring(0, 11)
|
||||
fclt.bscFctCd === item.pbnstRuseFcltId.substring(0, 11)
|
||||
);
|
||||
|
||||
if(findData){
|
||||
@@ -182,7 +182,7 @@ const hasuListFetch = async (
|
||||
fcltCpct: item?.fcltCpct||'-',
|
||||
splyExtraCpct: item?.splyExtraCpct||'-',
|
||||
ruseCpct: item?.ruseCpct||'-',
|
||||
pbnstRuseFcltPk: item.pbnstRuseFcltPk||'-',
|
||||
pbnstRuseFcltId: item.pbnstRuseFcltId||'-',
|
||||
usageTotal: usage?.total,
|
||||
inUsage: usage?.inUsage,
|
||||
outUsage: usage?.outUsage,
|
||||
@@ -315,11 +315,11 @@ export const pbnstSttnActionsExport: (set: any) => pbnstSttnActions = (
|
||||
console.log("error", erTxt);
|
||||
}
|
||||
},
|
||||
getPbnStnDetail: async (pbnstRuseFcltPk: string) => {
|
||||
getPbnStnDetail: async (pbnstRuseFcltId: string) => {
|
||||
try {
|
||||
let pbnstDetail = await getFetch("wr", `/reuseFc/pubFc/${pbnstRuseFcltPk}`);
|
||||
let pbnstDetail = await getFetch("wr", `/reuseFc/pubFc/${pbnstRuseFcltId}`);
|
||||
if (pbnstDetail.length >= 0) {
|
||||
pbnstDetail = pbnstDetail.find((item: customPbnst) => item.pbnstRuseFcltPk === pbnstRuseFcltPk)
|
||||
pbnstDetail = pbnstDetail.find((item: customPbnst) => item.pbnstRuseFcltId === pbnstRuseFcltId)
|
||||
}
|
||||
set((state: pbnstSttnState) => {
|
||||
return {
|
||||
|
||||
@@ -10,7 +10,7 @@ export type WaterReuseFacility = {
|
||||
lgbsn: string; // 대수계 (예: "한강본류")
|
||||
mdmbsn: string; // 중권역 (예: "한강서울")
|
||||
outUsage: number; // 유출량 (예: 900)
|
||||
pbnstRuseFcltPk: string; // 공공하수 재이용 시설 PK (예: "11000SW001R1")
|
||||
pbnstRuseFcltId: string; // 공공하수 재이용 시설 PK (예: "11000SW001R1")
|
||||
rgnNm: string; // 관할 기관명 (예: "한강유역환경청")
|
||||
ruseCpct: number; // 재이용 가능 용량 (예: 123)
|
||||
ruseUtztnFcltNm: string; // 재사용 활용 시설명 (예: "난지 재사용")
|
||||
|
||||
@@ -14,7 +14,7 @@ export const excelRainSttnParsing = (
|
||||
sggCode.find((sgg) => sgg.val === item.sggCd?.toString())?.text ?? "",
|
||||
item.bdstNm ?? "",
|
||||
item.daddr ?? "",
|
||||
String(item.bdstInfoPk ?? ""),
|
||||
String(item.bdstInfoSn ?? ""),
|
||||
String(item.frstArchPrmsnDt ?? ""),
|
||||
String(item.archArea ?? ""),
|
||||
String(item.chgBuilding.length > 0 ? "Y" : "N"),
|
||||
|
||||
@@ -5,11 +5,11 @@ import type { rswtChkZodType } from "@/app/store/prfmncReg/chkgdnReg/rswrtChkgdn
|
||||
import { Checkbox, Input, TableCell, TableRow } from "@common/components/ui";
|
||||
|
||||
export const rainChkTableData = (chkData: rainChkZodType[]) => {
|
||||
// 1. chkgdnFk + utztnUsgCd 기준 누계 정보 만들기
|
||||
// 1. chkgdnSn + utztnUsgCd 기준 누계 정보 만들기
|
||||
const maketotal = chkData.map((item: rainChkZodType) => {
|
||||
const selectTotal = item.guideDetails.reduce((acc: any, cur: any) => {
|
||||
const code = cur.utztnUsgCd;
|
||||
const fk = cur.chkgdnFk;
|
||||
const fk = cur.chkgdnSn;
|
||||
|
||||
const key = `${fk}_${code}`;
|
||||
acc[key] = acc[key] || {
|
||||
@@ -22,7 +22,7 @@ export const rainChkTableData = (chkData: rainChkZodType[]) => {
|
||||
|
||||
return acc;
|
||||
}, {});
|
||||
return selectTotal; // 모든 키: `${chkgdnFk}_${utztnUsgCd}` 형태
|
||||
return selectTotal; // 모든 키: `${chkgdnSn}_${utztnUsgCd}` 형태
|
||||
});
|
||||
|
||||
// 2. 누계 정보들을 하나의 객체로 합치기 (평탄화)
|
||||
@@ -33,7 +33,7 @@ export const rainChkTableData = (chkData: rainChkZodType[]) => {
|
||||
const updatedRainyDetails: any[] = [];
|
||||
chkData.forEach((rd: rainChkZodType) => {
|
||||
rd.rainyDetails.forEach((rainyItem: any) => {
|
||||
const key = `${rainyItem.chkgdnFk}_${rainyItem.utztnUsgCd}`;
|
||||
const key = `${rainyItem.chkgdnSn}_${rainyItem.utztnUsgCd}`;
|
||||
const totals = flatTotalMap[key] || {
|
||||
totalSplyUswtrUtztnQnt: 0,
|
||||
totalRuseFcltUtztnQnt: 0,
|
||||
@@ -53,7 +53,7 @@ export const rainChkTableData = (chkData: rainChkZodType[]) => {
|
||||
};
|
||||
|
||||
export const rswtChkTableData = (chkData: rswtChkZodType[]) => {
|
||||
// 1. chkgdnFk + utztnUsgCd 기준 누계 정보 만들기
|
||||
// 1. chkgdnSn + utztnUsgCd 기준 누계 정보 만들기
|
||||
const makeRswtData: any[] = [];
|
||||
|
||||
|
||||
@@ -133,9 +133,9 @@ export const chRowspanTable = (
|
||||
>
|
||||
{key === "checkBox" ? (
|
||||
<Checkbox
|
||||
checked={selectedIds.includes(row.chkgdnPk)}
|
||||
checked={selectedIds.includes(row.chkgdnSn)}
|
||||
onCheckedChange={(checked) =>
|
||||
toggleSelection(row.chkgdnPk, checked === true)
|
||||
toggleSelection(row.chkgdnSn, checked === true)
|
||||
}
|
||||
></Checkbox>
|
||||
) : key === "order" ? (
|
||||
@@ -162,7 +162,7 @@ export const chRowspanTable = (
|
||||
handleChange(rowIndex, head.id, e.target.value);
|
||||
}}
|
||||
value={value || ""}
|
||||
disabled={!selectedIds.includes(row.chkgdnPk)}
|
||||
disabled={!selectedIds.includes(row.chkgdnSn)}
|
||||
maxLength={numSize}
|
||||
//input type number일때 slice 처리
|
||||
onInput={(e: React.ChangeEvent<HTMLInputElement>) => {
|
||||
|
||||
@@ -180,7 +180,7 @@ export default function ConCostForm({
|
||||
|
||||
onClick={() => {
|
||||
toast.dismiss(t.id);
|
||||
coMatRvwUpdate("11000SW001R1", form.getValues("dmdInfoFk"), data);
|
||||
coMatRvwUpdate("11000SW001R1", form.getValues("dmdInfoId"), data);
|
||||
}}
|
||||
>
|
||||
확인
|
||||
@@ -192,7 +192,7 @@ export default function ConCostForm({
|
||||
</span>
|
||||
));
|
||||
} else {
|
||||
coMatRvwUpdate("11000SW001R1", form.getValues("dmdInfoFk"), data);
|
||||
coMatRvwUpdate("11000SW001R1", form.getValues("dmdInfoId"), data);
|
||||
}
|
||||
}
|
||||
} else if (type === "hist") {
|
||||
@@ -208,7 +208,7 @@ export default function ConCostForm({
|
||||
|
||||
useEffect(() => {
|
||||
form.register("dmdInfoSn");
|
||||
form.register("dmdInfoFk");
|
||||
form.register("dmdInfoId");
|
||||
form.register("ruseUtztnFcltNm");
|
||||
}, []);
|
||||
|
||||
|
||||
@@ -109,11 +109,11 @@ export function PbnstBuseForm({
|
||||
|
||||
useEffect(() => {
|
||||
if (fcOrgwts && fcOrgwts?.length > 0) {
|
||||
const swtrmtFcltFkList = fcOrgwts?.map((item) => item.swtrmtFcltFk);
|
||||
const swtrmtFcltIdList = fcOrgwts?.map((item) => item.swtrmtFcltId);
|
||||
|
||||
if (swtrmtFcltFkList.length > 0) {
|
||||
if (swtrmtFcltIdList.length > 0) {
|
||||
getFcOrgwts(
|
||||
swtrmtFcltFkList.filter((item): item is string => item != null),
|
||||
swtrmtFcltIdList.filter((item): item is string => item != null),
|
||||
fcOrgwts?.length
|
||||
);
|
||||
}
|
||||
@@ -124,7 +124,7 @@ export function PbnstBuseForm({
|
||||
if (fcOrgwtsNmList && fcOrgwtsNmList.length > 0) {
|
||||
fcOrgwts?.forEach((item, index) => {
|
||||
const orgwtNm = fcOrgwtsNmList.find(
|
||||
(orgwt) => orgwt.bscFctCd === item.swtrmtFcltFk
|
||||
(orgwt) => orgwt.bscFctCd === item.swtrmtFcltId
|
||||
)?.bscFctNm;
|
||||
|
||||
if (orgwtNm) {
|
||||
@@ -163,7 +163,7 @@ export function PbnstBuseForm({
|
||||
// 🧩 새로운 fcBizs 기본 객체 생성 (필수값만 채우고 나머지는 default로)
|
||||
const newItem = fcBizSchema.parse({
|
||||
cycl: pbnstBizCycle + 1,
|
||||
pbnstRuseFcltFk: formRuse.pbnstRuseFcltPk,
|
||||
pbnstRuseFcltId: formRuse.pbnstRuseFcltId,
|
||||
fcOrgwts: undefined,
|
||||
pplInstls: undefined,
|
||||
fcDemands: undefined,
|
||||
@@ -206,11 +206,11 @@ export function PbnstBuseForm({
|
||||
|
||||
const plusHist = () => {
|
||||
if (
|
||||
form.getValues(`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltBizPk`)
|
||||
form.getValues(`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltBizSn`)
|
||||
) {
|
||||
appendPpl({
|
||||
ruseFcltBizFk: form.getValues(
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltBizPk`
|
||||
pbnstRuseFcltBizSn: form.getValues(
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltBizSn`
|
||||
),
|
||||
choose: false,
|
||||
ppMqlt: "",
|
||||
@@ -236,14 +236,14 @@ export function PbnstBuseForm({
|
||||
splyEndDay: new Date(),
|
||||
splyCpct: 0,
|
||||
splyFmYn: "Y",
|
||||
pbnstRuseFcltBizPk: form.getValues(
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltBizPk`
|
||||
pbnstRuseFcltBizSn: form.getValues(
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltBizSn`
|
||||
),
|
||||
pbnstRuseFcltFk:
|
||||
pbnstRuseFcltId:
|
||||
form.getValues(
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltFk`
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.pbnstRuseFcltId`
|
||||
) ?? "",
|
||||
dmdInfoPk: "",
|
||||
dmdInfoId: "",
|
||||
//telno: "",
|
||||
});
|
||||
};
|
||||
@@ -549,8 +549,8 @@ export function PbnstBuseForm({
|
||||
valList.splyCpct
|
||||
);
|
||||
form.setValue(
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.fcDemands.${index}.dmdInfoPk`,
|
||||
valList.dmdInfoPk?.toString()
|
||||
`items.${indexMng}.fcBizs.${indexBiz}.fcDemands.${index}.dmdInfoId`,
|
||||
valList.dmdInfoId?.toString()
|
||||
);
|
||||
}
|
||||
}}
|
||||
@@ -558,7 +558,7 @@ export function PbnstBuseForm({
|
||||
return {
|
||||
...item,
|
||||
searchNm: item.dmdCoNm,
|
||||
searchPk: item.dmdInfoPk,
|
||||
searchPk: item.dmdInfoId,
|
||||
};
|
||||
})}
|
||||
></SearchInputText>
|
||||
|
||||
@@ -75,8 +75,8 @@ export function PbnstMngForm({
|
||||
const plusHist = () => {
|
||||
prepend({
|
||||
choose: false,
|
||||
pbnstRuseFcltFk:
|
||||
form.getValues(`items.${indexMng}.pbnstRuseFcltPk`) ?? "",
|
||||
pbnstRuseFcltId:
|
||||
form.getValues(`items.${indexMng}.pbnstRuseFcltId`) ?? "",
|
||||
rgtr: "",
|
||||
mdfr: "",
|
||||
operMthd: "",
|
||||
|
||||
@@ -100,11 +100,11 @@ export default function ChkgdExcel({ type,setIsRegExcel ,setYearChange }: { type
|
||||
const polutionData = excelToRswtPolution(res[1]);
|
||||
|
||||
const keyGenerator = (item: rswtChkZodType) =>
|
||||
`${item.bdstRuseFcltFk}|${item.chckYmd}|${item.utztnUsgCd}`;
|
||||
`${item.bdstRuseFcltSn}|${item.chckYmd}|${item.utztnUsgCd}`;
|
||||
const totalData: rswtChkZodType[] = guideData.map((guide) => {
|
||||
const fusion = polutionData.find(
|
||||
(polution) =>
|
||||
guide.bdstRuseFcltFk === polution.bdstRuseFcltFk &&
|
||||
guide.bdstRuseFcltSn === polution.bdstRuseFcltSn &&
|
||||
guide.chckYmd === polution.chckYmd &&
|
||||
guide.utztnUsgCd === polution.utztnUsgCd
|
||||
);
|
||||
|
||||
@@ -56,7 +56,7 @@ export default function PbnPrfExcelModal({
|
||||
};
|
||||
useEffect(() => {
|
||||
if (data && data.bscFctNm)
|
||||
form.setValue("pbnstRuseFcltFk", data.pbnstRuseFcltPk);
|
||||
form.setValue("pbnstRuseFcltId", data.pbnstRuseFcltId);
|
||||
form.setValue("bscFctNm", data.bscFctNm || "");
|
||||
form.setValue("pbnstRuseFcltNm", data.ruseUtztnFcltNm);
|
||||
}, [data]);
|
||||
@@ -77,7 +77,7 @@ export default function PbnPrfExcelModal({
|
||||
excelToPbnPrfData(
|
||||
res as unknown as JSON[],
|
||||
form.getValues("ym"),
|
||||
form.getValues("pbnstRuseFcltFk")
|
||||
form.getValues("pbnstRuseFcltId")
|
||||
) as PrfType[]
|
||||
);
|
||||
});
|
||||
|
||||
@@ -39,7 +39,7 @@ export default function FcOrgwtsRegModal({
|
||||
(rightData as pubHasuType[])?.map((item) => {
|
||||
return {
|
||||
...item,
|
||||
swtrmtFcltFk: item.bscFctCd, // 임시값, 실제 데이터에 맞게 수정
|
||||
swtrmtFcltId: item.bscFctCd, // 임시값, 실제 데이터에 맞게 수정
|
||||
orgwtWtritQnt: Number(item.fctCpc), // 임시값, 실제 데이터에 맞게 수정
|
||||
tmsYn: "N", // 임시값, 실제 데이터에 맞게 수정
|
||||
dschgFmYn: "N", // 임시값, 실제 데이터에 맞게 수정
|
||||
@@ -91,7 +91,7 @@ export default function FcOrgwtsRegModal({
|
||||
addr: item.dtlPstnExpln,
|
||||
orgwtWtritQnt: String(item.orgwtWtritQnt),
|
||||
fctCpc: String(item.orgwtWtritQnt),
|
||||
swtrmtFcltFk: item.swtrmtFcltFk,
|
||||
swtrmtFcltId: item.swtrmtFcltId,
|
||||
})));
|
||||
rightRef.current = initTableData.map(item => ({ ...item }));
|
||||
}
|
||||
|
||||
@@ -227,7 +227,7 @@ export function PbnstSttnModal({ data, titleVisible }: { data: customPbnst; titl
|
||||
useEffect(() => {
|
||||
if (pbnstSttn.pbnstSttnRes && data) {
|
||||
const prfList = pbnstSttn.pbnstSttnRes.find(
|
||||
(item) => item.pbnstRuseFcltPk === data.pbnstRuseFcltPk
|
||||
(item) => item.pbnstRuseFcltId === data.pbnstRuseFcltId
|
||||
)?.prfList;
|
||||
|
||||
if (prfList) {
|
||||
|
||||
@@ -30,10 +30,10 @@ export default function SttnDetailModal({
|
||||
|
||||
useEffect(() => {
|
||||
if (type === "RNB" && formObj?.reuseBuilding[0]) {
|
||||
rainSttnChkSearch(formObj.reuseBuilding[0].bdstRuseFcltPk);
|
||||
rainSttnChkSearch(formObj.reuseBuilding[0].bdstRuseFcltSn);
|
||||
|
||||
} else if (type === "RST") {
|
||||
// rswtChkPolAndGuide(formObj.reuseBuilding[0].bdstRuseFcltPk)
|
||||
// rswtChkPolAndGuide(formObj.reuseBuilding[0].bdstRuseFcltSn)
|
||||
}
|
||||
}, [type, formObj]);
|
||||
|
||||
@@ -41,7 +41,7 @@ export default function SttnDetailModal({
|
||||
if (
|
||||
type === "RNB" &&
|
||||
formObj?.reuseBuilding[0] &&
|
||||
rainSttn.rainChkRes?.bdstRuseFcltFk
|
||||
rainSttn.rainChkRes?.bdstRuseFcltSn
|
||||
) {
|
||||
const tableTotalData = rainChkTableData([rainSttn.rainChkRes]);
|
||||
const data = tableTotalData.map((item) => {
|
||||
|
||||
@@ -97,7 +97,7 @@ export default function RainChkgdTable({
|
||||
|
||||
//현황 페이지에서 필요한 엑셀 데이터를 바뀔때마다 넣기 위해서
|
||||
getRainSttnExcel(makeTableData);
|
||||
const selectedData = makeTableData.filter((item) => selectedIds.includes(item.chkgdnPk));
|
||||
const selectedData = makeTableData.filter((item) => selectedIds.includes(item.chkgdnSn));
|
||||
|
||||
if (selectedData.length > 0) {
|
||||
const updateTableData = rainChkgdn.rainChk
|
||||
@@ -108,7 +108,7 @@ export default function RainChkgdTable({
|
||||
// 변경 데이터는 평탄화한 데이터 즉 루트에 변경되어 있음 이용용도까지 잇음 그걸로 찾기
|
||||
const findRain = selectedData.find(
|
||||
(sd) =>
|
||||
rd.chkgdnFk === sd.chkgdnPk && rd.utztnUsgCd === sd.utztnUsgCd
|
||||
rd.chkgdnSn === sd.chkgdnSn && rd.utztnUsgCd === sd.utztnUsgCd
|
||||
);
|
||||
|
||||
if (findRain != undefined) {
|
||||
|
||||
@@ -65,7 +65,7 @@ export default function RswtChkgdTable({
|
||||
const handleCellClick = useCallback(
|
||||
(index: number, headId: string) => {
|
||||
if (headId === "splyUswtrUtztnQnt" || headId === "ruseFcltUtztnQnt") {
|
||||
rswtChkPolAndGuide(makeTableData[index].chkgdnPk);
|
||||
rswtChkPolAndGuide(makeTableData[index].chkgdnSn);
|
||||
}
|
||||
},
|
||||
[makeTableData, handleRswtClick]
|
||||
@@ -80,14 +80,14 @@ export default function RswtChkgdTable({
|
||||
const selectedData = makeTableData
|
||||
.map((item) => {
|
||||
return {
|
||||
chkgdnFk: item.chkgdnFk,
|
||||
chkgdnSn: item.chkgdnSn,
|
||||
utztnUsgCd: item.utztnUsgCd,
|
||||
vltnDt: item.vltnDt,
|
||||
vltnMttr: item.vltnMttr,
|
||||
levyAmt: Number(item.levyAmt),
|
||||
};
|
||||
})
|
||||
.filter((item) => selectedIds.includes(item.chkgdnFk));
|
||||
.filter((item) => selectedIds.includes(item.chkgdnSn));
|
||||
|
||||
if (selectedData) setUpRswttDetail(selectedData);
|
||||
}, [makeTableData, selectedIds]);
|
||||
|
||||
Reference in New Issue
Block a user