← 포트폴리오 목록

비계·동바리 물량 산출 관리자 운영 플랫폼

MVP 이후 확장으로 업로드 도면 조회, 견적 요청 건별 고객 정보 관리, 산출 이력 분석, 산출 기준과 단가 설정, 알림 큐를 갖춘 관리자 운영 화면을 Node.js와 React 기반으로 구현합니다.

프로젝트 납품 요약

아래 프로젝트 개요와 핵심 기능에서 구현 화면을 확인할 수 있습니다.

서비스 타입Web
업종데이터 분석
기술 스택
ReactTypeScriptTailwind CSSRechartsNode.jsExpressPostgreSQLPrismaRedis
주요 기능
  • 접수 현황 대시보드
  • 도면 조회 관리
  • 견적 요청 관리
  • 산출 기준·단가 설정

프로젝트 개요

범위: 개발, 디자인, 기획

MVP 이후 확장으로 업로드 도면 조회, 견적 요청 건별 고객 정보 관리, 산출 이력 분석, 산출 기준과 단가 설정, 알림 큐를 갖춘 관리자 운영 화면을 Node.js와 React 기반으로 구현합니다. 접수 현황과 도면 처리 로그를 한 화면에서 비교하며 견적 업무를 이어가는 구조를 설계합니다.

작업 범위

  • 접수 현황 대시보드: 기간별 도면 업로드 수와 견적 요청 수를 차트로 보고, 우측 피드에서 새 접수와 변환 상태를 확인합니다
  • 도면 조회 관리: 업로드된 도면을 업체·현장·상태별로 검색하고 뷰어로 열어 산출 결과와 수정 이력을 확인합니다
  • 견적 요청 관리: 견적 요청 건별로 업체명·현장명·연락처와 첨부 산출 결과를 조회하고 상태와 담당자 메모를 관리합니다
  • 산출 기준·단가 설정: 층고 여유값, 비계 산출 기준, 동바리 높이 구간과 단가를 관리자가 설정하고 버전별로 보관합니다

주요 업무

  • 접수 현황 대시보드 화면: 집계용 Materialized View와 SSE 기반 처리 로그 피드로 좌우 듀얼 패널을 구성합니다
  • 도면 조회 관리 화면: 서버 필터링 목록과 읽기 전용 뷰어 패널, 파일 보관 정책 설정으로 구성합니다
  • 견적 요청 관리 화면: 상태 전이 규칙과 메모 이력, 엑셀 일괄 내보내기를 갖춘 요청 관리 화면으로 구현합니다
  • 산출 기준·단가 설정 화면: 설정 버전 테이블과 적용 시점 관리, 변경 전후 비교 화면으로 구성합니다
비계·동바리 물량 산출 관리자 운영 플랫폼
요구사항 정의

프로젝트 핵심 과제

프로젝트 진행 시 해결한 핵심 기술 과제입니다.

접수 집계 차트와 실시간 처리 로그 피드를 서로 다른 갱신 주기로 유지하는 이중 패널 상태 설계

산출 기준이 바뀌어도 과거 견적 결과가 달라지지 않

버전 고정과 재계산 정책 분리 설계 필요

고객 연락처 등 개인정보 컬럼의 마스킹과 조회 권한 분리 정책 설계

변환 실패·재처리 건을 관리자가 구분해 다시 큐에 올리는 운영 화면 흐름 설계

구현 내용

핵심 기능 상세

핵심 기능 1

접수 현황 대시보드

기간별 도면 업로드 수와 견적 요청 수를 차트로 보고, 우측 피드에서 새 접수와 변환 상태를 확인합니다. 집계용 Materialized View와 SSE 기반 처리 로그 피드로 좌우 듀얼 패널을 구성합니다.

  • PostgreSQL Materialized View로 일별·주별 접수 집계
  • SSE로 변환·산출 상태 로그를 우측 피드에 푸시
  • Recharts 합성 차트와 기간 필터의 URL 상태 동기화

집계 쿼리를 뷰로 분리하고 로그 피드를 SSE로 전달하여 대시보드의 두 패널이 독립적으로 갱신되는 구조를 설계합니다.

접수 현황 대시보드
접수 현황 대시보드 실제 화면
핵심 기능 2

도면 조회 관리

업로드된 도면을 업체·현장·상태별로 검색하고 뷰어로 열어 산출 결과와 수정 이력을 확인합니다. 서버 필터링 목록과 읽기 전용 뷰어 패널, 파일 보관 정책 설정으로 구성합니다.

  • 커서 기반 페이지네이션과 복합 필터 쿼리 빌더 설계
  • AWS S3 사전 서명 URL로 원본 도면 접근 제어
  • 읽기 전용 뷰어 컴포넌트를 P1 뷰어와 공유하는 구조 설계

원본 도면은 S3에 보관하고 서명 URL을 단기 발급하여 관리자 권한 범위 안에서만 열람되도록 설계합니다.

도면 조회 관리
도면 조회 관리 실제 화면
핵심 기능 3

견적 요청 관리

견적 요청 건별로 업체명·현장명·연락처와 첨부 산출 결과를 조회하고 상태와 담당자 메모를 관리합니다. 상태 전이 규칙과 메모 이력, 엑셀 일괄 내보내기를 갖춘 요청 관리 화면으로 구현합니다.

  • 요청 상태 전이를 상태 머신 테이블로 정의하고 검증
  • Bull Queue로 접수 알림 메일 발송과 재시도 처리
  • 연락처 컬럼 마스킹과 조회 권한 분리 설계

요청 상태 전이를 규칙 테이블로 관리하여 허용되지 않는 상태 변경을 서버에서 차단하는 구조를 설계합니다.

견적 요청 관리
견적 요청 관리 실제 화면
핵심 기능 4

산출 기준·단가 설정

층고 여유값, 비계 산출 기준, 동바리 높이 구간과 단가를 관리자가 설정하고 버전별로 보관합니다. 설정 버전 테이블과 적용 시점 관리, 변경 전후 비교 화면으로 구성합니다.

  • 산출 기준 값을 버전 테이블로 보관하고 요청 시점 버전을 고정
  • Zod 스키마로 설정 폼과 서버 검증 규칙 공유
  • Redis 캐시로 설정 조회를 처리하고 변경 시 무효화

산출 기준을 버전 단위로 보관하여 과거 산출 결과가 당시 기준으로 재현되도록 설계합니다.

산출 기준·단가 설정
산출 기준·단가 설정 실제 화면
구현 과정

프로젝트 진행 단계

STEP 1

관리자 권한·집계 모델 설계 · 2026.10

역할별 접근 정책, 접수 집계 Materialized View와 요청 상태 머신 테이블 설계

STEP 2

접수·도면 조회 화면 개발 · 2026.10

서버 필터 목록, S3 서명 URL 열람, 읽기 전용 뷰어 패널 구현

STEP 3

견적 요청 처리·알림 큐 개발 · 2026.10

상태 전이 검증, Bull Queue 알림 발송, 엑셀 일괄 내보내기 구현

STEP 4

산출 기준 버전 관리와 통합 점검 · 2026.10

설정 버전 테이블, Redis 캐시 무효화, 비교 화면과 통합 테스트 작성

개발 결과

접수 집계 Materialized View 설계일별·주별 업로드·견적 집계 뷰와 증분 갱신 작업을 설계하여 대시보드 조회 쿼리를 단순화합니다
요청 상태 머신 규칙 테이블 구축허용 전이를 테이블로 정의하고 서버에서 검증하여 잘못된 상태 변경을 차단하는 구조를 구현합니다
산출 기준 버전 고정 구조 구현요청 시점의 기준 버전을 함께 저장하여 과거 산출 결과를 당시 기준으로 재현하는 모델을 설계합니다
S3 서명 URL 기반 도면 열람 통제원본 도면을 비공개 버킷에 보관하고 단기 서명 URL로 권한 범위 내 열람만 허용하는 구조를 구축합니다

기술적 주안점

  • 집계 쿼리를 뷰로 분리하고 로그 피드를 SSE로 전달하여 대시보드의 두 패널이 독립적으로 갱신되는 구조를 설계합니다
  • 원본 도면은 S3에 보관하고 서명 URL을 단기 발급하여 관리자 권한 범위 안에서만 열람되도록 설계합니다
  • 요청 상태 전이를 규칙 테이블로 관리하여 허용되지 않는 상태 변경을 서버에서 차단하는 구조를 설계합니다

유사한 프로젝트를 기획하고 계신가요?

필요한 기능과 일정을 알려주시면 개발 범위를 함께 정리하겠습니다.

프로젝트 문의