회사 프로젝트2024.02.29 — 2025.02.28최근 수정 2026-09-07

소규모 공공시설 관리시스템 구축

시설물의 위치 조회부터 점검·정비·보상 처리와 행정문서 출력까지 연결한 Web GIS 프로젝트입니다. Vue·OpenLayers 화면과 Spring Boot 업무 API 개발을 맡았습니다.

역할
개발2팀 · 프런트엔드·백엔드 개발: Web GIS, 업무 API, 행정문서 출력
사용 기술
  • Vue 3
  • TypeScript
  • Vite
  • Pinia
  • OpenLayers 8
  • Element Plus
  • ECharts
  • Spring Boot 2.7
  • Spring Security/OAuth2
  • MyBatis
  • PostgreSQL
  • Apache POI/HWP

공개 운영 화면

운영 화면 기록

해결 과제와 접근

시설물 관리에는 위치·속성 정보뿐 아니라 안전점검, 중기 정비계획, 공사와 보상 이력이 함께 필요했습니다. 지도에서 시설을 찾은 뒤 관련 업무를 이어서 처리할 수 있도록 Web GIS와 행정 업무 화면을 연결했습니다. 제 담당 범위는 프런트엔드의 상태·지도 상호작용과 백엔드의 업무 API·문서 생성입니다.

화면 개발 · 탐색·편집·지도 상태 연결

• Vue 3·TypeScript·Vite와 Pinia로 메뉴별 레이아웃, 로딩·선택 상태와 시설물·점검·정비계획·공사·보상 업무 흐름을 구성 • OpenLayers 8과 사내 GIS 모듈로 WMS/WFS 레이어, 시설 도형 조회·등록·수정, 확대·영역 선택·로드뷰·정보보기·거리·면적·단면도 상호작용 구현 • 2분할 지도와 스와이프 비교, 레이어 트리·CQL 필터·투명도, 미니맵·지도 출력 등 복합 지도 상태 제어 • Element Plus 기반 입력·검증 UI, Axios API 연동, ECharts 통계 대시보드와 HWP·Excel·PDF 다운로드 흐름 구현

서버 개발 · 표준 메타데이터와 데이터 변환

• Java 8·Spring Boot 2.7의 Controller–Service 구조와 MyBatis·PostgreSQL로 시설물, 점검·위험도, 중기계획, 공사·토지손실·보상 도메인 API 구현 • 시설물·도형·속성 이력의 조회·저장·상태 변경과 연차별 사업량·비용·대시보드 집계, 복합 보상 데이터 저장을 트랜잭션으로 처리 • Spring Security·OAuth2 기반 인증과 사용자·권한·접속이력 관리, KRAS·K-Geo 등 지적·토지 공간정보 및 MapStudio 연계 • Apache POI·hwplib·iText 기반 Excel·HWP·PDF 템플릿 출력, 이미지 삽입·문서 병합·파일 업로드/다운로드 API 구현

구현 결과 · 조회에서 계획·출력까지

지도에서 시설을 선택하면 해당 도형을 확대·강조하고 시설대장·안전점검·중기계획 상세를 확인할 수 있습니다. 거리·면적·단면도 분석과 분할 지도 비교는 공간 정보를 판단하는 도구로, 정비 우선순위와 연차별 사업량·비용은 계획 업무로 연결했습니다. 공사·토지손실·보상 화면, 통계 대시보드와 보고서 관리까지 구현 범위를 확장했습니다. 공개 화면은 이 기능 흐름의 근거이며, 업무 시간 단축률이나 이용 규모는 별도로 계측한 성과로 제시하지 않습니다.

설계 관점 · 업무 도메인과 연계 경계

요구사항에는 사용자·권한, 시설물·도형·속성 이력, 공간정보 연계, 안전점검, 정비계획과 서식 출력이 함께 포함되어 있었습니다. 이 관계를 업무 단위로 나누어 화면과 API에 연결하고, 추가 협의가 필요한 외부 시스템·모바일 이용 항목은 구현 완료 기능과 구분해 관리했습니다.

이 프로젝트에서 쌓은 역량

지도 상호작용, 상태 관리, 도메인 API, 트랜잭션과 문서 출력을 하나의 업무 흐름으로 연결하는 풀스택 개발 경험을 쌓았습니다. 프런트엔드에서 발생한 요구를 데이터 처리와 출력 형식까지 따라가며 구현한 점이 핵심입니다. 개발2팀의 공동 프로젝트에서 담당한 개발 범위를 기록했으며, 최초 설계나 전체 구축을 단독 성과로 주장하지 않습니다.