feat(collect): choose product status scope
This commit is contained in:
@@ -26,6 +26,14 @@ PRODUCT_STATUS_LABELS = {
|
||||
STATUS_UNKNOWN: "状态未知",
|
||||
}
|
||||
|
||||
SCOPE_NORMAL_ONLY = "normal_only"
|
||||
SCOPE_ALL = "all"
|
||||
|
||||
# Kept as explicit collection aliases while generation and apply adopt the
|
||||
# shared scope values in their own tasks.
|
||||
COLLECT_SCOPE_NORMAL_ONLY = SCOPE_NORMAL_ONLY
|
||||
COLLECT_SCOPE_ALL = SCOPE_ALL
|
||||
|
||||
_WHITESPACE_RE = re.compile(r"\s+")
|
||||
_NOTE_LIMIT = 2000
|
||||
|
||||
@@ -93,6 +101,19 @@ def partition_tasks(tasks) -> dict:
|
||||
return grouped
|
||||
|
||||
|
||||
def normalize_collect_scope(value) -> str:
|
||||
value = str(value or "").strip().lower()
|
||||
return SCOPE_ALL if value == SCOPE_ALL else SCOPE_NORMAL_ONLY
|
||||
|
||||
|
||||
def should_collect_content(status, scope) -> bool:
|
||||
return normalize_collect_scope(scope) == COLLECT_SCOPE_ALL or is_normal(status)
|
||||
|
||||
|
||||
def collect_skip_reason(status) -> str:
|
||||
return f"{status_label(status)},按本轮范围略过"
|
||||
|
||||
|
||||
def _alert_note(title: str, description: str) -> str:
|
||||
parts = []
|
||||
if title:
|
||||
|
||||
Reference in New Issue
Block a user