def create_merchant_group( merchant_id: int, name: str, notes: str, user_id: int = None, ) -> MerchantGroup: """ MerchantGroup create without permissions :param merchant_id: :param user_id: :param name: :param notes: :return: """ merchant = Merchant.objects.get(id=merchant_id) merchant_group_db = MerchantGroup.objects.filter( name=name, merchant=merchant).first() if merchant_group_db: raise ServiceValidationError('角色名不可重复!') user = User.objects.filter(id=user_id).first() group = Group(name=f'{merchant_id}_{uuid.uuid4()}') group.clean() group.save() print(group.name) merchant_group = MerchantGroup(group=group, create_user=user if user else None, merchant=merchant, notes=notes, name=name) merchant_group.clean() merchant_group.save() return merchant_group