refactor: remove audit legacy binding fallback

This commit is contained in:
wren
2026-05-07 18:03:40 +08:00
parent ad367ac5bf
commit 59f2737f80
@@ -195,52 +195,8 @@ class AuditServiceImpl(IAuditService):
if getattr(document, "groupId", None):
raise LeauditException(StatusCodeEnum.HTTP_400_BAD_REQUEST, "当前子类型未绑定可执行规则集,请先检查二级分组规则配置")
if binding is None:
bindingResult = await session.execute(
text(
"""
SELECT
rs.id AS rule_set_id,
COALESCE(rs.current_version_id, fallback_rv.id) AS rule_version_id,
COALESCE(current_rv.oss_url, fallback_rv.oss_url) AS rule_source_oss_url,
COALESCE(current_rv.file_sha256, fallback_rv.file_sha256) AS rule_source_sha256,
COALESCE(current_rv.metadata_type_id, fallback_rv.metadata_type_id) AS rule_type_id
FROM leaudit_rule_type_bindings b
JOIN leaudit_rule_sets rs ON rs.id = b.rule_set_id
LEFT JOIN leaudit_rule_versions current_rv ON current_rv.id = rs.current_version_id
LEFT JOIN LATERAL (
SELECT
rv.id,
rv.oss_url,
rv.file_sha256,
rv.metadata_type_id
FROM leaudit_rule_versions rv
WHERE rv.rule_set_id = rs.id
AND rv.status IN ('published', 'rollback')
ORDER BY rv.version_seq DESC, rv.id DESC
LIMIT 1
) fallback_rv ON TRUE
WHERE b.doc_type_id = :doc_type_id
AND b.is_active = true
AND b.deleted_at IS NULL
AND (
b.region = :region
OR b.region = 'default'
OR b.region IS NULL
OR b.region = ''
)
ORDER BY
CASE WHEN b.region = :region THEN 0 ELSE 1 END,
b.priority DESC,
b.id DESC
LIMIT 1
"""
),
{"doc_type_id": document.typeId, "region": document.region},
)
binding = bindingResult.mappings().first()
if not binding or not binding["rule_set_id"] or not binding["rule_version_id"]:
raise LeauditException(StatusCodeEnum.HTTP_400_BAD_REQUEST, "当前文档类型未绑定可用规则版本")
if binding is None or not binding["rule_set_id"] or not binding["rule_version_id"]:
raise LeauditException(StatusCodeEnum.HTTP_400_BAD_REQUEST, "当前文档未绑定可执行规则集,请先检查二级分组规则配置")
triggerSource = f"{'retry' if Force else 'upload'}:{normalizedSpeed}"