-- PAAI (Pharmacist Assistant AI) 로그 스키마 -- 생성일: 2026-03-04 CREATE TABLE IF NOT EXISTS paai_logs ( id INTEGER PRIMARY KEY AUTOINCREMENT, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, -- 요청 정보 pre_serial TEXT, -- 처방번호 patient_code TEXT, -- 환자코드 (CusCode) patient_name TEXT, -- 환자명 (마스킹: 김**) -- 질병 정보 disease_code_1 TEXT, -- St1 (상병코드1) disease_name_1 TEXT, -- 상병명1 disease_code_2 TEXT, -- St2 (상병코드2) disease_name_2 TEXT, -- 상병명2 -- 처방 정보 current_medications TEXT, -- JSON: 현재 처방 [{code, name, dosage, ...}] current_med_count INTEGER, -- 현재 처방 약품 수 previous_serial TEXT, -- 이전 처방번호 previous_medications TEXT, -- JSON: 이전 처방 prescription_changes TEXT, -- JSON: {added, removed, changed} -- OTC 이력 otc_history TEXT, -- JSON: {purchases, frequent_items} otc_visit_count INTEGER, -- OTC 구매 횟수 -- KIMS 상호작용 kims_drug_codes TEXT, -- JSON: 검사한 KD코드 배열 kims_drug_count INTEGER, -- 검사한 약품 수 kims_interactions TEXT, -- JSON: 상호작용 결과 kims_interaction_count INTEGER, -- 상호작용 건수 kims_has_severe BOOLEAN DEFAULT 0, -- 심각한 상호작용 (severity 1,2) kims_response_time_ms INTEGER, -- KIMS API 응답시간 -- AI 분석 ai_prompt TEXT, -- AI에 전달한 프롬프트 ai_model TEXT, -- 사용된 모델 ai_response TEXT, -- JSON: AI 분석 결과 ai_response_time_ms INTEGER, -- AI 응답 시간 ai_token_count INTEGER, -- 토큰 사용량 -- 상태 status TEXT DEFAULT 'pending', -- pending, kims_done, success, error error_message TEXT, -- 피드백 feedback_useful INTEGER, -- 1=유용, 0=아님, NULL=미응답 feedback_comment TEXT -- 약사 코멘트 ); -- 인덱스 CREATE INDEX IF NOT EXISTS idx_paai_created ON paai_logs(created_at); CREATE INDEX IF NOT EXISTS idx_paai_patient ON paai_logs(patient_code); CREATE INDEX IF NOT EXISTS idx_paai_status ON paai_logs(status); CREATE INDEX IF NOT EXISTS idx_paai_serial ON paai_logs(pre_serial); CREATE INDEX IF NOT EXISTS idx_paai_severe ON paai_logs(kims_has_severe);