62 lines
2.3 KiB
Python
62 lines
2.3 KiB
Python
"""一键初始化星之界(xzj)俱乐部(默认不批量给所有客服加任职)。"""
|
||
from django.core.management import call_command
|
||
from django.core.management.base import BaseCommand
|
||
|
||
from jituan.models import Club
|
||
|
||
|
||
class Command(BaseCommand):
|
||
help = '创建星之界电竞俱乐部(xzj);任职请单独 seed_admin_assignments --phone ...'
|
||
|
||
def add_arguments(self, parser):
|
||
parser.add_argument(
|
||
'--wx-appid', default='wxdefa454152e78a03', help='星之界小程序 appid',
|
||
)
|
||
parser.add_argument(
|
||
'--assignments',
|
||
action='store_true',
|
||
help='同时给 --phone 指定客服加 xzj 任职(需配合 --phone)',
|
||
)
|
||
parser.add_argument(
|
||
'--phone', type=str, default='', help='与 --assignments 联用:客服手机号',
|
||
)
|
||
|
||
def handle(self, *args, **options):
|
||
wx_appid = (options.get('wx_appid') or '').strip()
|
||
club_id = 'xzj'
|
||
name = '星之界电竞'
|
||
|
||
if Club.query.filter(club_id=club_id).exists():
|
||
self.stdout.write(self.style.WARNING(f'俱乐部 {club_id} 已存在,跳过 create_club'))
|
||
else:
|
||
self.stdout.write(f'创建俱乐部 {club_id} ...')
|
||
call_command(
|
||
'create_club',
|
||
club_id,
|
||
name=name,
|
||
wx_appid=wx_appid,
|
||
)
|
||
|
||
if options.get('assignments'):
|
||
phone = (options.get('phone') or '').strip()
|
||
if not phone:
|
||
self.stdout.write(self.style.WARNING(
|
||
'未指定 --phone,跳过任职。示例:'
|
||
'python manage.py seed_club_xzj --assignments --phone 你的手机号'
|
||
))
|
||
else:
|
||
call_command(
|
||
'seed_admin_assignments',
|
||
club_id=club_id,
|
||
phone=phone,
|
||
)
|
||
else:
|
||
self.stdout.write(
|
||
'未加任职。需要时在后台「数据范围」配置,或:'
|
||
'python manage.py seed_admin_assignments --phone 手机号 --club-id xzj'
|
||
)
|
||
|
||
self.stdout.write(self.style.SUCCESS(
|
||
f'星之界 {club_id} 就绪。请在后台「俱乐部配置」检查支付密钥。'
|
||
))
|