diff --git a/backend/app.py b/backend/app.py index d239d09..86f0f69 100644 --- a/backend/app.py +++ b/backend/app.py @@ -2482,19 +2482,25 @@ def api_sales_detail(): drug_session = db_manager.get_session('PM_DRUG') # 판매 내역 조회 (최근 N일) + # CD_GOODS.BARCODE가 없으면 CD_ITEM_UNIT_MEMBER.CD_CD_BARCODE 사용 (세트상품/자체등록 바코드) sales_query = text(""" SELECT S.SL_DT_appl as sale_date, S.SL_NO_order as item_order, S.DrugCode as drug_code, ISNULL(G.GoodsName, '알 수 없음') as product_name, - ISNULL(G.BARCODE, '') as barcode, + COALESCE(NULLIF(G.BARCODE, ''), U.CD_CD_BARCODE, '') as barcode, ISNULL(G.SplName, '') as supplier, ISNULL(S.QUAN, 1) as quantity, ISNULL(S.SL_TOTAL_PRICE, 0) as total_price_db, ISNULL(G.Saleprice, 0) as unit_price FROM SALE_SUB S LEFT JOIN PM_DRUG.dbo.CD_GOODS G ON S.DrugCode = G.DrugCode + OUTER APPLY ( + SELECT TOP 1 CD_CD_BARCODE + FROM PM_DRUG.dbo.CD_ITEM_UNIT_MEMBER + WHERE DRUGCODE = S.DrugCode AND CD_CD_BARCODE IS NOT NULL AND CD_CD_BARCODE != '' + ) U WHERE S.SL_DT_appl >= CONVERT(VARCHAR(8), DATEADD(DAY, -:days, GETDATE()), 112) ORDER BY S.SL_DT_appl DESC, S.SL_NO_order DESC """)