Files
frontend/apps/sn/docs/작업검증/SFR-010-004~SFR-010-007-조사사업/001-qa-SFR-010-004~007-조사사업-통합검증계획.md
T

24 KiB
Raw Blame History

SFR-010-004~SFR-010-007 조사사업 통합 검증 계획

1. 문서 목적

  • 조사사업 프론트엔드의 단계별 완료 기준과 최종 FE/BE 통합 검증 순서를 관리한다.

2. 검증 범위

  • FE-0: 처리분구 조회·추가·수정·삭제대기·일괄저장
  • FE-1: SFR-010-004 사업등록·파일검토·PPL 집계/상세
  • FE-2: SFR-010-005 조사현황·지도 진입
  • FE-3: SFR-010-006 MNHL 집계·상세
  • FE-4: SFR-010-007 GIS 레이어·등급 필터·시설 상세

3. 공통 검증 기준

  • 변경 파일 TypeScript 오류가 없어야 한다.
  • 개발 서버 실행 여부 확인 후 안전한 경우에만 프로덕션 빌드를 수행한다.
  • API 요청은 설계한 URL·query·body와 일치해야 한다.
  • 401, 403, 404, 409, 422, 500 오류가 성공처럼 처리되지 않아야 한다.
  • 다음 단계는 현재 단계 구현과 검증 결과를 기록한 뒤 시작한다.

4. FE-0 검증 계획

구분 시나리오 기대 결과
최초 조회 처리분구관리 메뉴 최초 진입 별도 조회 버튼 클릭 없이 useYn=Y 전체 목록 1회 조회
조회 전체/시도/시군구 조건 조회 useYn=Y와 선택된 이름만 query에 포함
추가 시도·시군구 미선택/선택 후 추가 미선택 차단, 선택 시 행정구역 자동 입력된 신규 행 생성·처리분구명 셀 포커스
신규 행 입력 신규 행 처리분구명 입력 후 저장 변경상태 열 없이 셀 직접 입력, 빈 이름·동일 행정구역 중복 차단, CREATE 요청 생성
수정 미선택/삭제대기/정상 행 선택 후 수정 잘못된 대상 차단, 정상 행의 처리분구명 셀만 입력 상태로 전환, 입력값 변경 시 UPDATE 요청 생성
중복 같은 행정구역에 동일 이름 입력 저장 전 오류 표시
삭제 신규/미참조/참조 중 기존 행 삭제 로컬 제거/삭제대기/참조 오류 표시
저장 변경 없음/변경 있음/서버 실패 차단/변경만 전송/상태와 오류 유지
저장 후 목록 추가·수정·삭제대기 저장 성공 마지막 조회조건 유지, 추가·수정 결과 즉시 표시, 삭제 행 제거, 나머지 목록 유지
재조회 미저장 변경이 있는 상태 폐기 확인 후 조회
정렬 각 헤더를 세 번 선택 오름차순 → 내림차순 → 기본 순서로 순환하고 선택 행 유지
검색조건 시도·시군구 필터 표시 두 셀렉트가 겹치거나 눌리지 않고 일정 간격 유지
버튼 배치 조회와 저장 버튼 우측 끝 비교 두 버튼의 우측 여백이 같은 기준선에 위치
버튼 색상 조회·수정·추가·삭제·저장 확인 모든 주요 동작 버튼 글자가 흰색으로 표시

5. 자동·수동 검증 경계

  • 자동: TypeScript, git diff --check, Next 빌드
  • 수동: /oper/trtdst 진입, 헤더 정렬, 선택 행 유지, 검색조건 간격, 버튼 우측 정렬·글자색, 모달 입력, 행 상태 색, 메시지 표시
  • 통합: 실제 처리분구 API와 409 참조 제약, 저장 후 사업등록 후보 즉시 갱신
  • 실제 API·DB·JSONB 결과를 기준으로 검증하며 샘플 화면이나 자동 성공 fallback은 사용하지 않는다.

6. 다음 검증 순서

  1. FE-0 화면·UI 사용자 검증 완료 상태 유지
  2. FE-1 구현 후 사업등록 후보 연계의 FE 계약 확인
  3. 프론트 전체 완료 후 백엔드 단계 진행
  4. 백엔드 구현 후 FE-0 실 API와 각 SFR API·브라우저·네트워크 통합 검증
  5. 프로덕션 빌드는 개발 서버 종료와 실행 허용을 확인한 시점에 수행

7. 흡수한 기존 문서

  • 없음

8. FE-1 검증 계획

구분 시나리오 기대 결과
목록 조건 조회·페이지 이동·헤더 정렬 적용 조건 유지, 0-base page와 단일 sort 전달
선택 미선택 상태에서 결과등록/PPL 상세 선택 안내 후 popup 진입 차단
팝업 체계 사업등록·결과등록 클릭 공통 /popup/[popupKey] 윈도우가 열리고 차단 시 안내
사업등록 필수값·연도·음수·처리분구 미선택 저장 전 항목별 오류 표시
처리분구 행정구역 선택/변경 같은 지역 useYn=Y 후보 조회, 이전 선택 초기화
양식 저장 전/후 양식 받기 저장 전 안내, 저장 후 생성과 다운로드를 한 번에 수행
사업등록 입력 사업등록 popup 확인 첫 줄에 사업차수·사업년도·시도·시군구·정밀조사연장, 둘째 줄에 사업명 표시
사업차수 빈 값·0·소수·양의 정수 입력 후 저장 1 이상의 정수만 허용하고 입력값을 bizCycl로 전달
처리분구 목록 처리분구 후보가 많은 사업등록 popup 3열 7행 21개까지 표시하고 22개부터 목록 내부 세로 스크롤
정밀조사연장 입력칸 확인·숫자 입력 증감 스피너 없음, 숫자·소수점만 입력, 최대 10자 폭
결과등록 요약 결과등록 popup 진입 사업차수·사업년도·행정구역·사업명 순서로 적정 간격을 두고 한 줄 표시
결과등록 파일 목록 파일 5종 영역 확인 연한 외곽선·헤더·행 구분선만 표시되고 강한 세로 격자 없음
결과등록 스크롤 최초 popup 진입 가로·창 세로 스크롤 없음, 검토결과 초과 시 본문 내부 세로 스크롤만 표시
결과등록 행 높이 파일 5종 최초 표시 파일 선택 영역이 남는 세로 공간을 활용하되 창 스크롤은 만들지 않음
결과등록 초기 크기 결과등록 버튼으로 신규 popup 진입 콘텐츠 설정 980×340, Chrome 외곽 포함 약 980×410
파일 열 정렬 헤더와 5개 파일 행 비교 찾기·데이터 검토 헤더와 버튼 중심선 일치
파일 선택 표시 파일 선택 전후 비교 선택 파일명은 파란색 굵은 글씨와 옅은 파란 배경으로 변경
Hydration 사업등록 popup 최초 진입 Select aria-controls 불일치 경고 없이 client mount 후 표시
파일 1차 검사 빈 파일·200MB 초과·확장자 오류 서버 전송 전 차단
파일 검토 PPL/MNHL 미선택·정상·업무 오류 최소 1개 요구, 정상 요약 또는 위치 포함 오류 표시
최종 저장 검토 전/후·Tus 실패·commit 실패 검토 전 비활성, 실패를 성공 처리하지 않고 원인 유지
PPL 집계 결함 건수 클릭 처리분구·결함 분류로 시설 목록 연결
PPL 상세 시설·단위 선택 정규화 unit/detail 표시, STATUS/DEFECT 구분
보고서 시설 상세 보고서 버튼 매핑 미확정 안내와 비활성 유지
스타일 신규 route·모달 Tailwind src/features 클래스가 생성돼 레이아웃 적용
상단 구성 검색조건·조회·사업등록·결과등록 한 카드에 표시되고 사업명 입력 폭이 과도하지 않음
공통 선택 사업년도·시도·시군구 연도 선택과 I/I 지역 선택 재사용, 지역 기본값 고정 없음
목록 열 사용자 확정 열 순서·단위 NO부터 보고서까지 9개 열과 km·개소 단위 일치
버튼 상단 업무 버튼 PPL 집계·상세 직접 버튼 미표시
데이터 원천 일반 URL 진입 사업·처리분구·검토결과를 실제 API 응답으로만 표시

9. FE-1 수동 확인 경로

  1. 메뉴 연결 URL을 /oper/exmn/register로 등록하거나 주소로 직접 진입한다.
  2. 조회조건과 실제 사업 목록 또는 정상 빈 결과 레이아웃을 확인한다.
  3. 결과가 등록된 실제 사업을 선택해 관로·맨홀 집계와 상세현황을 확인한다.
  4. 사업등록 WindowPopup을 열어 행정구역·가나다순 처리분구 체크박스·필수값·양식 버튼을 확인한다.
  5. 사업 행 선택 후 결과등록 WindowPopup의 파일 5종, 찾기, 데이터 검토, 저장 활성 조건을 확인한다.
  6. 상단에 PPL 집계·상세 직접 버튼이 없고 목록 열 순서·단위가 확정안과 일치하는지 확인한다.
  7. API 오류는 화면 오류 메시지로 표시되고 빈 결과와 구분되는지 확인한다.

10. 조사현황·집계 1차 검증 계획

구분 시나리오 기대 결과
진입 /oper/exmn/register 기존 통합 화면을 유지하고 실제 API 데이터만 사용
목록 조건 조회·페이지·정렬·행 선택 등록 화면과 같은 조건 계약, 선택 행 강조
상세현황 사업 행의 어느 데이터 셀 선택 하단 조사 상세현황 표시, 상단과 중복되는 선택 사업 요약 띠는 표시하지 않음
선택 전 상태 최초 진입·재조회로 선택 해제 조사 상세현황 영역 자체가 표시되지 않음
명칭 조사유형 탭 확인 관로조사, 맨홀조사로 표시
관로 집계 관로조사 탭 대상연장·주행거리·전체·구조·운영·기타와 합계 표시
맨홀 집계 맨홀조사 탭 전체·구조·운영·기타와 합계 표시
버튼 상태 미선택/선택 상태 미선택 시 상세 패널 미표시, 선택 후 세 버튼 표시·미연결 안내
1차 보류 경계 상세보기·지도보기 클릭 1차 집계 검증에서는 상세 화면·지도 이동 없이 후속/보류 안내
  • 원본 PPT의 시각 배치 확인 후 실제 브라우저에서 상·하단 카드 높이와 열 줄바꿈을 사용자 재확인한다.
  • 상세보기 실제 화면, 엑셀 파일, 지도 컨텍스트 전달은 이 1차 완료 기준에서 제외했다. 상세보기 검증은 이후 12절에서 수행한다.
  • 로그인된 사용자 화면에서 목록 전체 셀 선택, 관로·맨홀 전환, 목록·상세 배치와 집계 표시를 확인해 조사관리 상세현황 1차 수동 검증은 완료했다.

11. 조사사업 목록·상세현황 최종 회귀 계획

구분 확인 방법 기대 결과
검색조건 사업차수·사업연도·시도·시군구를 차례로 변경 후 조회 조건 간격이 자연스럽고 기존 연도·행정구역 연동 동작 유지
행 선택 NO부터 보고서까지 각 열의 빈 공간·텍스트 주변 선택 어느 위치에서도 같은 행의 상세현황 표시, 선택 행 강조
정렬 각 정렬 헤더를 3회 연속 선택 오름차순→내림차순→기본 순환, 공통 아이콘 상태 일치
데이터 원천 실제 사업목록 정렬 서버 결과에 화면 정렬 규칙 적용
목록 높이 실제 사업 4건 이상 확인 3행은 하단선까지 온전히 표시, 4번째부터 목록 내부 스크롤
폭·경계 목록과 상세 좌우 끝선 및 스크롤 상태 비교 같은 가로 폭·여백, 상·하단 구분선 잘림 없음
조사유형 관로·맨홀 버튼의 가장자리와 중앙 선택 보이는 button 전체가 클릭되고 해당 유형 집계 재조회
요청 순서 사업·조사유형을 연속으로 빠르게 변경 마지막 선택의 응답만 화면에 반영
합계 관로·맨홀 합계 행 DOM·화면 확인 NO+처리분구 실제 병합, 중앙 정렬, 배경 #d2deef
상세 스크롤 처리분구 10행을 위아래로 스크롤 헤더 고정, 다음 행 일부 노출 없음, 경계선 유지
페이지 높이 상세 표시 전후·Footer 높이 변화·화면 이탈 확인 문서 전체 세로 스크롤 없음, 내부 스크롤 사용, 이탈 시 overflow 복원
공통 회귀 다른 BaseLayout 화면 진입 공통 Header·Footer와 레이아웃 동작 변화 없음
팝업 회귀 사업등록·결과등록 WindowPopup 재진입 사업등록 1000×620, 결과등록 기존 크기·버튼·처리분구·파일행 디자인 유지
  • 상세보기·다운로드 실제 동작, 지도 이동, 실 API 성공 응답은 이번 화면 회귀의 완료 범위에 포함하지 않는다.

12. 관로·맨홀 상세보기 팝업 검증 계획

구분 확인 방법 기대 결과
진입 조건 사업 행 선택 후 관로·맨홀 탭에서 상세보기 선택 사업·조사유형의 exmnSurveyDetail WindowPopup 표시
팝업 구조 헤더·상단 조건·본문 확인 파란 헤더·흰 제목, 별도 사업요약 띠 없음, 조회조건과 버튼이 본문 상단에 표시
표 구조 관로·맨홀 팝업 비교 같은 고정 정보 열과 대·중·소 3열 구조, 조사유형별 이상항목 코드·명칭 적용
스크롤 표를 좌우·상하로 이동 팝업 문서 전체 스크롤 없음, 표 영역에서만 스크롤
고정 열 표를 오른쪽으로 이동 보고서번호·관로/맨홀번호가 고정되고 규격 이후 경계선 유지
정렬 고정 정보 헤더를 3회 클릭 보고서번호~주행거리만 오름차순→내림차순→기본 순환
조회 관로/맨홀번호 입력 후 조회 번호 포함 행만 표시되고 빈 조건에서 전체 3행 복원
소계 실제 시설 행 값 합산 연장·주행거리와 코드별 대·중·소 합계 일치
합계 이상항목 합계 행 확인 각 항목 대·중·소 3열 병합 후 총합 표시
요약 라벨 가로 스크롤 전·후 비교 규격 전에는 병합영역 중앙, 규격 이후에도 고정열 오른쪽에 소계·합계 라벨 표시
목록 정렬 조사사업 NO 헤더 3회 클릭 정순→역순→기본 순환, 서버에 가상 rowNumber 필드 미전달
상세현황 정렬 합계와 일반 처리분구 행 비교 합계는 상단 고정, 일반 행만 선택 열 기준 정렬
액션 상세현황 버튼 확인 상세보기→지도보기→다운로드 순서, 다운로드 초록색
보류 기능 팝업 다운로드·지도보기 미구현 성공 처리 없이 후속/보류 안내
  • 사용자 화면 확인을 이번 프론트 상세보기 완료 기준으로 사용한다.
  • 실 API 응답, JSONB 코드 매핑, 실제 엑셀 다운로드 파일 검증은 백엔드 구현 후 통합 검증으로 이관한다.

13. 결함 분류별 상세보기와 팝업 최종 회귀 계획

검증 항목 조작 기대 결과
행 선택 상세현황 처리분구 행의 임의 셀 클릭 행 전체가 선택 강조되고 상단 상세보기 대상 갱신
0건 처리 결함 건수 0 셀 확인 파란 링크가 아니며 상세 팝업을 열지 않음
구조적 링크 구조적 결함 1건 이상 링크 클릭 행 선택 후 STRUCTURAL 상세 팝업 표시
운영적 링크 운영적 결함 1건 이상 링크 클릭 행 선택 후 OPERATIONAL 상세 팝업 표시
전체 상세 행 선택 후 상단 상세보기 클릭 ALL 기준 구조·운영 이상항목을 함께 표시
조사유형 관로·맨홀 탭에서 각각 링크 클릭 선택 탭에 맞는 관로/맨홀 상세표 표시
분류 열 필터 전체·구조·운영 팝업 비교 선택 분류 코드 열만 표시
분류 행 필터 분류별 실제 데이터 확인 선택 분류의 결함이 하나 이상인 시설 행만 표시
코드 헤더 이상항목 헤더 확인 모든 헤더가 명칭 (코드) 형식
제거 열 고정 정보 열 확인 구조적·운영적 내부결함 열 없음
집계 전체·구조·운영 각각 소계·합계 확인 현재 표시 행·열의 대·중·소 값과 일치
사업등록 검색 처리분구명 검색·결과 선택·초기화 필터된 목록 선택과 선택 건수 갱신
결과등록 요약 사업정보 영역 확인 읽기 전용 텍스트가 한 줄에서 잘리지 않음
회귀 사업등록·결과등록·상세보기 팝업 비교 파란 헤더와 옅은 파란 본문 배경 일관성 유지
  • 브라우저 수동 검증은 로그인된 SN 세션과 /oper/exmn/register 진입이 선행조건이다.
  • 개발 서버가 실행 중이면 별도 프로덕션 빌드를 실행하지 않고 정적 검사와 사용자 화면 확인을 우선한다.

14. 관로 본단위구간과 결함별 상세 팝업 회귀 계획

검증 항목 방법 기대 결과
관로 전체 상세보기 PPL, defectType=ALL 진입 처리분구·관리번호와 관로·본단위구간 전환 표시
맨홀 상세보기 MNHL 상세보기 진입 관로 전용 모드 전환 미표시
본단위구간 초기값 관리번호 없이 본단위구간 전환 선택 처리분구의 전체 관리번호 단위구간 표시
관리번호 검색 일부 관리번호 입력 후 조회 부분 일치 관로번호의 단위구간만 표시
단위구간 표 구조 한 관로의 여러 상세행 확인 관로·단위구간 공통 셀 병합과 14개 열 유지
구조적 링크 구조적결함 건수 클릭 조회 조건 없이 구조적결함 집계표 즉시 표시
운영적 링크 운영적결함 건수 클릭 조회 조건 없이 운영적결함 집계표 즉시 표시
결함별 요약 행 집계표 제목 행 확인 합계 정보와 다운로드 버튼이 오른쪽에 함께 표시
전체 상세보기 회귀 상단 상세보기 버튼 진입 기존 조회 조건·모드·전체 이상항목 표 유지
엑셀 다운로드 전체·분류별·본단위구간 각각 다운로드 현재 표시 행·열, 소계·합계와 병합 구조 반영
정적 검사 변경 저장소에서 git diff --check 공백 오류 없음
  • 실제 다운로드 파일은 Excel에서 열어 헤더, 병합 범위, 소계·합계와 한글 파일명을 대조한다.
  • 실제 API 응답과 DB JSONB의 코드·점수·단위구간 매핑을 대조한다.

15. 사업등록 사업차수·행정구역 배치 보완 검증 계획

검증 항목 방법 기대 결과
입력 순서 사업등록 팝업 첫째·둘째 줄 확인 첫 줄 5개 조건과 둘째 줄 사업명이 확정 순서로 표시
사업차수 기본값 신규 사업등록 진입 기본값 1 표시
사업차수 검증 빈 값·0·소수·양의 정수 저장 1 이상의 정수만 저장 가능
행정구역 명칭 강원특별자치도·대구광역시·긴 시군구 선택 선택값이 말줄임·잘림 없이 확인 가능
간격 첫 줄 전체 항목 비교 항목 묶음 사이 20px 고정 간격, 과도한 균등 분산 없음
공통 회귀 compact 미지정 기존 화면 확인 기존 시도·시군구 폭과 간격 유지
팝업 크기 새 창 외곽·본문 확인 1000×620, 세로 구성과 처리분구 영역 유지
정적 검사 프론트 저장소 git diff --check 공백 오류 없음

16. 샘플 보기 제거 후 최종 회귀 계획

검증 항목 방법 기대 결과
샘플 코드 sampleMode, sample=, exmn-sample-data 검색 런타임 코드 참조 0건
최초 목록 /oper/exmn/register 진입 빈 조건으로 실제 사업목록 자동 조회
등록·수정 신규 저장 및 선택 사업 수정 실제 API 저장 후 부모 목록 재조회
결과등록 파일 검토·최종 저장 실제 검토 API와 첨부·commit 호출
종합집계 결과 사업 행 선택·관로/맨홀 전환 실제 처리분구별 집계 표시
상세보기 전체·본단위·구조·운영 진입 실제 시설 컬럼과 JSONB 결과 표시
다운로드 관로·맨홀 다운로드 종합집계 1개와 처리분구 상세 N개 시트 생성
과거 URL /oper/exmn/register?sample=Y 진입 파라미터를 무시하고 실제 API 데이터 표시
지도보기 버튼 클릭 보류 안내 유지

17. 지도보기 이동·조사결과 레이어 검증 계획

검증 항목 방법 기대 결과
지도 진입 조사 상세현황에서 관로 또는 맨홀 선택 후 지도보기 /map으로 이동하고 선택 조사유형이 최초 체크됨
행정구역 초기화 경기도·하남시 사업에서 지도 진입 지도 검색조건에 시도·시군구가 표시되고 해당 지역으로 이동
레이어 트리 지도 왼쪽 레이어 확인 조사결과 > 관로조사 / 맨홀조사 표시
자동 필터 사업차수·구조·운영 등급 변경 적용 버튼 없이 해당 레이어가 다시 조회됨
AND 조건 구조·운영 등급을 함께 선택 두 조건을 모두 만족하는 시설만 표시
관로 등급 소수점 평균등급 데이터 조회 정수부 등급 기준으로 필터링
동시 레이어 관로조사와 맨홀조사를 모두 체크 두 레이어가 함께 표시되고 설정값은 독립 유지
체크 해제 각 조사 레이어 체크 해제 해당 벡터 레이어가 지도에서 제거
빠른 조건 변경 필터를 연속 변경 이전 응답이 마지막 조건 결과를 덮어쓰지 않음
회귀 기존 일반·분석 레이어 선택 기존 레이어 설정·선택 동작 유지

18. 지도 우측 조사관리 탭 검증 계획

검증 항목 방법 기대 결과
전용 탭 PPL·MNHL 조사 레이어 피처 클릭 노란 관로조사(번호) 또는 보라 맨홀조사(번호) 탭 생성
기존 정보 조사관리 탭 내용 확인 기본정보와 입력정보가 일반 시설 상세와 동일하게 표시
조사 결과 입력정보 하단 확인 사업·처리분구·보고서번호·구조/운영 등급 표시
관로 보고서 PPL의 조사보고서 보기 클릭 해당 관로 페이지 범위 PDF가 공통 WindowPopup에 표시
미등록 보고서 보고서 미등록 PPL 클릭 오류 안내 후 빈 창 닫힘
맨홀 정책 MNHL 조사관리 탭 확인 PDF 버튼과 별도 보류 안내 모두 미표시
탭 독립성 일반 관로와 조사 관로를 차례로 클릭 두 탭이 서로 덮어쓰지 않음

19. 2026-07-31 최종 통합 회귀 계획

검증 영역 확인 방법 기대 결과
조사관리 기본 기능 처리분구 CRUD부터 결과등록·상세·다운로드까지 대표 정상 시나리오 재수행 이전 단계에서 확인한 저장·조회·집계 결과 유지
지도 행정구역 경기도 하남시 사업의 지도보기 진입 시도·시군구가 모두 선택되고 대상 지역 및 대표 시설로 이동
레이어 표시 관로·맨홀을 각각 및 동시에 ON/OFF 관로는 노란 선, 맨홀은 보라 맨홀 아이콘으로 표시
레이어 필터 사업차수와 구조·운영 등급을 연속 변경 마지막 조건만 반영되고 설정 스크롤 위치 유지
맨홀 지역 범위 타 시군구에 같은 맨홀번호가 존재하는 데이터로 조회 요청 시군구 앞 5자리의 맨홀만 반환
지도 탭 관로·맨홀 피처를 차례로 선택 관로조사(번호)·맨홀조사(번호) 탭과 조사 결과 표시
일반 시설 회귀 일반 관로·맨홀 피처 선택 기존 기본정보·입력정보·유지관리 영역 유지
관로 보고서 페이지 범위 저장 전·후 각각 조회 최초 분석·저장 후 부분 PDF 표시, 재조회는 저장 범위 사용
관로 보고서 오류 첨부 없음·번호 판독 실패·선택 관로 미포함 WindowPopup 본문에 업무 오류 표시
맨홀 보고서 맨홀 조사 탭 확인 협의 전까지 보고서 버튼과 보류 안내 모두 미표시
  • 레이어 API 단위 테스트는 실제 서비스가 호출하는 Repository 메서드와 동일한 메서드를 모킹해야 한다.
  • 전체 빌드가 장시간 걸리는 환경에서는 변경 파일 정적 검사 후 백엔드 대상 테스트와 로그인 브라우저 회귀를 분리한다.

2026-10-19 맨홀 PDF GIS 번호 검증

  • 188001 테스트 PDF 실제 판독·쪽 추출, PPL/MNHL 첨부 분리, 미첨부·없는 번호·중복 시설·다중/비연속 번호를 검증한다.
  • 실제 서버에서는 맨홀 첨부 저장 → 상류맨홀 지도 선택 → 맨홀 보고서 1쪽 표시와 관로 회귀를 확인한다. 자동검증/실브라우저 여부는 통합검증결과에 구분한다.