diff --git a/jituan/views.py b/jituan/views.py index 3c9e7a1..f281de4 100644 --- a/jituan/views.py +++ b/jituan/views.py @@ -798,7 +798,33 @@ class ClubManageView(APIView): 'data': self._serialize(club, full=True), }) - return Response({'code': 400, 'msg': '无效 action,支持 list/get/update/create'}) + if action in ('seed_invite_status', 'seed_invite'): + from jituan.services.club_seed_invite import ( + club_invite_seed_status, + ensure_club_seed_invite, + ) + if action == 'seed_invite_status': + return Response({ + 'code': 0, + 'data': club_invite_seed_status(club_id), + }) + result = ensure_club_seed_invite(club_id) + if not result.get('ok'): + return Response({'code': 400, 'msg': result.get('msg') or '种子失败'}) + club = Club.query.filter(club_id=club_id).first() + return Response({ + 'code': 0, + 'msg': result.get('msg') or 'ok', + 'data': { + **result, + 'club': self._serialize(club, full=True) if club else None, + }, + }) + + return Response({ + 'code': 400, + 'msg': '无效 action,支持 list/get/update/create/seed_invite/seed_invite_status', + }) except Exception: logger.exception('ClubManageView 异常') return Response({'code': 99, 'msg': '俱乐部配置操作失败'}, status=500)