## 처방 관리 (조제) 기능 - compounds API 추가 (목록/상세/환자별 조회) - 조제 시 자동 재고 차감 (FIFO) - 조제 내역 UI (EMR 스타일) - 조제 상세보기 모달 (처방구성, 재고소비내역) - 오늘/이번달 조제 통계 표시 ## 재고 원장 시스템 - stock-ledger API 구현 - 입출고 내역 실시간 추적 - 재고 현황 페이지 개선 (통계 카드 추가) - 입출고 원장 모달 UI - 약재별/전체 입출고 내역 조회 ## 확인된 동작 - 박주호 환자 오미자 200g 조제 - 재고 2000g → 1800g 정확히 차감 - 모든 입출고 stock_ledger에 기록 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2.2 KiB
2.2 KiB
한약 재고관리 시스템 - 프로젝트 상태
✅ 해결된 이슈 (2026-02-15)
- 입고장 상세보기 500 에러 - 해결 완료!
- 원인: receipt_date가 튜플 문자열로 저장됨, total_amount가 bytes로 저장됨
- 해결: 데이터베이스 값 수정 완료
- Flask 프로세스 중복 실행 문제 - 해결 완료!
- 해결: run_server.sh 스크립트 생성으로 단일 프로세스 관리
📝 최근 수정 사항 (2026-02-15)
✅ 완료된 작업
-
총금액 계산 문제 해결
app.py쿼리에서 중복된pr.total_amount제거SUM(prl.line_total) as total_amount사용- API가 정확한 총금액 1,551,900원 반환
-
UI 개선
- 입고장 목록에서 총금액을 굵은 파란색으로 강조
- 총수량을 작은 회색 글씨로 표시
- 테이블 헤더 순서 변경 (총금액이 먼저)
-
원산지 데이터 처리
- Excel에서 원산지(origin_country) 데이터 읽기 확인
- 데이터베이스 저장 확인
- 입고장 상세 화면에 원산지 표시
🔧 해결 필요
-
입고장 상세보기 오류
- 증상: 상세보기 버튼 클릭 시 500 에러
- 위치:
/api/purchase-receipts/<id>API - 원인: 조사 중
-
Flask 프로세스 관리
- 문제: 여러 Flask 프로세스가 중복 실행
- 해결 방법: 단일 프로세스로 관리 필요
🗄️ 데이터베이스 상태
- 입고장 1건 (ID: 6, 날짜: 2026-02-11)
- 총 29개 품목, 총금액 1,551,900원
- 도매상: (주)휴먼허브
🌐 서버 정보
- 포트: 5001
- 모드: Debug (자동 재시작 활성화)
- URL: http://localhost:5001
📂 주요 파일
app.py- Flask 백엔드database/kdrug.db- SQLite 데이터베이스templates/index.html- 프론트엔드 HTMLstatic/app.js- JavaScriptexcel_processor.py- Excel 파일 처리
🔄 Flask 서버 관리 명령어
# 모든 Flask 프로세스 종료
lsof -ti:5001 | xargs -r kill -9
# Flask 서버 시작 (디버그 모드)
source venv/bin/activate && python app.py
📋 다음 작업
- 입고장 상세보기 500 에러 수정
- Flask 프로세스 중복 실행 방지 설정
- 에러 로깅 개선