相关方创建

This commit is contained in:
曹前明 2022-09-15 17:23:39 +08:00
parent 5c5cc60fed
commit 5acc65a6f0
1 changed files with 14 additions and 14 deletions

View File

@ -24,28 +24,28 @@ class RpartyCreateUpdateSerializer(CustomModelSerializer):
'belong_dept': {'required': True}
}
@transaction.atomic
def create(self, validated_data):
instance = super().create(validated_data)
with transaction.atomic():
dept = Dept.objects.get_or_create(name=instance.name,
defaults={
"name": instance.name,
"parent": instance.belong_dept,
"type": "rparty"
})
sync_dahua_dept(dept)
dept = Dept.objects.get_or_create(name=instance.name,
defaults={
"name": instance.name,
"parent": instance.belong_dept,
"type": "rparty"
})
sync_dahua_dept(dept)
instance.dept = dept
instance.save()
return instance
@transaction.atomic
def update(self, instance, validated_data):
instance = super().update(instance, validated_data)
with transaction.atomic():
dept = instance.dept
dept.name = instance.name
dept.parent = instance.belong_dept # 重新规划归属部门
dept.save()
sync_dahua_dept(dept)
dept = instance.dept
dept.name = instance.name
dept.parent = instance.belong_dept # 重新规划归属部门
dept.save()
sync_dahua_dept(dept)
return instance