feat:, fix:

- 침입수분석, RDII분석 결과 페이지 항목 개수 1000만건으로 수정
- 삭제 후 재조회 시에 cell 클릭 초기화
- 삭제 후 재조회되지 않는 에러 수정
This commit is contained in:
swcho
2025-06-25 11:33:32 +09:00
parent 5ae9529afe
commit b6730c1e15
2 changed files with 33 additions and 13 deletions
@@ -55,6 +55,7 @@ const Result = () => {
const [isLoadingResult, setIsLoadingResult] = useState<boolean>(false); // 로딩 상태
const [selectedRowData, setSelectedRowData] = useState<any>(null);
const [selectedRowIndex, setSelectedRowIndex] = useState<number | undefined>(undefined);
const [resetSelection, setResetSelection] = useState<boolean>(false);
const handleSearchButtonClick = async (customFormValues?: Partial<ResultFormValues>) => {
@@ -85,7 +86,7 @@ const Result = () => {
const queryParams = new URLSearchParams({
page: '0',
size: '10',
size: '10000000',
sort: 'rainInfwtAnlsSn,desc'
});
Object.entries(inftwtAnlsSearchDto).forEach(([key, value]) => {
@@ -181,21 +182,29 @@ const Result = () => {
console.log("File delete response1:", response1);
console.log("File delete response2:", response2);
// 테이블 선택 상태 초기화 트리거
setResetSelection(true);
// 삭제 후 테이블 새로고침을 위해 재검색
const customFormValues: Partial<ResultFormValues> = {
aplcnYm: selectedRowData.aplcnYm || '0',
enoCd: selectedRowData.enoCd || '0',
ctpvCd: selectedRowData.ctpvCd || '0',
sggCd: selectedRowData.sggCd || '0',
swtrmtZoneCd: selectedRowData.swtrmtZoneCd || '0',
aplcnYm: selectedRowData.aplcnYm || null,
enoCd: selectedRowData.enoCd || null,
ctpvCd: selectedRowData.ctpvCd || null,
sggCd: selectedRowData.sggCd || null,
swtrmtZoneCd: selectedRowData.swtrmtZoneCd || null,
};
await handleSearchButtonClick(customFormValues);
// 선택된 행 초기화
setSelectedRowData(null);
setSelectedRowIndex(undefined);
setIsLoadingResult(false);
alert('삭제가 완료되었습니다.');
setTimeout(() => {
setResetSelection(false);
}, 100);
} catch (error) {
console.error("분석결과 파일 삭제 중 오류 발생:", error);
alert("분석결과 파일 삭제 중 오류가 발생했습니다. 다시 시도해주세요.");
@@ -247,6 +256,7 @@ const Result = () => {
children={undefined}
cellClick={handleCellClick}
onPageChange={(e) => { }}
resetSelection={resetSelection}
/>
</div>
</div>
@@ -54,6 +54,7 @@ const Result = () => {
const [isLoadingResult, setIsLoadingResult] = useState<boolean>(false); // 로딩 상태
const [selectedRowData, setSelectedRowData] = useState<any>(null);
const [selectedRowIndex, setSelectedRowIndex] = useState<number | undefined>(undefined);
const [resetSelection, setResetSelection] = useState<boolean>(false);
const handleSearchButtonClick = async (customFormValues?: Partial<ResultFormValues>) => {
@@ -84,7 +85,7 @@ const Result = () => {
const queryParams = new URLSearchParams({
page: '0',
size: '10',
size: '10000000',
sort: 'inftwtAnlsSn,desc'
});
Object.entries(inftwtAnlsSearchDto).forEach(([key, value]) => {
@@ -169,7 +170,8 @@ const Result = () => {
}
try {
// 삭제 API 호출
// // 삭제 API 호출
console.log("Deleting analysis result with inftwtAnlsSn:", selectedRowData.inftwtAnlsSn);
const response1 = await deleteData(`v1/inftwtAnlsRslt/${selectedRowData.inftwtAnlsSn}`);
const response2 = await deleteData(`v1/inftwtAnls/${selectedRowData.inftwtAnlsSn}`);
// 첨부파일(inp파일) 삭제 API 호출
@@ -181,13 +183,16 @@ const Result = () => {
console.log("File delete response1:", response1);
console.log("File delete response2:", response2);
// 테이블 선택 상태 초기화 트리거
setResetSelection(true);
// 삭제 후 테이블 새로고침을 위해 재검색
const customFormValues: Partial<ResultFormValues> = {
aplcnYm: selectedRowData.aplcnYm || '0',
enoCd: selectedRowData.enoCd || '0',
ctpvCd: selectedRowData.ctpvCd || '0',
sggCd: selectedRowData.sggCd || '0',
swtrmtZoneCd: selectedRowData.swtrmtZoneCd || '0',
aplcnYm: selectedRowData.aplcnYm || null,
enoCd: selectedRowData.enoCd || null,
ctpvCd: selectedRowData.ctpvCd || null,
sggCd: selectedRowData.sggCd || null,
swtrmtZoneCd: selectedRowData.swtrmtZoneCd || null,
};
await handleSearchButtonClick(customFormValues);
@@ -197,6 +202,10 @@ const Result = () => {
setIsLoadingResult(false);
alert('삭제가 완료되었습니다.');
setTimeout(() => {
setResetSelection(false);
}, 100);
} catch (error) {
setIsLoadingResult(false);
console.error("분석결과 파일 삭제 중 오류 발생:", error);
@@ -248,6 +257,7 @@ const Result = () => {
children={undefined}
cellClick={handleCellClick}
onPageChange={(e) => { }}
resetSelection={resetSelection}
/>
</div>
</div>