- 알림톡 발송 로그: alimtalk_logs SQLite 테이블 + DB 자동 기록 - /admin/alimtalk 페이지: 서버 로그, NHN Cloud 내역 조회, 수동 발송 테스트 - 적립일시 포맷 수정: %Y-%m-%d %H:%M (16자 초과) → %m/%d %H:%M (11자) - POS GUI 현금영수증(현영) 표시: 청록색 볼드 - 결제수납구조.md: CD_SUNAB/PS_main/SALE_MAIN 3테이블 관계 문서 - 실행구조.md: Flask 서버 + Qt GUI 실행 가이드 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.8 KiB
2.8 KiB
청춘약국 마일리지 시스템 — 실행 구조
실행해야 할 프로그램 (2개)
1. Flask 서버 (backend/app.py)
cd c:\Users\청춘약국\source\pharmacy-pos-qr-system
python backend/app.py
- 포트: 7001 (0.0.0.0)
- 외부 도메인:
mile.0bin.in(→ 내부 7001 포트로 프록시) - 역할: 웹 서비스 전체 담당
제공하는 페이지/API
| 경로 | 설명 |
|---|---|
/ |
메인 페이지 |
/signup |
회원가입 |
/claim |
QR 적립 (폰번호 방식) |
/claim/kakao/start |
QR 적립 (카카오 로그인) |
/my-page |
마이페이지 |
/kiosk |
키오스크 대기 화면 (약국 내 태블릿) |
/admin |
관리자 페이지 |
/admin/transaction/<id> |
거래 상세 |
/admin/user/<id> |
회원 상세 |
/admin/search/user |
회원 검색 |
/admin/search/product |
상품 검색 |
/api/kiosk/trigger |
키오스크 QR 트리거 (POST) |
/api/kiosk/current |
키오스크 현재 상태 |
/api/kiosk/claim |
키오스크 적립 처리 (POST) |
사용하는 DB
- SQLite (
backend/db/mileage.db) — 회원, 적립, QR 토큰 - MSSQL (
192.168.0.4\PM2014, DB:PM_PRES) — POS 판매 데이터 (읽기 전용)
2. Qt POS GUI (backend/gui/pos_sales_gui.py)
cd c:\Users\청춘약국\source\pharmacy-pos-qr-system
python backend/gui/pos_sales_gui.py
- 역할: POS 판매 내역 조회 + QR 라벨 발행
- PyQt5 기반 데스크톱 앱
- Flask 서버와 독립적으로 실행 (별도 프로세스)
주요 기능
- 일자별 판매 내역 조회 (SALE_MAIN + CD_SUNAB)
- 결제수단 표시 (카드/현금/현영)
- 할인 표시
- QR 라벨 프린터 출력 (Zebra / POS 프린터)
- 적립자 클릭 → 회원 적립 내역 팝업
사용하는 DB
- MSSQL — SALE_MAIN, SALE_SUB, CD_SUNAB 조회
- SQLite — claim_tokens, users 조회 (적립 정보)
실행 순서
1. Flask 서버 먼저 실행 (키오스크, 웹 서비스 제공)
2. Qt POS GUI 실행 (판매 내역 조회, QR 발행)
순서는 상관없으나, Flask가 먼저 떠 있어야 키오스크(mile.0bin.in/kiosk)와
웹 서비스(mile.0bin.in)가 접속 가능.
프로세스 확인
# 실행 중인 Python 프로세스 확인
tasklist /FI "IMAGENAME eq python.exe"
# 정상 상태: Python 프로세스 3개
# - Flask 서버 (메인)
# - Flask 서버 (debug reloader 워커)
# - Qt POS GUI
주의사항
taskkill /F /IM python.exe사용 시 Flask + GUI 모두 종료됨- GUI만 재시작하려면 해당 PID만 종료할 것
- Flask 서버는
debug=True로 실행되어 코드 변경 시 자동 리로드 - Python 경로:
C:\Users\청춘약국\AppData\Local\Programs\Python\Python312\python.exe