초기 정리: PIT3000 분석 자료 업로드
- 좌표/SQL/API 분석 문서화 - 재현 스크립트와 예시 응답 추가 - 개인정보/원본 실행파일 제외
This commit is contained in:
66
docs/api-response.md
Normal file
66
docs/api-response.md
Normal file
@@ -0,0 +1,66 @@
|
||||
# API/JSON 응답 설계 예시
|
||||
|
||||
PIT 원본은 JSON API라기보다는 SQL + BLOB + health.kr HTML/이미지 URL을 조합합니다. 현대화할 때는 아래처럼 normalization하는 것을 권장합니다.
|
||||
|
||||
## Endpoint 예시
|
||||
|
||||
```http
|
||||
GET /api/drugs/{drugcode}
|
||||
GET /api/drugs/{drugcode}/images
|
||||
GET /api/drugs/{drugcode}/pictograms
|
||||
```
|
||||
|
||||
## 응답 예시
|
||||
|
||||
```json
|
||||
{
|
||||
"drugcode": "A000000001",
|
||||
"dik_code": "123456789",
|
||||
"sung_code": "1234567TB",
|
||||
"sung_code_kind": "ingredient_code",
|
||||
"names": {
|
||||
"etcname": "샘플정",
|
||||
"splname": "샘플제약",
|
||||
"ingredient_name_en": "Sample ingredient"
|
||||
},
|
||||
"classification": {
|
||||
"print_type": "해열진통소염제",
|
||||
"effctname": "정제",
|
||||
"character": "흰색 원형 정제"
|
||||
},
|
||||
"drug_info": {
|
||||
"save_medi": "실온 보관",
|
||||
"indic_medi": "용법용량 예시",
|
||||
"effect": "효능/효과 예시",
|
||||
"adr": "주의사항 예시",
|
||||
"interaction": "상호작용 예시",
|
||||
"gen_medi": "복약지도 예시"
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"source": "PM_IMAGE..DrugImg",
|
||||
"expr1": "1",
|
||||
"content_type": "image/jpeg",
|
||||
"url": "/api/drugs/A000000001/images/1.jpg",
|
||||
"width_hint": 183,
|
||||
"height_hint": 100
|
||||
},
|
||||
{
|
||||
"source": "health.kr",
|
||||
"url": "https://www.health.kr/drug_info/sb/zoom.asp?drug_code=123456789&print_front=&print_back="
|
||||
}
|
||||
],
|
||||
"pictograms": [
|
||||
{
|
||||
"pic_code": "P001",
|
||||
"source": "PM_DRUG..CD_PICTOGRAM",
|
||||
"url": "/api/drugs/A000000001/pictograms/P001.jpg"
|
||||
}
|
||||
],
|
||||
"external_links": {
|
||||
"health_kr_simple": "https://health.kr/searchDrug/result_drug_simple.asp?drug_cd=123456789",
|
||||
"health_kr_zoom": "https://www.health.kr/drug_info/sb/zoom.asp?drug_code=123456789&print_front=&print_back=",
|
||||
"pharm_or_kr_zoom": "https://www.pharm.or.kr/search/zoom.asp?drug_code=123456789"
|
||||
}
|
||||
}
|
||||
```
|
||||
46
docs/flow.md
Normal file
46
docs/flow.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# 의약품 상세/이미지 흐름
|
||||
|
||||
## 1. 입력
|
||||
|
||||
PIT 내부의 약품 단위 key는 상황에 따라 `DRUGCODE`, `DIK_CODE`, `SUNG_CODE`가 함께 등장합니다.
|
||||
|
||||
- `DRUGCODE`: PIT/PM 내부 약품 코드
|
||||
- `DIK_CODE`: health.kr/식별 이미지 계열에서 사용하는 식별 코드
|
||||
- `SUNG_CODE`: 성분코드
|
||||
|
||||
## 2. 기본 해석 흐름
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A[DRUGCODE] --> B[PM_DRUG..CD_GOODS]
|
||||
B --> C[DIK_CODE]
|
||||
B --> D[SUNG_CODE 성분코드]
|
||||
A --> E[PM_DRUG..CD_ETCGOODS + CD_MC]
|
||||
D --> F[PM_DRUG..CD_SUNG]
|
||||
C --> G[PM_IMAGE..DrugImg]
|
||||
C --> H[health.kr result_drug_simple.asp]
|
||||
C --> I[health.kr zoom.asp]
|
||||
C --> J[PM_DRUG..CD_PICTOGRAM_SUB/CD_PICTOGRAM]
|
||||
```
|
||||
|
||||
## 3. 이미지 후보 우선순위
|
||||
|
||||
1. `PM_IMAGE..DrugImg`의 `DRUG_IMG` BLOB
|
||||
2. `C:\Dik20\Data\Drugimg2005.MDB` / `C:\Dik2004\Data\Drugimg.MDB`
|
||||
3. health.kr 확대 이미지 URL
|
||||
4. pictogram BLOB
|
||||
|
||||
## 4. HTML/인쇄 쪽에서 관찰된 임시 파일
|
||||
|
||||
```text
|
||||
\Image\Temp\Sik_{...}.jpg
|
||||
\Image\Temp\Pito_{...}.jpg
|
||||
```
|
||||
|
||||
PIT는 BLOB을 임시 jpg로 쓰고 다음 형태의 HTML img tag를 구성하는 흔적이 있습니다.
|
||||
|
||||
```html
|
||||
<img src="...jpg" width="183" height="100" border="0">
|
||||
<img src="...jpg" width="215" height="117" border="0">
|
||||
<img src="...jpg" width="59" height="100" border="0">
|
||||
```
|
||||
Reference in New Issue
Block a user