fix(baekje): /orders/summary-by-kd에서 새 API 사용
- get_order_list(include_details=True)로 한 번에 조회 - 접수 상태(확정 전)도 집계에 포함 - pending_count, approved_count 응답에 추가
This commit is contained in:
parent
497aeee75f
commit
1088720081
@ -321,8 +321,9 @@ def api_baekje_orders_by_kd():
|
||||
try:
|
||||
session = get_baekje_session()
|
||||
|
||||
# 1. 주문 목록 조회
|
||||
orders_result = session.get_order_list(start_date, end_date)
|
||||
# 주문 목록 + 상세를 한 번에 조회 (include_details=True)
|
||||
# 접수 상태(확정 전)도 포함됨!
|
||||
orders_result = session.get_order_list(start_date, end_date, include_details=True)
|
||||
|
||||
if not orders_result.get('success'):
|
||||
return jsonify({
|
||||
@ -340,22 +341,16 @@ def api_baekje_orders_by_kd():
|
||||
'order_count': 0,
|
||||
'period': {'start': start_date, 'end': end_date},
|
||||
'by_kd_code': {},
|
||||
'total_products': 0
|
||||
'total_products': 0,
|
||||
'pending_count': 0,
|
||||
'approved_count': 0
|
||||
})
|
||||
|
||||
# 2. 주문 상세 정보 배치 조회 (items 포함)
|
||||
details_result = session.get_order_details_batch(orders=orders)
|
||||
|
||||
if not details_result.get('success'):
|
||||
logger.warning(f"백제 주문 상세 조회 실패: {details_result.get('error')}")
|
||||
|
||||
details = details_result.get('details', {})
|
||||
|
||||
# KD코드별 집계
|
||||
# KD코드별 집계 (items가 이미 각 order에 포함됨)
|
||||
kd_summary = {}
|
||||
|
||||
for order_num, detail in details.items():
|
||||
for item in detail.get('items', []):
|
||||
for order in orders:
|
||||
for item in order.get('items', []):
|
||||
# 취소 상태 제외
|
||||
status = item.get('status', '').strip()
|
||||
if '취소' in status or '삭제' in status:
|
||||
@ -383,11 +378,16 @@ def api_baekje_orders_by_kd():
|
||||
kd_summary[kd_code]['boxes'] += quantity
|
||||
kd_summary[kd_code]['units'] += total_units
|
||||
|
||||
logger.info(f"백제 주문량 집계: {start_date}~{end_date}, {len(orders)}건 주문, {len(kd_summary)}개 품목")
|
||||
pending_count = orders_result.get('pending_count', 0)
|
||||
approved_count = orders_result.get('approved_count', 0)
|
||||
|
||||
logger.info(f"백제 주문량 집계: {start_date}~{end_date}, {len(orders)}건 (접수:{pending_count}, 승인:{approved_count}), {len(kd_summary)}개 품목")
|
||||
|
||||
return jsonify({
|
||||
'success': True,
|
||||
'order_count': len(orders),
|
||||
'pending_count': pending_count, # 접수 상태 (확정 전)
|
||||
'approved_count': approved_count, # 승인 상태 (확정됨)
|
||||
'period': {'start': start_date, 'end': end_date},
|
||||
'by_kd_code': kd_summary,
|
||||
'total_products': len(kd_summary)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user