From 2ad6d2a3be41daf50f0e103b2fdeb7a5cd4d3a90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E5=89=8D=E6=98=8E?= <909355014@qq.com> Date: Tue, 18 Oct 2022 14:06:05 +0800 Subject: [PATCH] =?UTF-8?q?visitor=20=E6=B3=A8=E5=86=8C=E6=97=B6=E5=88=9B?= =?UTF-8?q?=E5=BB=BAep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/hrm/signals.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/apps/hrm/signals.py b/apps/hrm/signals.py index d5b734a4..d67a7235 100755 --- a/apps/hrm/signals.py +++ b/apps/hrm/signals.py @@ -2,3 +2,27 @@ from django.db.models.signals import post_save from apps.system.models import User from django.dispatch import receiver from apps.hrm.models import Employee + + +@receiver(post_save, sender=User) +def updateEmployee(sender, instance, created, **kwargs): + ep = None + ep_created = False + if created: + ep, ep_created = Employee.objects.get_or_create(user=instance, + defaults={ + "user": instance, + "name": instance.name, + "phone": instance.phone, + "belong_dept": instance.belong_dept, + "post": instance.post, + "type": instance.type + }) + if ep and not ep_created: + ep.belong_dept = instance.belong_dept + ep.post = instance.post + ep.type = instance.type + if instance.phone != ep.phone: + ep.phone = instance.phone + ep.save() + ep.save() \ No newline at end of file