feat: 하수도 통계 입력에 '해당사항 없음' 버튼 추가

- 04. 하수저류시설 및 빗물펌프장
- 05. 펌프장
- 06. 공공하수처리시설 (운영 데이터 업데이트 버튼도 추가)
- 07. 분뇨처리시설
- 10. 물 재이용
- 11. 하수 및 분뇨찌꺼기(슬러지)처리
- 13. 하수도 서비스 수준
- 추후 조건에 따라서 버튼 보여지고 안보여지고 제어예정
This commit is contained in:
2026-01-13 10:47:36 +09:00
parent a3797c7ae1
commit 7af1ef94cb
14 changed files with 53 additions and 55 deletions
@@ -7,6 +7,7 @@ import LastYearDataButton from "@/components/button/LastYearDataButton";
import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
import AddArticleButton from "@/components/button/AddArticleButton";
import DeleteArticleButton from "@/components/button/DeleteArticleButton";
import NotApplicableCheckButton from "@/components/button/NotApplicableCheckButton";
import { ExcretaTreatmentFacilityInpColumn } from "@/components/util/column/input/ExcretaTreatmentFacilityInpColumn"
@@ -42,8 +43,9 @@ const ExcretaTreatmentFacilityInp = () => {
console.log('save');
// 항목 제외 로직
};
const [rowData, setRowData] = useState<Record<string, string | number>[]>([]);
const [isNotApplicable, setIsNotApplicable] = useState(false);
return (
<>
@@ -58,6 +60,7 @@ const ExcretaTreatmentFacilityInp = () => {
</div>
<div className="card !py-0">
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<NotApplicableCheckButton isCheck={isNotApplicable} setIsCheck={setIsNotApplicable} />
<AddArticleButton addArticleFunc={addArticleFunc} />
<DeleteArticleButton deleteArticleFunc={deleteArticleFunc} />
</div>
@@ -21,23 +21,19 @@ const PrivateSewageFacilityInp = () => {
];
const submitExceptionFunc = () => {
// TODO: 예외 제출 로직 구현
console.log('예외 제출 로직 실행');
// 예외 제출 로직
};
const lastYearDataFunc = () => {
// TODO: 지난연도 데이터 가져오기 로직 구현
console.log('지난연도 데이터 가져오기 로직 실행');
// 지난연도 데이터 가져오기 로직
};
const submitFunc = () => {
// TODO: 제출 로직 구현
console.log('제출 로직 실행');
// 제출 로직
};
const saveFunc = () => {
// TODO: 저장 로직 구현
console.log('저장 로직 실행');
// 저장 로직
};
const [rowDataMap, setRowDataMap] = useState<Map<string, Record<string, string | number>[]>>(new Map());
@@ -5,6 +5,8 @@ import SubmitButton from '@/components/button/SumitButton';
import SaveButton from '@/components/button/SaveButton';
import SubmitExceptionButton from '@/components/button/SubmitExceptionButton';
import OperateDataButton from '@/components/button/OperateDataButton';
import UpdateOperateDataButton from "@/components/button/UpdateOperateDataButton"
import NotApplicableCheckButton from "@/components/button/NotApplicableCheckButton";
import { PublicSewageFacilityInpColumn } from '@/components/util/column/input/PublicSewageFacilityInpColumn';
@@ -31,7 +33,13 @@ const PublicSewageFacilityInp = () => {
// 운영 데이터 가져오기
};
const updateOperateDataButtonFunc = () => {
console.log('updatedOperateData');
// 운영 데이터 업데이트 로직
};
const [rowData, setRowData] = useState<Record<string, string | number>[]>([]);
const [isNotApplicable, setIsNotApplicable] = useState(false);
return (
<>
@@ -45,6 +53,8 @@ const PublicSewageFacilityInp = () => {
</div>
<div className="card !py-0">
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<NotApplicableCheckButton isCheck={isNotApplicable} setIsCheck={setIsNotApplicable} />
<UpdateOperateDataButton updateOperateDataButtonFunc={updateOperateDataButtonFunc} />
<OperateDataButton getOperateDataFunc={getOperateDataFunc} />
</div>
</div>
@@ -7,6 +7,7 @@ import LastYearDataButton from "@/components/button/LastYearDataButton";
import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
import AddArticleButton from "@/components/button/AddArticleButton";
import DeleteArticleButton from "@/components/button/DeleteArticleButton";
import NotApplicableCheckButton from "@/components/button/NotApplicableCheckButton";
import { PumpingStationInpColumn } from "@/components/util/column/input/PumpingStationInpColumn"
@@ -44,6 +45,7 @@ const PumpingStationInp = () => {
};
const [rowData, setRowData] = useState<Record<string, string | number>[]>([]);
const [isNotApplicable, setIsNotApplicable] = useState(false);
return (
<>
@@ -58,6 +60,7 @@ const PumpingStationInp = () => {
</div>
<div className="card !py-0">
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<NotApplicableCheckButton isCheck={isNotApplicable} setIsCheck={setIsNotApplicable} />
<AddArticleButton addArticleFunc={addArticleFunc} />
<DeleteArticleButton deleteArticleFunc={deleteArticleFunc} />
</div>
@@ -25,27 +25,22 @@ const SewageExcretaRelatedInp = () => {
];
const submitExceptionFunc = () => {
// TODO: 예외 제출 로직 구현
console.log('예외 제출 로직 실행');
// 예외 제출 로직
};
const lastYearDataFunc = () => {
// TODO: 지난연도 데이터 가져오기 로직 구현
console.log('지난연도 데이터 가져오기 로직 실행');
// 지난연도 데이터 가져오기 로직
};
const submitFunc = () => {
// TODO: 제출 로직 구현
console.log('제출 로직 실행');
// 제출 로직
};
const saveFunc = () => {
// TODO: 저장 로직 구현
console.log('저장 로직 실행');
// 저장 로직
};
const addArticleFunc = () => {
console.log('save');
// 항목 추가 로직
};
@@ -7,6 +7,7 @@ import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
import LastYearDataButton from "@/components/button/LastYearDataButton";
import AddArticleButton from "@/components/button/AddArticleButton";
import DeleteArticleButton from "@/components/button/DeleteArticleButton";
import NotApplicableCheckButton from "@/components/button/NotApplicableCheckButton";
import { SlurgeProcessingFacStatusInpColumn } from "@/components/util/column/input/sewageExcretaSlurge/SlurgeProcessingFacStatusInpColumn";
import { DigestorOperatingStatusInpColumn } from "@/components/util/column/input/sewageExcretaSlurge/DigestorOperatingStatusInpColumn";
@@ -26,36 +27,31 @@ const SewageExcretaSlurgeInp = () => {
];
const submitExceptionFunc = () => {
// TODO: 예외 제출 로직 구현
console.log('예외 제출 로직 실행');
// 예외 제출 로직
};
const lastYearDataFunc = () => {
// TODO: 지난연도 데이터 가져오기 로직 구현
console.log('지난연도 데이터 가져오기 로직 실행');
// 지난연도 데이터 가져오기 로직
};
const submitFunc = () => {
// TODO: 제출 로직 구현
console.log('제출 로직 실행');
// 제출 로직
};
const saveFunc = () => {
// TODO: 저장 로직 구현
console.log('저장 로직 실행');
// 저장 로직
};
const addArticleFunc = () => {
console.log('save');
// 항목 추가 로직
};
const deleteArticleFunc = () => {
console.log('save');
// 항목 제외 로직
};
const [rowDataMap, setRowDataMap] = useState<Map<string, Record<string, string | number>[]>>(new Map());
const [isNotApplicable, setIsNotApplicable] = useState(false);
return (
<>
@@ -70,6 +66,7 @@ const SewageExcretaSlurgeInp = () => {
</div>
<div className="card !py-0">
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<NotApplicableCheckButton isCheck={isNotApplicable} setIsCheck={setIsNotApplicable} />
<AddArticleButton addArticleFunc={addArticleFunc} />
<DeleteArticleButton deleteArticleFunc={deleteArticleFunc} />
</div>
@@ -39,7 +39,7 @@ const SewagePipeInp = () => {
const getLastYearDataFunc = () => {
console.log('get last year data');
// 지난연도 데이터 가져오기
// 지난연도 데이터 가져오기 로직
};
const submitFunc = () => {
@@ -25,7 +25,7 @@ const SewagePipeMaintainInp = () => {
const getLastYearDataFunc = () => {
console.log('get last year data');
// 지난연도 데이터 가져오기
// 지난연도 데이터 가져오기 로직
};
const submitFunc = () => {
@@ -7,6 +7,7 @@ import LastYearDataButton from "@/components/button/LastYearDataButton";
import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
import AddArticleButton from "@/components/button/AddArticleButton";
import DeleteArticleButton from "@/components/button/DeleteArticleButton";
import NotApplicableCheckButton from "@/components/button/NotApplicableCheckButton";
import { SewageReservoirInpColumn } from "@/components/util/column/input/sewageReservoirPump/SewageReservoirInpColumn";
import { RainfallPumpStationInpColumn } from "@/components/util/column/input/sewageReservoirPump/RainfallPumpStationInpColumn";
@@ -51,6 +52,7 @@ const SewageReservoirPumpInp = () => {
};
const [rowDataMap, setRowDataMap] = useState<Map<string, Record<string, string | number>[]>>(new Map());
const [isNotApplicable, setIsNotApplicable] = useState(false);
return (
<>
@@ -65,6 +67,7 @@ const SewageReservoirPumpInp = () => {
</div>
<div className="card !py-0">
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<NotApplicableCheckButton isCheck={isNotApplicable} setIsCheck={setIsNotApplicable} />
<AddArticleButton addArticleFunc={addArticleFunc} />
<DeleteArticleButton deleteArticleFunc={deleteArticleFunc} />
</div>
@@ -23,23 +23,19 @@ const SewerageFinanceInp = () => {
];
const submitExceptionFunc = () => {
// TODO: 예외 제출 로직 구현
console.log('예외 제출 로직 실행');
// 예외 제출 로직
};
const lastYearDataFunc = () => {
// TODO: 지난연도 데이터 가져오기 로직 구현
console.log('지난연도 데이터 가져오기 로직 실행');
// 지난연도 데이터 가져오기 로직
};
const submitFunc = () => {
// TODO: 제출 로직 구현
console.log('제출 로직 실행');
// 제출 로직
};
const saveFunc = () => {
// TODO: 저장 로직 구현
console.log('저장 로직 실행');
// 저장 로직
};
const [rowDataMap, setRowDataMap] = useState<Map<string, Record<string, string | number>[]>>(new Map());
@@ -13,22 +13,18 @@ import { SeweragePenetrationRateInpColumn } from "@/components/util/column/input
const SeweragePenetrationRateInp = () => {
const SubmitExceptionFunc = () => {
console.log('submit exception');
// 예외 제출 로직
};
const getLastYearDataFunc = () => {
console.log('get last year data');
// 지난연도 데이터 가져오기
};
const submitFunc = () => {
console.log('submit');
// 제출 로직
};
const saveFunc = () => {
console.log('save');
// 저장 로직
};
@@ -5,13 +5,13 @@ import SubmitButton from "@/components/button/SumitButton";
import SaveButton from "@/components/button/SaveButton";
import LastYearDataButton from "@/components/button/LastYearDataButton";
import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
import NotApplicableCheckButton from "@/components/button/NotApplicableCheckButton";
import { ComplaintInpColumn } from "@/components/util/column/input/sewerageServiceLevel/ComplaintInpColumn";
import { ResidentFriendlyFacilityInpColumn } from "@/components/util/column/input/sewerageServiceLevel/ResidentFriendlyFacilityInpColumn";
// 하수도 통계 관리 > 13. 하수도 서비스 수준
const SewerageServiceLevelInp = () => {
const [rowDataMap, setRowDataMap] = useState<Map<string, Record<string, string | number>[]>>(new Map());
// tab List
const SewerageServiceLevelInpTabList = [
@@ -20,25 +20,24 @@ const SewerageServiceLevelInp = () => {
];
const submitExceptionFunc = () => {
console.log('submit exception');
// 예외 제출 로직
};
const getLastYearDataFunc = () => {
console.log('get last year data');
// 지난연도 데이터 가져오기 로직
};
const submitFunc = () => {
console.log('submit');
// 제출 로직
};
const saveFunc = () => {
console.log('save');
// 저장 로직
};
const [rowDataMap, setRowDataMap] = useState<Map<string, Record<string, string | number>[]>>(new Map());
const [isNotApplicable, setIsNotApplicable] = useState(false);
return (
<>
<SearchForm userMenual={true} />
@@ -50,6 +49,11 @@ const SewerageServiceLevelInp = () => {
<SaveButton saveFunc={saveFunc} />
</div>
</div>
<div className="card !py-0">
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<NotApplicableCheckButton isCheck={isNotApplicable} setIsCheck={setIsNotApplicable} />
</div>
</div>
<TabDataGrid
columnInfo={SewerageServiceLevelInpTabList}
rowDataMap={rowDataMap}
@@ -10,12 +10,10 @@ import { StatsInputSatusInpColumn } from "@/components/util/column/input/StatsIn
const StatsInputSatusInp = () => {
const rejectFunc = () => {
console.log('reject');
// 보완 요청 로직
};
const approveFunc = () => {
console.log('appoved');
// 승인 요청 로직
};
@@ -28,27 +28,22 @@ const WaterReuseInp = () => {
TreatmentWaterReuseBussinessApprovalStatusInpColumn
];
const SubmitExceptionFunc = () => {
console.log('submit exception');
// 예외 제출 로직
};
const getLastYearDataFunc = () => {
console.log('get last year data');
// 전연도 데이터 가져오기
// 전연도 데이터 가져오기 로직
};
const submitFunc = () => {
console.log('submit');
// 제출 로직
};
const saveFunc = () => {
console.log('save');
// 저장 로직
};
const updateOperateDataButtonFunc = () => {
console.log('updatedOperateData');
// 운영 데이터 업데이트 로직 - tab1. 공공하수처리수 재이용
};
@@ -63,6 +58,7 @@ const WaterReuseInp = () => {
};
const [rowDataMap, setRowDataMap] = useState<Map<string, Record<string, string | number>[]>>(new Map());
const [isNotApplicable, setIsNotApplicable] = useState(false);
return (
<>
@@ -77,6 +73,7 @@ const WaterReuseInp = () => {
</div>
<div className="card !py-0">
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<NotApplicableCheckButton isCheck={isNotApplicable} setIsCheck={setIsNotApplicable} />
<UpdateOperateDataButton updateOperateDataButtonFunc={updateOperateDataButtonFunc} />
<AddArticleButton addArticleFunc={addArticleFunc} />
<DeleteArticleButton deleteArticleFunc={deleteArticleFunc} />