opl_cate deatil
This commit is contained in:
parent
dc660cfb77
commit
91ec77ba5f
|
@ -48,25 +48,27 @@ class EmployeeCreateUpdateSerializer(EmployeeBaseSerializer):
|
|||
|
||||
@transaction.atomic
|
||||
def create(self, validated_data):
|
||||
instance = super().create(validated_data)
|
||||
if settings.DAHUA_ENABLED and dhClient:
|
||||
dahua_data = HrmService.sync_dahua_employee(ep=instance)
|
||||
third_info = instance.third_info
|
||||
third_info.update(dahua_data)
|
||||
instance.third_info = third_info
|
||||
instance.save()
|
||||
return instance
|
||||
with transaction.atomic():
|
||||
instance = super().create(validated_data)
|
||||
if settings.DAHUA_ENABLED and dhClient:
|
||||
dahua_data = HrmService.sync_dahua_employee(ep=instance)
|
||||
third_info = instance.third_info
|
||||
third_info.update(dahua_data)
|
||||
instance.third_info = third_info
|
||||
instance.save()
|
||||
return instance
|
||||
|
||||
@transaction.atomic
|
||||
def update(self, instance, validated_data):
|
||||
old_photo = instance.photo
|
||||
instance = super().update(instance, validated_data)
|
||||
dahua_data = HrmService.sync_dahua_employee(ep=instance, old_photo=old_photo)
|
||||
third_info = instance.third_info
|
||||
third_info.update(dahua_data)
|
||||
instance.third_info = third_info
|
||||
instance.save()
|
||||
return instance
|
||||
with transaction.atomic():
|
||||
old_photo = instance.photo
|
||||
instance = super().update(instance, validated_data)
|
||||
if settings.DAHUA_ENABLED and dhClient:
|
||||
dahua_data = HrmService.sync_dahua_employee(ep=instance, old_photo=old_photo)
|
||||
third_info = instance.third_info
|
||||
third_info.update(dahua_data)
|
||||
instance.third_info = third_info
|
||||
instance.save()
|
||||
return instance
|
||||
|
||||
|
||||
class ChannelAuthoritySerializer(serializers.Serializer):
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
from apps.hrm.models import Certificate
|
||||
from apps.opm.models import GasCheck, Operation, Opl, OplCate, OplCert, OplWorker
|
||||
from apps.system.serializers import DictSerializer, DictSimpleSerializer
|
||||
from apps.utils.serializers import CustomModelSerializer
|
||||
from apps.utils.constants import EXCLUDE_FIELDS
|
||||
from rest_framework import serializers
|
||||
|
@ -20,6 +21,16 @@ class OplCateSerializer(CustomModelSerializer):
|
|||
fields = '__all__'
|
||||
|
||||
|
||||
class OplCateDetailSerializer(CustomModelSerializer):
|
||||
measure_options_ = DictSimpleSerializer(source='measure_options', read_only=True, many=True)
|
||||
risk_options_ = DictSimpleSerializer(source='risk_options', read_only=True, many=True)
|
||||
close_options_ = DictSimpleSerializer(source='close_options', read_only=True, many=True)
|
||||
|
||||
class Meta:
|
||||
model = OplCate
|
||||
fields = '__all__'
|
||||
|
||||
|
||||
class OperationCreateUpdateSerializer(CustomModelSerializer):
|
||||
class Meta:
|
||||
model = Operation
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
from django.shortcuts import render
|
||||
from rest_framework.response import Response
|
||||
from apps.opm.models import GasCheck, Operation, Opl, OplCate, OplWorker
|
||||
from apps.opm.serializers import GasCheckCreateUpdateSerializer, GasCheckSerializer, OperationCreateUpdateSerializer, OperationSerializer, OplCateCreateUpdateSerializer, OplCateSerializer, OplCreateUpdateSerializer, OplSerializer, OplWorkerCreateSerializer, OplWorkerUpdateSerializer
|
||||
from apps.opm.serializers import GasCheckCreateUpdateSerializer, GasCheckSerializer, OperationCreateUpdateSerializer, OperationSerializer, OplCateCreateUpdateSerializer, OplCateDetailSerializer, OplCateSerializer, OplCreateUpdateSerializer, OplSerializer, OplWorkerCreateSerializer, OplWorkerUpdateSerializer
|
||||
from apps.utils.viewsets import CustomGenericViewSet, CustomModelViewSet
|
||||
from rest_framework.exceptions import ParseError
|
||||
from rest_framework.mixins import CreateModelMixin, ListModelMixin, DestroyModelMixin
|
||||
|
@ -14,7 +14,9 @@ class OplCateViewSet(CustomModelViewSet):
|
|||
queryset = OplCate.objects.all()
|
||||
create_serializer_class = OplCateCreateUpdateSerializer
|
||||
update_serializer_class = OplCateCreateUpdateSerializer
|
||||
retrieve_serializer_class = OplCateDetailSerializer
|
||||
serializer_class = OplCateSerializer
|
||||
prefetch_related_fields = ['measure_options', 'risk_options', 'close_options']
|
||||
|
||||
|
||||
class OperationViewSet(CustomModelViewSet):
|
||||
|
|
|
@ -128,6 +128,11 @@ class DictSerializer(CustomModelSerializer):
|
|||
model = Dictionary
|
||||
fields = '__all__'
|
||||
|
||||
class DictSimpleSerializer(CustomModelSerializer):
|
||||
class Meta:
|
||||
model = Dictionary
|
||||
fields = ['id', 'name', 'code']
|
||||
|
||||
|
||||
class DictCreateUpdateSerializer(CustomModelSerializer):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue