feat(yunda): support date arg (date takes precedence over offset)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -169,18 +169,18 @@ def yunda_smart_menu_click(page, menu_path):
|
||||
page.wait_for_timeout(1000)
|
||||
|
||||
|
||||
def yunda_expected_download(page, force=False):
|
||||
def yunda_expected_download(page, force=False, date=None):
|
||||
"""韵达:应到货物数据下载(内部含异常兜底重试,路由层无感)。"""
|
||||
|
||||
return with_retry(
|
||||
"韵达",
|
||||
"应到",
|
||||
lambda: yunda_expected_download_impl(page, force=force),
|
||||
lambda: yunda_expected_download_impl(page, force=force, date=date),
|
||||
lambda: yunda_reset(page),
|
||||
)
|
||||
|
||||
|
||||
def yunda_expected_download_impl(page, force=False):
|
||||
def yunda_expected_download_impl(page, force=False, date=None):
|
||||
"""韵达:应到货物数据下载(单次执行,无重试;供自动化测试探测原始结果用)。"""
|
||||
print("\n▶ 开始执行【韵达 - 应到货物数据下载】任务...")
|
||||
|
||||
@@ -211,11 +211,15 @@ def yunda_expected_download_impl(page, force=False):
|
||||
# 2. 读取服务端日期偏移(0=今天,1=昨天…),单日范围:起止同日
|
||||
offset = state_store.get_offset("韵达")
|
||||
today = datetime.now()
|
||||
target = today - timedelta(days=offset)
|
||||
if date:
|
||||
target = datetime.strptime(date, "%Y-%m-%d")
|
||||
else:
|
||||
target = today - timedelta(days=offset)
|
||||
target_ymd = f"{target.year}-{target.month}-{target.day}"
|
||||
start_date_ymd = target_ymd
|
||||
today_ymd = target_ymd
|
||||
print(f">> 设置查询日期: [{target_ymd}](偏移 {offset},0=今天)")
|
||||
src = f"指定 {date}" if date else f"偏移 {offset},0=今天"
|
||||
print(f">> 设置查询日期: [{target_ymd}]({src})")
|
||||
|
||||
# 设定起始时间
|
||||
print(" >> 设置起始时间...")
|
||||
@@ -422,18 +426,18 @@ def yunda_expected_download_impl(page, force=False):
|
||||
return False
|
||||
|
||||
|
||||
def yunda_actual_download(page, force=False):
|
||||
def yunda_actual_download(page, force=False, date=None):
|
||||
"""韵达:实到货物数据下载(内部含异常兜底重试,路由层无感)。"""
|
||||
|
||||
return with_retry(
|
||||
"韵达",
|
||||
"实到",
|
||||
lambda: yunda_actual_download_impl(page),
|
||||
lambda: yunda_actual_download_impl(page, date=date),
|
||||
lambda: yunda_reset(page),
|
||||
)
|
||||
|
||||
|
||||
def yunda_actual_download_impl(page):
|
||||
def yunda_actual_download_impl(page, date=None):
|
||||
"""韵达:实到货物数据下载(单次执行,无重试;供自动化测试探测原始结果用)。"""
|
||||
print("\n▶ 开始执行【韵达 - 实到货物数据下载】任务...")
|
||||
|
||||
@@ -464,12 +468,15 @@ def yunda_actual_download_impl(page):
|
||||
|
||||
offset = state_store.get_offset("韵达", "actual")
|
||||
today = datetime.now()
|
||||
target = today - timedelta(days=offset)
|
||||
if date:
|
||||
target = datetime.strptime(date, "%Y-%m-%d")
|
||||
else:
|
||||
target = today - timedelta(days=offset)
|
||||
start_date = target # 单日范围:起止同日
|
||||
today = target # 让下方"截止时间"选择器也指向 target
|
||||
src = f"指定 {date}" if date else f"偏移 {offset},0=今天"
|
||||
print(
|
||||
f">> 设置实到查询日期: [{target.year}-{target.month}-{target.day}]"
|
||||
f"(偏移 {offset},0=今天)"
|
||||
f">> 设置实到查询日期: [{target.year}-{target.month}-{target.day}]({src})"
|
||||
)
|
||||
|
||||
print(" >> 正在设定起始时间...")
|
||||
|
||||
Reference in New Issue
Block a user