42 lines
1.5 KiB
Python
42 lines
1.5 KiB
Python
from django.db import models
|
|
from Core.models import BaseModel
|
|
from django.contrib.auth.models import User, Group
|
|
|
|
|
|
# Create your models here.
|
|
|
|
class ClientToken(BaseModel):
|
|
client_name = models.CharField(max_length=50)
|
|
client_id = models.CharField(max_length=50)
|
|
client_secret = models.CharField(max_length=150)
|
|
client_token = models.CharField(max_length=50)
|
|
client_web_address = models.CharField(max_length=200, null=True)
|
|
client_web_address_backend = models.CharField(max_length=200, null=True)
|
|
|
|
def save(self, *args, **kwargs):
|
|
super(ClientToken, self).save(*args, **kwargs)
|
|
|
|
|
|
class UserIdentity(BaseModel):
|
|
user = models.ForeignKey(User, on_delete=models.CASCADE, null=True, related_name='user_identity')
|
|
role = models.ManyToManyField(
|
|
Group,
|
|
related_name='identity_group'
|
|
)
|
|
client = models.ForeignKey(
|
|
ClientToken,
|
|
on_delete=models.CASCADE,
|
|
null=True,
|
|
related_name="client_identity"
|
|
)
|
|
first_name = models.CharField(max_length=100, null=True)
|
|
last_name = models.CharField(max_length=100, null=True)
|
|
mobile = models.CharField(max_length=20, null=True)
|
|
national_id = models.CharField(max_length=20, null=True)
|
|
national_code = models.CharField(max_length=20, null=True)
|
|
city = models.CharField(max_length=100, null=True)
|
|
province = models.CharField(max_length=100, null=True)
|
|
|
|
def save(self, *args, **kwargs):
|
|
super(UserIdentity, self).save(*args, **kwargs)
|