diff --git a/orders/services/team_recruit.py b/orders/services/team_recruit.py index 7ab5c95..b53ccf9 100644 --- a/orders/services/team_recruit.py +++ b/orders/services/team_recruit.py @@ -654,7 +654,10 @@ def serialize_recruit_public(rec, order=None, *, include_game_ids=False) -> dict 'jieshao': (order.Description or '') if order else '', 'tupian': (order.ImageURL or '') if order else '', 'order_zhuangtai': getattr(order, 'Status', None) if order else None, + 'shangjia_id': '', 'shangjia_nicheng': '', + 'sj_avatar': '', + 'leader_avatar': '', 'leader_deal_stat': None, } if order: @@ -662,7 +665,24 @@ def serialize_recruit_public(rec, order=None, *, include_game_ids=False) -> dict if order.Platform == 2: try: ext = order.shangjia_kuozhan + sj_uid = (ext.MerchantID or '').strip() + data['shangjia_id'] = sj_uid data['shangjia_nicheng'] = ext.MerchantNickname or '' + # 对齐抢单池:商家头像取 User.Avatar + if sj_uid: + try: + sj_user = User.query.filter(UserUID=sj_uid).first() + if sj_user: + data['sj_avatar'] = getattr(sj_user, 'Avatar', None) or '' + if not data['shangjia_nicheng']: + try: + boss = getattr(sj_user, 'BossProfile', None) + if boss and getattr(boss, 'nickname', None): + data['shangjia_nicheng'] = boss.nickname + except Exception: + pass + except Exception: + pass except Exception: pass # 自动结算字段:仅锁定且订单结算中 @@ -671,8 +691,10 @@ def serialize_recruit_public(rec, order=None, *, include_game_ids=False) -> dict try: u = User.query.filter(UserUID=rec.leader_uid).select_related('DashouProfile').first() - if u and getattr(u, 'DashouProfile', None): - data['leader_nicheng'] = u.DashouProfile.nicheng or '' + if u: + data['leader_avatar'] = getattr(u, 'Avatar', None) or '' + if getattr(u, 'DashouProfile', None): + data['leader_nicheng'] = u.DashouProfile.nicheng or '' except Exception: pass