feat: 罚款分红费率按俱乐部可读可配,接入提现设置
个人利率优先,其次 club_fadan_fenhong_lilv,再回退全局表;组队均摊仍按每张罚单金额×费率。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -43,9 +43,22 @@ def _read_global_fenhong_rate(lilv_shenfen):
|
||||
return None
|
||||
|
||||
|
||||
def _read_club_fenhong_rate(club_id, lilv_shenfen):
|
||||
"""俱乐部级罚款分红费率(club_fadan_fenhong_lilv)。"""
|
||||
from jituan.models import ClubFadanFenhongLilv
|
||||
|
||||
club_id = _normalize_club_id(club_id)
|
||||
row = ClubFadanFenhongLilv.query.filter(
|
||||
club_id=club_id, shenfen=int(lilv_shenfen),
|
||||
).first()
|
||||
if row is not None and row.lilv is not None and Decimal(str(row.lilv)) > 0:
|
||||
return row.lilv
|
||||
return None
|
||||
|
||||
|
||||
def _get_fenhong_rate(fenhongzhe_id, fenhong_shenfen, lilv_shenfen, club_id='xq'):
|
||||
"""
|
||||
获取分红利率:个人单独利率 > 0 时优先;否则回退全局 fadan_fenhong_lilv。
|
||||
获取分红利率:个人单独利率 > 0 优先;否则俱乐部配置;再回退全局 fadan_fenhong_lilv。
|
||||
"""
|
||||
club_id = _normalize_club_id(club_id)
|
||||
try:
|
||||
@@ -61,6 +74,10 @@ def _get_fenhong_rate(fenhongzhe_id, fenhong_shenfen, lilv_shenfen, club_id='xq'
|
||||
except PenaltyBonus.DoesNotExist:
|
||||
pass
|
||||
|
||||
club_rate = _read_club_fenhong_rate(club_id, lilv_shenfen)
|
||||
if club_rate is not None:
|
||||
return club_rate
|
||||
|
||||
return _read_global_fenhong_rate(lilv_shenfen)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user