관로번호 넘기기
This commit is contained in:
@@ -21,6 +21,7 @@ const MsSwagePpl = ({ featureData }: { featureData: any }) => { // SwtrmtFclt
|
||||
const [isModalInfil, setIsModalInfil] = React.useState(false);
|
||||
const [isModalRdii, setIsModalRdii] = React.useState(false);
|
||||
const [btnTxt, setBtnTxt] = useState<string>("");
|
||||
const pplMngNo= featureData?.pplMngNo || ""; // 관로관리번호
|
||||
const openModalRdii = (e: React.MouseEvent<HTMLButtonElement>) => {
|
||||
e.currentTarget.textContent && setBtnTxt(e.currentTarget.textContent)
|
||||
setIsModalRdii(true);
|
||||
@@ -87,8 +88,8 @@ const MsSwagePpl = ({ featureData }: { featureData: any }) => { // SwtrmtFclt
|
||||
RDII
|
||||
</Button>
|
||||
</div>
|
||||
<InfilChart btnTxt={btnTxt} isModalOpen={isModalInfil} setIsModalOpen={setIsModalInfil} closeModal={closeModalInfil} />
|
||||
<RdiiChart btnTxt={btnTxt} isModalOpen={isModalRdii} setIsModalOpen={setIsModalRdii} closeModal={closeModalRdii} />
|
||||
<InfilChart btnTxt={btnTxt} isModalOpen={isModalInfil} setIsModalOpen={setIsModalInfil} closeModal={closeModalInfil} pplMngNo={pplMngNo} />
|
||||
<RdiiChart btnTxt={btnTxt} isModalOpen={isModalRdii} setIsModalOpen={setIsModalRdii} closeModal={closeModalRdii} pplMngNo={pplMngNo}/>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -126,7 +126,7 @@ export const getChartDataInftwtAnlsRslt = (arr: TInftwtAnlsRslt[]): { label: str
|
||||
}));
|
||||
return options;
|
||||
};
|
||||
export const selectInftwtAnlsRslt = async(inftwtAnlsSn:number, pplMngNo:string) => { // 침입수분석 결과
|
||||
export const selectInftwtAnlsRslt = async(inftwtAnlsSn:number, pplMngNo:string|undefined) => { // 침입수분석 결과
|
||||
try {
|
||||
if ((inftwtAnlsSn === undefined || inftwtAnlsSn === 0) || !pplMngNo) {
|
||||
console.warn("inftwtAnlsSn or pplMngNo is not provided");
|
||||
@@ -148,7 +148,7 @@ export const getChartDataOilq = (arr: TOilqData[]): { label: string; val: number
|
||||
}));
|
||||
return options;
|
||||
};
|
||||
export const selectOilq = async(inftwtAnlsSn:number, pplMngNo:string) => { // 유량
|
||||
export const selectOilq = async(inftwtAnlsSn:number, pplMngNo:string|undefined) => { // 유량
|
||||
try {
|
||||
if ((inftwtAnlsSn === undefined || inftwtAnlsSn === 0) || !pplMngNo) {
|
||||
console.warn("inftwtAnlsSn or pplMngNo is not provided");
|
||||
|
||||
@@ -12,9 +12,10 @@ type ModalOpenProp = {
|
||||
setIsModalOpen: (open: boolean) => void,
|
||||
closeModal: () => void,
|
||||
btnTxt?: string,
|
||||
pplMngNo?: string, // 관로관리번호
|
||||
}
|
||||
|
||||
const InfilChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal }: ModalOpenProp) => {
|
||||
const InfilChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal, pplMngNo }: ModalOpenProp) => {
|
||||
const [popupOpen, setPopupOpen] = React.useState(true);
|
||||
const buttonRef = React.useRef<HTMLButtonElement>(null); // 버튼 참조
|
||||
const [popupPosition, setPopupPosition] = useState<{ top: number; left: number }>({ top: 0, left: 0 }); // 팝업 위치
|
||||
@@ -32,6 +33,7 @@ const InfilChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal }: ModalOp
|
||||
{ label: "5", val: 55 },],
|
||||
});
|
||||
const aplcnYms = useAplcnYms('inftwtAnlsRslt'); // 상수사용월 데이터 가져오기
|
||||
pplMngNo = "L13101003";
|
||||
const openPopup = () => {
|
||||
if (buttonRef.current) {
|
||||
const rect = buttonRef.current.getBoundingClientRect(); // 버튼 위치 계산
|
||||
@@ -103,25 +105,30 @@ const InfilChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal }: ModalOp
|
||||
}, [inftwtAnlsSn]);
|
||||
|
||||
const closePopup = () => { // 팝업 닫기
|
||||
selectInftwtAnlsRslt(inftwtAnlsSn, "L13101003").then((data) => {// 침입수분석 결과 조회
|
||||
|
||||
selectInftwtAnlsRslt(inftwtAnlsSn, pplMngNo).then((data) => {// 침입수분석 결과 조회
|
||||
const rsltData = getChartDataInftwtAnlsRslt(data ?? []);
|
||||
setChartData(prev => ({
|
||||
...prev,
|
||||
chartData1: rsltData // 침입수분석결과
|
||||
}));
|
||||
});
|
||||
selectOilq(inftwtAnlsSn,"L13101003").then((data) => {// 유량 조회
|
||||
selectOilq(inftwtAnlsSn, pplMngNo).then((data) => {// 유량 조회
|
||||
const rsltData = getChartDataOilq(data ?? []);
|
||||
setChartData(prev => ({
|
||||
...prev,
|
||||
chartData2: rsltData // 유량
|
||||
}));
|
||||
}).catch((err) => {
|
||||
console.error("selectOilq 에러:", err);
|
||||
setChartData(prev => ({
|
||||
...prev,
|
||||
chartData2: [] // 유량 데이터 초기화
|
||||
}));
|
||||
});
|
||||
setPopupOpen(false);
|
||||
};
|
||||
|
||||
|
||||
|
||||
const renderBody = () => (
|
||||
<>
|
||||
{/* <Modal isModalOpen={isModalOpen} setIsModalOpen={setIsModalOpen} closeModal={closeModal} > */}
|
||||
@@ -165,7 +172,7 @@ const InfilChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal }: ModalOp
|
||||
label=''
|
||||
selectArray={aplcnYms}
|
||||
value={aplcnYm}
|
||||
onSelectValue={(val) => {
|
||||
onSelectValue={(val) => {console.log("선택된 상수사용월:", val);
|
||||
setAplcnYm(String(val));
|
||||
}}
|
||||
/>
|
||||
|
||||
@@ -12,9 +12,10 @@ type ModalOpenProp = {
|
||||
setIsModalOpen: (open: boolean) => void,
|
||||
closeModal: () => void,
|
||||
btnTxt?: string,
|
||||
pplMngNo?: string, // 관로관리번호
|
||||
}
|
||||
|
||||
const RdiiChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal }: ModalOpenProp) => {
|
||||
const RdiiChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal, pplMngNo }: ModalOpenProp) => {
|
||||
const [popupOpen, setPopupOpen] = React.useState(true);
|
||||
const buttonRef = React.useRef<HTMLButtonElement>(null); // 버튼 참조
|
||||
const [popupPosition, setPopupPosition] = useState<{ top: number; left: number }>({ top: 0, left: 0 }); // 팝업 위치
|
||||
@@ -110,13 +111,7 @@ const RdiiChart = ({ btnTxt, isModalOpen, setIsModalOpen, closeModal }: ModalOpe
|
||||
chartData1: rsltData // 강우유입수분석결과
|
||||
}));
|
||||
});
|
||||
// selectOilq(rdiiAnlsSn,"L13101003").then((data) => {// 유량 조회
|
||||
// const rsltData = getChartDataOilq(data ?? []);
|
||||
// setChartData(prev => ({
|
||||
// ...prev,
|
||||
// chartData2: rsltData // 유량
|
||||
// }));
|
||||
// });
|
||||
|
||||
setPopupOpen(false);
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user