fix: KIMS 코드 조회 쿼리 최적화 (중복 제거)
This commit is contained in:
parent
68dcb919e4
commit
4c0cd68267
@ -4153,13 +4153,14 @@ def api_kims_interaction_check():
|
|||||||
}), 400
|
}), 400
|
||||||
|
|
||||||
# 1. DrugCode → BASECODE(KIMS 9자리) 변환
|
# 1. DrugCode → BASECODE(KIMS 9자리) 변환
|
||||||
|
# CD_BARCODE.BASECODE가 KIMS KD코드 (9자리)
|
||||||
drug_session = db_manager.get_session('PM_DRUG')
|
drug_session = db_manager.get_session('PM_DRUG')
|
||||||
placeholders = ','.join([f"'{c}'" for c in drug_codes])
|
placeholders = ','.join([f"'{c}'" for c in drug_codes])
|
||||||
|
|
||||||
code_query = text(f"""
|
code_query = text(f"""
|
||||||
SELECT DISTINCT G.DrugCode, G.GoodsName, B.BASECODE
|
SELECT G.DrugCode, G.GoodsName,
|
||||||
|
(SELECT TOP 1 BASECODE FROM CD_BARCODE WHERE DrugCode = G.DrugCode AND BASECODE IS NOT NULL) as BASECODE
|
||||||
FROM CD_GOODS G
|
FROM CD_GOODS G
|
||||||
LEFT JOIN CD_BARCODE B ON G.DrugCode = B.DrugCode
|
|
||||||
WHERE G.DrugCode IN ({placeholders})
|
WHERE G.DrugCode IN ({placeholders})
|
||||||
""")
|
""")
|
||||||
code_result = drug_session.execute(code_query).fetchall()
|
code_result = drug_session.execute(code_query).fetchall()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user