增加主要部门和主要gangi

This commit is contained in:
曹前明 2022-07-05 14:59:26 +08:00
parent 5cf9c2edf0
commit 26719d9681
5 changed files with 28 additions and 3 deletions

View File

@ -12,7 +12,7 @@ def updateEmployee(sender, instance, created, **kwargs):
ep = Employee.objects.filter(user=instance).first()
if ep:
ep.belong_dept = instance.belong_dept
ep.post = instance.posts.all().order_by('sort', 'create_time').first()
ep.post = instance.post
ep.save()
else:
Employee.objects.get_or_create(user=instance,
@ -21,5 +21,5 @@ def updateEmployee(sender, instance, created, **kwargs):
"name": instance.name,
"phone": instance.phone,
"belong_dept": instance.belong_dept,
"post": instance.posts.all().order_by('sort', 'create_time').first()
"post": instance.post
})

View File

@ -0,0 +1,19 @@
# Generated by Django 3.2.12 on 2022-07-05 06:58
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('system', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='user',
name='post',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='system.post', verbose_name='主要岗位'),
),
]

View File

@ -127,6 +127,9 @@ class User(AbstractUser, CommonBModel):
'头像', default='/media/default/avatar.png', max_length=100, null=True, blank=True)
superior = models.ForeignKey(
'self', null=True, blank=True, on_delete=models.SET_NULL, verbose_name='上级主管')
post = models.ForeignKey(Post, verbose_name='主要岗位',
on_delete=models.CASCADE,
null=True, blank=True)
posts = models.ManyToManyField(Post, through='system.userpost', related_name='user_posts')
depts = models.ManyToManyField(Dept, through='system.userpost')
roles = models.ManyToManyField(Role, verbose_name='关联角色')

View File

@ -358,6 +358,7 @@ class UserPostViewSet(CreateModelMixin, DestroyModelMixin, ListModelMixin, Custo
up = UserPost.objects.filter(user=user).order_by('sort', 'create_time').first()
if up:
user.belong_dept = up.dept
user.post = up.post
user.update_by = self.request.user
user.save()
@ -368,8 +369,10 @@ class UserPostViewSet(CreateModelMixin, DestroyModelMixin, ListModelMixin, Custo
up = UserPost.objects.filter(user=user).order_by('sort', 'create_time').first()
if up:
user.belong_dept = up.dept
user.post = up.post
else:
user.belong_dept = None
user.post = None
user.update_by = self.request.user
user.save()

View File

@ -67,4 +67,4 @@ class BltSerializer(serializers.ModelSerializer):
class Meta:
model = TDevice
fields = ['code', 'obj_cate', 'employee']
fields = ['code', 'obj_cate', 'employee', 'employee_']