ep signals bug

This commit is contained in:
曹前明 2022-07-07 10:33:03 +08:00
parent 64e80a7295
commit fe12351f72
2 changed files with 11 additions and 14 deletions

View File

@ -7,15 +7,8 @@ from apps.hrm.models import Employee
@receiver(post_save, sender=User) @receiver(post_save, sender=User)
def updateEmployee(sender, instance, created, **kwargs): def updateEmployee(sender, instance, created, **kwargs):
# if created: # if created:
# 如果账号所属部门有变动, 更新关联人员的所属部门, 只限内部人员 if not instance.is_superuser:
if not instance.is_superuser and instance.type == 'employee': ep, ep_created = Employee.objects.get_or_create(user=instance,
ep = Employee.objects.filter(user=instance).first()
if ep:
ep.belong_dept = instance.belong_dept
ep.post = instance.post
ep.save()
else:
Employee.objects.get_or_create(user=instance,
defaults={ defaults={
"user": instance, "user": instance,
"name": instance.name, "name": instance.name,
@ -23,3 +16,7 @@ def updateEmployee(sender, instance, created, **kwargs):
"belong_dept": instance.belong_dept, "belong_dept": instance.belong_dept,
"post": instance.post "post": instance.post
}) })
if not ep_created:
ep.belong_dept = instance.belong_dept
ep.post = instance.post
ep.save()

View File

@ -164,7 +164,7 @@ class TDeviceViewSet(ListModelMixin, DestroyModelMixin, CustomGenericViewSet):
_, res = xxClient.request(**xxapis['blt_list'], json=json) _, res = xxClient.request(**xxapis['blt_list'], json=json)
blt_list = res['recordList'] blt_list = res['recordList']
for i in blt_list: for i in blt_list:
TDevice.objects.get_or_create(code=i['mac'], default={"code": i['mac'], "type": TDevice.DEVICE_BLT}) TDevice.objects.get_or_create(code=i['mac'], defaults={"code": i['mac'], "type": TDevice.DEVICE_BLT})
return Response() return Response()
@action(methods=['post'], detail=False, perms_map={'post': '*'}, @action(methods=['post'], detail=False, perms_map={'post': '*'},