Initial commit: Flask stats API (v1 PharmIT3000, v2 PMPLUS20)
This commit is contained in:
75
README.md
Normal file
75
README.md
Normal file
@@ -0,0 +1,75 @@
|
||||
# Pharmacy Stats API
|
||||
|
||||
QT-POS 통계 다이얼로그 API 버전
|
||||
|
||||
## 구조
|
||||
|
||||
```
|
||||
pharmacy-stats-api/
|
||||
├── app.py # Flask 메인
|
||||
├── config.py # DB 연결 설정
|
||||
├── queries/
|
||||
│ ├── v1_pharmit3000.py # PharmIT3000 쿼리
|
||||
│ └── v2_pmplus20.py # PMPLUS20 쿼리
|
||||
└── templates/
|
||||
└── stats.html # 비교 UI
|
||||
```
|
||||
|
||||
## API 엔드포인트
|
||||
|
||||
### v1 - PharmIT3000
|
||||
|
||||
| Endpoint | 설명 |
|
||||
|----------|------|
|
||||
| `/v1/api/stats` | 전체 통계 |
|
||||
| `/v1/api/stats/insurance` | 보험별 통계 |
|
||||
| `/v1/api/stats/time` | 시간가산별 통계 |
|
||||
| `/v1/api/stats/payment` | 결제수단별 통계 |
|
||||
| `/v1/api/stats/hospital` | 병원별 통계 |
|
||||
|
||||
### v2 - PMPLUS20
|
||||
|
||||
동일한 구조의 `/v2/api/stats/...` 엔드포인트
|
||||
|
||||
### 비교
|
||||
|
||||
| Endpoint | 설명 |
|
||||
|----------|------|
|
||||
| `/api/compare` | v1 vs v2 비교 |
|
||||
|
||||
## 쿼리 파라미터
|
||||
|
||||
- `from`: 시작일 (YYYYMMDD)
|
||||
- `to`: 종료일 (YYYYMMDD)
|
||||
|
||||
예: `/v1/api/stats?from=20260401&to=20260401`
|
||||
|
||||
## 테이블 매핑
|
||||
|
||||
| 역할 | PharmIT3000 (v1) | PMPLUS20 (v2) |
|
||||
|------|-----------------|---------------|
|
||||
| 판매 헤더 | PM_PRES.PS_MAIN | PM_MAIN.TBSIM040_28 |
|
||||
| 판매 상세 | PM_PRES.PS_SUB_PHARM | PM_MAIN.TBSIM040_29 |
|
||||
| 수납 정보 | PM_PRES.CD_SUNAB | PM_MAIN.TBSIR000_01 |
|
||||
| 약품 마스터 | PM_DRUG.CD_GOODS | PM_MAIN.TBSIM040_01 |
|
||||
|
||||
## 실행
|
||||
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
python app.py
|
||||
```
|
||||
|
||||
서버: http://0.0.0.0:5060
|
||||
|
||||
## 환경변수
|
||||
|
||||
```bash
|
||||
PHARMIT_SERVER=192.168.0.4\PM2014
|
||||
PHARMIT_USER=sa
|
||||
PHARMIT_PASS=password
|
||||
|
||||
PMPLUS_SERVER=192.168.0.4\PM2014
|
||||
PMPLUS_USER=sa
|
||||
PMPLUS_PASS=password
|
||||
```
|
||||
Reference in New Issue
Block a user