pharmacy-pos-qr-system/backend/gui
thug0bin 9bd2174501 feat: 제품 검색 페이지 및 QR 라벨 인쇄 기능
- /admin/products: 전체 제품 검색 페이지 (OTC)
- /api/products: 제품 검색 API (세트상품 바코드 포함)
- qr_printer.py: Brother QL-710W 프린터 연동
- /api/qr-print, /api/qr-preview: QR 라벨 인쇄/미리보기 API
- 판매상세 페이지에 QR 인쇄 버튼 추가
- 수량 선택 UI (+/- 버튼, 최대 10장)
- 세트상품 제조사 표시 개선
- 대시보드 헤더에 제품검색/판매조회 탭 추가
2026-02-27 13:56:26 +09:00
..
check_cash.py feat: 제품 검색 페이지 및 QR 라벨 인쇄 기능 2026-02-27 13:56:26 +09:00
check_sunab.py feat: 제품 검색 페이지 및 QR 라벨 인쇄 기능 2026-02-27 13:56:26 +09:00
pos_sales_gui.py fix: SQLite 싱글톤 연결 I/O 에러 수정 + clawdbot 모델 오버라이드 2026-02-27 01:27:47 +09:00
README.md docs: 프로젝트 README 업데이트 - Flask app.py 및 API 문서 추가 2026-01-25 12:09:07 +09:00
requirements.txt feat: 프로젝트 초기 구조 설정 2026-01-23 13:59:00 +09:00

POS 판매 조회 GUI

PyQt5 기반 POS 판매 내역 조회 프로그램

기능

  • 날짜별 판매 내역 조회
  • 실시간 총 매출 집계
  • 판매 상세 품목 조회 (더블클릭)
  • QR 생성 및 라벨 인쇄
  • 적립 정보 실시간 표시 (Flask app.py 연동)

실행 방법

# 의존성 설치
pip install -r requirements.txt

# GUI 실행
python pos_sales_gui.py

데이터베이스 연결

MSSQL

PM_PRES 데이터베이스에 연결합니다.

  • SALE_MAIN: 판매 헤더
  • SALE_SUB: 판매 상세

SQLite

mileage.db 데이터베이스에 연결합니다.

  • claim_tokens: QR 토큰 정보
  • users: 적립 사용자 정보

연결 설정은 ../db/dbsetup.py에서 관리됩니다.

Flask 웹 서버 연동

필수 사전 실행

이 GUI를 사용하기 전에 Flask 웹 서버(app.py)를 먼저 실행해야 합니다.

# 1단계: Flask 서버 실행 (필수)
cd backend
python app.py

# 2단계: POS GUI 실행
cd backend/gui
python pos_sales_gui.py

연계 흐름

1. POS GUI에서 판매 내역 조회
   ↓
2. QR 생성 버튼 클릭
   ↓
3. SQLite에 claim_token 저장
   ↓
4. QR 라벨 인쇄
   ↓
5. 고객이 QR 스캔 → Flask 웹 페이지 접속
   ↓
6. 전화번호 + 이름 입력 → 적립 완료
   ↓
7. POS GUI에서 적립 정보 실시간 확인 (적립자명, 포인트)

주요 기능

QR 생성

  • 선택한 판매 내역에 대해 QR 코드 생성
  • claim_token을 SQLite에 저장
  • Zebra 프린터로 라벨 인쇄

적립 정보 표시

  • 판매 내역 테이블에 적립 상태 표시
  • 적립 완료 시 사용자 정보 표시 (이름, 전화번호, 포인트)

스크린샷

┌─────────────────────────────────────────────────┐
│  POS 판매 조회                    [_] [□] [X]   │
├─────────────────────────────────────────────────┤
│  날짜: [2026-01-23]  [새로고침]  [QR 생성]      │
├─────────────────────────────────────────────────┤
│  주문번호        시간   금액    고객명   품목수  │
│  20260123000042 14:30 45,000원  김철수    3    │
│  20260123000041 14:15 12,000원 [비고객]   1    │
├─────────────────────────────────────────────────┤
│  상태: 3건 조회 완료 | 총 매출: 125,500원      │
└─────────────────────────────────────────────────┘