기계 제조·물류 현장의 거래처·품목·주문·발송·재고를 하나의 화면에서 관제하는 운영 대시보드를 React + Node.js 기반으로 설계·구현합니다.
기계 제조·물류 현장의 거래처·품목·주문·발송·재고를 하나의 화면에서 관제하는 운영 대시보드를 React + Node.js 기반으로 설계·구현합니다. 견적서·거래명세서 PDF 자동 발행과 이메일·문자 발송 큐를 통합해 소모품 발주 업무 전체 흐름을 하나의 프로그램에서 처리합니다.
작업 범위
주요 업무



오늘의 주문·출고·재고부족 현황을 상단 상태바로 즉시 확인하고, 진행 중인 주문 타임라인과 우선 대응이 필요한 항목 큐를 한 화면에서 살펴볼 수 있는 관제 홈입니다.
카드 행 나열 대신 상태바·타임라인·우선순위 레일 3단 레이아웃으로 재구성해 운영자가 스크롤 없이 오늘 처리할 항목을 즉시 파악할 수 있는 관제 UX를 구현합니다.


거래처 정보를 등록·검색하고, 소모품 품목별 단가를 버전 관리하여 거래처마다 다른 단가 정책을 적용할 수 있습니다.
단가를 고정값이 아닌 이력(effective_date) 구조로 설계하여 거래처별 협상 단가 변경 시에도 과거 문서의 단가 정합성을 보장하는 구조를 구현합니다.


전화·문자로 접수한 주문을 폼에 기록하고, 접수부터 출고 완료까지 상태를 추적하며 실시간 재고 수량과 연동해 재고 부족 주문을 자동 식별합니다.
출고 처리와 재고 차감을 하나의 DB 트랜잭션으로 묶어, 여러 주문이 동시에 같은 품목을 출고 처리해도 재고 수량이 음수로 떨어지지 않는 동시성 제어 구조를 구현합니다.


주문·품목 데이터를 기반으로 견적서와 거래명세서를 PDF 템플릿으로 즉시 생성하고, 거래처 이메일 또는 문자로 자동 발송하며 발송 이력을 관리합니다.
견적서·거래명세서 생성부터 이메일·문자 발송까지를 하나의 발행 플로우로 묶고, 발송 실패 건은 자동 재시도 큐에 적재하는 문서 발행 자동화 구조를 구현합니다.


거래처·품목·주문·재고·문서 업무 프로세스 분석, PostgreSQL 테이블 12개 정의 및 단가 이력 관계 매핑
Express 기반 주문 CRUD·출고 트랜잭션·재고 차감 API 구현, Prisma 트랜잭션으로 동시성 제어
React 상태바·타임라인·우선순위 레일 구현, PDFKit 견적서·거래명세서 템플릿 연동
이메일·문자 발송 큐 연동, 발송 실패 재시도 로직 검증, 주요 플로우 통합 테스트