# up org
This commit is contained in:
parent
1c5efc0baf
commit
240be90d30
|
@ -5,6 +5,7 @@ from django.contrib.auth.models import AbstractUser
|
||||||
from imagekit.models import ImageSpecField
|
from imagekit.models import ImageSpecField
|
||||||
from imagekit.processors import ResizeToFill
|
from imagekit.processors import ResizeToFill
|
||||||
from imagekit.exceptions import MissingSource
|
from imagekit.exceptions import MissingSource
|
||||||
|
from mosquito.models import Org
|
||||||
|
|
||||||
|
|
||||||
def avatar_path(instance, filename):
|
def avatar_path(instance, filename):
|
||||||
|
@ -22,7 +23,8 @@ class User(AbstractUser):
|
||||||
department = models.CharField(max_length=20, null=True, blank=True, default='', verbose_name='部门')
|
department = models.CharField(max_length=20, null=True, blank=True, default='', verbose_name='部门')
|
||||||
position = models.CharField(max_length=50, null=True, blank=True, default='', verbose_name='职位')
|
position = models.CharField(max_length=50, null=True, blank=True, default='', verbose_name='职位')
|
||||||
introduction = models.TextField(null=True, blank=True, verbose_name='简介')
|
introduction = models.TextField(null=True, blank=True, verbose_name='简介')
|
||||||
org = models.CharField(max_length=100, null=True, blank=True, verbose_name='组织')
|
# org = models.CharField(max_length=100, null=True, blank=True, verbose_name='组织')
|
||||||
|
org = models.ForeignKey(Org, verbose_name='所在组织', on_delete='PROTECT')
|
||||||
role = models.CharField(max_length=20, default='admin', choices=ROLES, verbose_name='角色')
|
role = models.CharField(max_length=20, default='admin', choices=ROLES, verbose_name='角色')
|
||||||
avatar = models.ImageField(upload_to=avatar_path,
|
avatar = models.ImageField(upload_to=avatar_path,
|
||||||
default='https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif', null=True, blank=True)
|
default='https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif', null=True, blank=True)
|
||||||
|
|
|
@ -46,7 +46,11 @@ class DeviceInfoListAPIView(ListAPIView):
|
||||||
search_fields = ['device_id', 'online']
|
search_fields = ['device_id', 'online']
|
||||||
|
|
||||||
def get_queryset(self, *args, **kwargs):
|
def get_queryset(self, *args, **kwargs):
|
||||||
|
user = self.request.user
|
||||||
|
user_roles = user.role.split(',')
|
||||||
queryset_list = DeviceInfo.objects.get_queryset().order_by('-online')
|
queryset_list = DeviceInfo.objects.get_queryset().order_by('-online')
|
||||||
|
if 'staff' in user_roles or 'admin' in user_roles:
|
||||||
|
queryset_list = DeviceInfo.objects.get_queryset(org=user.org).order_by('-online')
|
||||||
device_id = self.request.GET.get('device_id')
|
device_id = self.request.GET.get('device_id')
|
||||||
status = self.request.GET.get('status')
|
status = self.request.GET.get('status')
|
||||||
if device_id:
|
if device_id:
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
# * Remove `managed = False` lines if you wish to allow Django to create, modify, and delete the table
|
# * Remove `managed = False` lines if you wish to allow Django to create, modify, and delete the table
|
||||||
# Feel free to rename the models, but don't rename db_table values or field names.
|
# Feel free to rename the models, but don't rename db_table values or field names.
|
||||||
from django.db import models
|
from django.db import models
|
||||||
|
from mosquito.models import DeviceInfo as DeviceInfo2
|
||||||
|
|
||||||
|
|
||||||
class DeviceCount(models.Model):
|
class DeviceCount(models.Model):
|
||||||
|
@ -51,5 +52,13 @@ class DeviceInfo(models.Model):
|
||||||
verbose_name = '设备信息'
|
verbose_name = '设备信息'
|
||||||
verbose_name_plural = verbose_name
|
verbose_name_plural = verbose_name
|
||||||
|
|
||||||
|
@property
|
||||||
|
def org(self):
|
||||||
|
try:
|
||||||
|
device_info2 = DeviceInfo2.objects.get(device_id=self.device_id)
|
||||||
|
return device_info2.org
|
||||||
|
except DeviceInfo2.DoesNotExist:
|
||||||
|
raise
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.device_name
|
return self.device_name
|
||||||
|
|
Loading…
Reference in New Issue