# -*- coding: utf-8 -*- import sys import io sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace') sys.path.insert(0, 'c:\\Users\\청춘약국\\source\\pharmacy-pos-qr-system\\backend') from db.dbsetup import get_db_session from sqlalchemy import text session = get_db_session('PM_DRUG') apc = '0230237810109' print(f'=== APC "{apc}" 검색 ===\n') # 1. CD_GOODS에서 안텔민킹 확인 print('1. CD_GOODS (안텔민킹):') result = session.execute(text(""" SELECT DrugCode, GoodsName, BARCODE, BaseCode FROM CD_GOODS WHERE DrugCode = 'LB000003157' """)) for row in result: print(f' BARCODE: [{row.BARCODE}]') # 2. CD_BARCODE에서 DRUGCODE로 검색 print('\n2. CD_BARCODE (DRUGCODE=LB000003157):') result2 = session.execute(text(""" SELECT DRUGCODE, BARCODE, BASECODE, ETCNAME FROM CD_BARCODE WHERE DRUGCODE = 'LB000003157' """)) rows = list(result2) if rows: for row in rows: print(f' BARCODE: {row.BARCODE}, BASECODE: {row.BASECODE}') else: print(' (없음)') # 3. CD_BARCODE에서 APC 직접 검색 print(f'\n3. CD_BARCODE에서 BARCODE="{apc}":') result3 = session.execute(text(f""" SELECT DRUGCODE, BARCODE, BASECODE, ETCNAME FROM CD_BARCODE WHERE BARCODE = '{apc}' """)) rows = list(result3) if rows: for row in rows: print(f' ★ 발견! DRUGCODE: {row.DRUGCODE}') else: print(' (없음)') # 4. CD_GOODS에서 BARCODE로 검색 print(f'\n4. CD_GOODS에서 BARCODE="{apc}":') result4 = session.execute(text(f""" SELECT DrugCode, GoodsName, BARCODE FROM CD_GOODS WHERE BARCODE = '{apc}' """)) rows = list(result4) if rows: for row in rows: print(f' ★ 발견! {row.DrugCode}: {row.GoodsName}') else: print(' (없음)') # 5. 전체 DB에서 LIKE 검색 print(f'\n5. 전체 LIKE 검색:') result5 = session.execute(text(f""" SELECT DrugCode, GoodsName, BARCODE FROM CD_GOODS WHERE BARCODE LIKE '%{apc}%' """)) rows = list(result5) if rows: for row in rows: print(f' ★ {row.DrugCode}: BARCODE=[{row.BARCODE}]') else: print(' (없음)') session.close()