from django.db import models import django.utils.timezone as timezone from rbac.models import SoftCommonModel, CommonModel from question.models import Questioncat # Create your models here. class Company(SoftCommonModel): """ 客户企业 """ name = models.CharField(max_length=60, verbose_name="名称", unique=True) pid = models.ForeignKey("self", null=True, blank=True, on_delete=models.SET_NULL, verbose_name="父") class Meta: verbose_name = "客户企业" verbose_name_plural = verbose_name def __str__(self): return self.name class Consumer(SoftCommonModel): """ 学员 """ name = models.CharField(max_length=200, verbose_name="姓名") username = models.CharField(max_length=11, default="", verbose_name="手机号码/邮箱", unique=True) company = models.ForeignKey("Company", null=True, blank=True, on_delete=models.SET_NULL, verbose_name="所属单位") openid = models.CharField(max_length=200, verbose_name="openid", null=True, blank=True, unique=True) avatar = models.CharField(default="/media/default/avatar.png",max_length=1000, null=True, blank=True, verbose_name="头像") nickname = models.CharField(max_length=200, verbose_name="昵称", null=True, blank=True) subjects = models.ManyToManyField(Questioncat, verbose_name="付费学科", through="PaySubject") class Meta: verbose_name = "客户" verbose_name_plural = verbose_name def __str__(self): return self.name class PaySubject(CommonModel): ''' 付费学科关联表 ''' consumer = models.ForeignKey(Consumer, on_delete=models.CASCADE) subject = models.ForeignKey(Questioncat, on_delete=models.CASCADE)