Skip to content

f-lab-edu/qrlogi

Repository files navigation

진행중


서비스플로우

  • QR 기반 스캔 처리 → 수량 변화 감지 → 추적 로그 저장
[회원/바이어/상품 등록]
        ↓
[주문(Order) 생성]
        ↓
[출고 등록 (Shipment)]
        ↓
[출고 항목 생성 (ShipmentItem)]
        ↓
[QR 스캔 (→ OrderItem.shippedQty 증가)]
        ↓
[전체 출고 완료 판단 → 상태 변경]
        ↓
[검수 API로 검수자 기록 → 최종 완료]

  • 구상안
a. 바이어 주문 등록
    * 주문 정보 및 품목 수량 입력

b. QR코드와 바코드 이미지 생성
    * 물품한개당 고유 serial ID 생성
    * QR 코드 및 바코드 이미지 생성
    
c. 출력용 파일 생성
    * 생성된 이미지를 프린터용지사이즈에 맞도록하여 PDF 파일로 변환
    * 작업자가 인쇄하여 물품에 부착

d. 스캔 및 출고 검수
    * 작업자가 QR / 바코드 스캔
    * 실시간 출고 수량 기록
    * 중복 스캔 방지(동시성해결, 로그 저장)

e. Google 스프레드시트로 보고
    * 실제 적재수량(스캔됨)과 주문 수량 비교
    * 검수 결과 자동 정리 후 스프레드시트 업로드
    * 바이어에게 공유 가능

  • 주문아이템에 대한 일련번호 생성 및 qr 생성 상세
1. 제품 등록 → 주문 발생 → QR/일련번호 생성   :  Spring REST API + DB 트랜잭션 처

  • Inspection 상세
  1. 작업자가 출고 현장에서 QR코드를 스캔
  2. 출고 수량이 주문 수량과 일치하면 상태를 “완료”로 변경


프로젝트 구조

  • msa적용을 고려한 구조
  • api: 실행파일
  • infra : Docker, DB설정
  • health : 헬스체크용
  • domain : 도메인




Docker

  • MySql
  • Master-Slave구조 (springApp, master, slave)



Snowflake

  • orderitem일련번호에 적용



도메인구성

└── domain
    ├── buyer              : 구매자 정보 관리
    ├── order              : 주문 생성 및 조회
    ├── orderitem          : 주문 항목 단위 관리
    ├── product            : 제품 관리
    ├── shipment           : 출고 관리 
    ├── shipmentitem       : 출고 항목 
    ├── inspection         : 출고 검수
    ├── payment            : 결제 관리 (예정)
    └── user               : 사용자 인증 및 관리

About

출고검수서비스

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •