의류 도매 사입·재고·정산 운영 콘솔
거래처 주문 접수부터 재고 배정, 사입 발주와 휴대폰 입고 검수, 부분 출고·송장, 입금 매칭과 월 마감까지 직원과 관리자가 한 콘솔에서 처리하는 운영 시스템을 설계·구현하는 확장 프로젝트입니다.
프로젝트 개요
거래처 주문 접수부터 재고 배정, 사입 발주와 휴대폰 입고 검수, 부분 출고·송장, 입금 매칭과 월 마감까지 직원과 관리자가 한 콘솔에서 처리하는 운영 시스템을 설계·구현하는 확장 프로젝트입니다. 은행·택배·알림톡 연동은 어댑터 인터페이스로 구현하고 수동 등록을 병행합니다.
작업 범위
- 현황판: 오늘 접수 주문, 미출고, 미입고, 미수금 요약과 처리 대기 목록이 한 화면에 모입니다. 카드를 누르면 해당 목록으로 이동합니다
- 재고 현황: 품목별 실재고, 주문 배정 수량, 판매 가능 수량을 나누어 보고 입고·출고·반품·조정 이력을 확인합니다
- 입고 검수: 휴대폰 카메라로 품목 바코드를 읽으면 발주 수량 대비 실제 수량과 과부족이 표시되고 확정하면 재고에 반영됩니다
- 정산·입금 매칭: 불러온 은행 입금 내역이 거래처에 자동 매칭되고 미매칭 건은 수동 등록으로 처리하며, 거래처별 미수금과 월 마감을 확인합니다
주요 업무
- 현황판 화면: 요약 수치는 목록 조회 결과를 서버에서 집계해 같은 기준으로 내려줍니다
- 재고 현황 화면: 주문 배정은 품목 행 잠금과 트랜잭션으로 처리해 동시 주문에도 가용 수량을 넘지 않게 합니다
- 입고 검수 화면: 브라우저 카메라 바코드 인식으로 별도 앱 없이 동작하며 PC 스캐너 입력도 같은 경로로 받습니다
- 정산·입금 매칭 화면: 은행 조회 연동은 인터페이스로 추상화하고 입금자명·금액 규칙으로 매칭합니다



프로젝트 핵심 과제
동시 주문에서 가용 수량이 초과 배정될 리스크
행 잠금과 트랜잭션 격리 수준 설계로 대응합니다
입금자명이 거래처명과 달라 자동 매칭이 빗나갈 리스크
별칭 등록과 수동 매칭 이력으로 대응합니다
은행·택배·알림톡 실연동은 발주사 명의 신청이 필요한 리스크
어댑터 인터페이스와 수동 등록 병행으로 대응합니다
휴대폰 브라우저별 카메라 바코드 인식 지원 범위가 다를 리스크
수동 입력 대체 경로로 대응합니다
핵심 기능 상세
현황판
오늘 접수 주문, 미출고, 미입고, 미수금 요약과 처리 대기 목록이 한 화면에 모입니다. 카드를 누르면 해당 목록으로 이동합니다. 요약 수치는 목록 조회 결과를 서버에서 집계해 같은 기준으로 내려줍니다.
- Prisma 집계 쿼리로 현황 카드 4종을 한 번에 계산
- 직원·관리자 역할별 메뉴와 버튼 노출 제어
- 재고·금액 변경 작업을 감사 기록 테이블에 자동 적재
현황 카드, 처리 대기 목록, 변경 기록이 같은 데이터를 보도록 서버 집계 구조를 설계합니다.


재고 현황
품목별 실재고, 주문 배정 수량, 판매 가능 수량을 나누어 보고 입고·출고·반품·조정 이력을 확인합니다. 주문 배정은 품목 행 잠금과 트랜잭션으로 처리해 동시 주문에도 가용 수량을 넘지 않게 합니다.
- PostgreSQL 행 잠금(SELECT FOR UPDATE)으로 동시 주문 초과 배정 차단
- 실재고·배정·가용 수량을 분리한 재고 원장 구조 설계
- 실사·불량·분실 조정을 사유와 함께 이력으로 기록
동시 주문이 들어와도 가용 수량을 넘지 않도록 트랜잭션 격리와 재고 원장을 함께 설계합니다.


입고 검수
휴대폰 카메라로 품목 바코드를 읽으면 발주 수량 대비 실제 수량과 과부족이 표시되고 확정하면 재고에 반영됩니다. 브라우저 카메라 바코드 인식으로 별도 앱 없이 동작하며 PC 스캐너 입력도 같은 경로로 받습니다.
- 브라우저 BarcodeDetector 기반 스캔과 PC 스캐너 키보드 입력 병행 처리
- 색상·사이즈 조합별 품목 바코드 자동 생성과 라벨 출력 미리보기
- 입고 확정 트랜잭션에서 발주 잔량과 재고를 함께 갱신
휴대폰 웹 화면에서 바코드를 읽어 발주 대비 과부족을 보여 주고 확정 시 재고를 반영하는 흐름을 설계합니다.


정산·입금 매칭
불러온 은행 입금 내역이 거래처에 자동 매칭되고 미매칭 건은 수동 등록으로 처리하며, 거래처별 미수금과 월 마감을 확인합니다. 은행 조회 연동은 인터페이스로 추상화하고 입금자명·금액 규칙으로 매칭합니다.
- 입금자명 정규화와 금액 일치 규칙 기반 자동 매칭 함수 설계
- 미매칭 입금의 수동 매칭·분할 등록 화면과 이력 기록
- 월 마감 시 해당 월 장부를 잠그는 상태 전이와 조정 행 구조
주문금액·입금액·반품 금액을 한 계산 규칙으로 집계해 거래처별 미수금과 월 마감 결과가 어긋나지 않도록 설계합니다.


프로젝트 진행 단계
재고 원장·발주·정산 데이터 모델 설계 · 2026.11
재고 원장, 사입 발주, 입금·정산 장부 ERD와 상태 전이 설계
재고 배정·입고 API 개발 · 2026.11
행 잠금 기반 배정 트랜잭션, 입고 확정, 출고·반품 처리 API 구현
관리 콘솔·휴대폰 검수 화면 개발 · 2026.11
현황판, 입고 검수, 출고·송장, 정산·입금 매칭 화면 구현
연동 어댑터·통합 테스트 · 2026.11
은행·택배·알림톡 어댑터 인터페이스와 모의 구현, 금액 정합성 테스트
개발 결과
기술적 주안점
- 현황 카드, 처리 대기 목록, 변경 기록이 같은 데이터를 보도록 서버 집계 구조를 설계합니다
- 동시 주문이 들어와도 가용 수량을 넘지 않도록 트랜잭션 격리와 재고 원장을 함께 설계합니다
- 휴대폰 웹 화면에서 바코드를 읽어 발주 대비 과부족을 보여 주고 확정 시 재고를 반영하는 흐름을 설계합니다