21 lines
653 B
Python
21 lines
653 B
Python
"""risk_rule 仓储:读启用中的风控规则(规则引擎表驱动数据源)。"""
|
|||
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
from sqlalchemy import select
|
||
|
|
|
||
|
|
from model.risk_rule import RiskRule
|
||
|
|
from repositories.base import BaseRepository
|
||
|
|
|
||
|
|
|
||
|
|
class RiskRuleRepo(BaseRepository):
|
||
|
|
model = RiskRule
|
||
|
|
|
||
|
|
async def list_enabled(self) -> list[RiskRule]:
|
||
|
|
"""加载启用中的规则,按 rule_id 升序,供规则引擎逐条路由判断。"""
|
||
|
|
stmt = (
|
||
|
|
select(RiskRule)
|
||
|
|
.where(RiskRule.status == "启用")
|
||
|
|
.order_by(RiskRule.rule_id)
|
||
|
|
)
|
||
|
|
return list((await self.db.scalars(stmt)).all())
|