|
@@ -10,20 +10,20 @@ from apps.tenant.models import Tenant
|
|
|
|
|
|
class UserManager(BaseUserManager):
|
|
|
def create_administrator(self, username, password=None, **extra_fields):
|
|
|
- return self.create_user(User.ADMINSTRATOR, username, password, **extra_fields)
|
|
|
+ return self.create_user(User.SUPPER, username, password, **extra_fields)
|
|
|
|
|
|
- def create_tenant(self, username, password=None, **extra_fields):
|
|
|
- return self.create_user(User.TENANT, username, password, **extra_fields)
|
|
|
+ def create_tenant_admin(self, username, password=None, **extra_fields):
|
|
|
+ return self.create_user(User.ADMIN, username, password, **extra_fields)
|
|
|
|
|
|
def create_superuser_tenant(self, username, password=None, **extra_fields):
|
|
|
- u = self.create_tenant(username, password, **extra_fields)
|
|
|
+ u = self.create_administrator(username, password, **extra_fields)
|
|
|
u.is_active = True
|
|
|
u.is_superuser = True
|
|
|
u.save(using=self._db)
|
|
|
return u
|
|
|
|
|
|
def create_customer(self, username, password=None, **extra_fields):
|
|
|
- return self.create_user(User.CUSTOMER, username, password, **extra_fields)
|
|
|
+ return self.create_user(User.EMPLOYEE, username, password, **extra_fields)
|
|
|
|
|
|
def create_superuser(self, username, password, **extra_fields):
|
|
|
u = self.create_administrator(username, password, **extra_fields)
|
|
@@ -51,11 +51,18 @@ class UserManager(BaseUserManager):
|
|
|
return user
|
|
|
|
|
|
class User(AbstractBaseUser, PermissionsMixin):
|
|
|
- ADMINSTRATOR = 1 #管理者
|
|
|
- TENANT = 2 #检修人
|
|
|
- CUSTOMER = 3 #报修人
|
|
|
|
|
|
- type = models.PositiveSmallIntegerField(verbose_name=u"类型", editable=False)
|
|
|
+ SUPPER = 1
|
|
|
+ ADMIN = 2
|
|
|
+ EMPLOYEE = 3
|
|
|
+ REPAIR = 4
|
|
|
+ TYPE_CHOICES = (
|
|
|
+ (SUPPER, u'平台管理员'),
|
|
|
+ (ADMIN, u'管理者'),
|
|
|
+ (EMPLOYEE, u'检修人'),
|
|
|
+ (REPAIR, u'报修人'),
|
|
|
+ )
|
|
|
+ type = models.PositiveSmallIntegerField(verbose_name=u"类型",choices=TYPE_CHOICES, editable=False)
|
|
|
username = models.CharField(verbose_name=u'帐号', max_length=30, unique=True, db_index=True)
|
|
|
is_active = models.BooleanField(verbose_name=u'激活', default=True)
|
|
|
date_joined = models.DateTimeField(verbose_name=u'注册时间', default=timezone.now, editable=False)
|
|
@@ -86,26 +93,26 @@ class User(AbstractBaseUser, PermissionsMixin):
|
|
|
return self.username
|
|
|
|
|
|
def addAdministrator(self):
|
|
|
- self.type = self.type | self.ADMINSTRATOR
|
|
|
+ self.type = self.type | self.SUPPER
|
|
|
|
|
|
def addTenant(self):
|
|
|
- self.type = self.type | self.TENANT
|
|
|
+ self.type = self.type | self.ADMIN
|
|
|
|
|
|
def addCustomer(self):
|
|
|
- self.type = self.type | self.CUSTOMER
|
|
|
+ self.type = self.type | self.EMPLOYEE
|
|
|
|
|
|
def is_customer(self):
|
|
|
- if self.type == self.CUSTOMER:
|
|
|
+ if self.type == self.EMPLOYEE:
|
|
|
return True
|
|
|
return False
|
|
|
|
|
|
def is_tenant(self):
|
|
|
- if self.type == self.TENANT:
|
|
|
+ if self.type == self.ADMIN:
|
|
|
return True
|
|
|
return False
|
|
|
|
|
|
def is_administrator(self):
|
|
|
- if self.type == self.ADMINSTRATOR:
|
|
|
+ if self.type == self.SUPPER:
|
|
|
return True
|
|
|
return False
|
|
|
|