diff --git a/apps/rpm/serializers.py b/apps/rpm/serializers.py index da2251c0..4cc4ddaa 100644 --- a/apps/rpm/serializers.py +++ b/apps/rpm/serializers.py @@ -16,6 +16,7 @@ from apps.utils.tools import check_id_number_e, check_phone_e from apps.wf.serializers import TicketSimpleSerializer from apps.rpm.services import rpj_member_come, rpj_certificate_in from apps.rpm.models import RpjLog +from django.conf import settings class RpartyCreateUpdateSerializer(CustomModelSerializer): @@ -145,7 +146,8 @@ class RemployeeCreateSerializer(CustomModelSerializer): if Remployee.objects.filter(id_number=validated_data['id_number'], rparty=validated_data['rparty']).exists(): raise ValidationError('该成员已存在') with transaction.atomic(): - dhClient.request(**dhapis['person_img_upload'], file_path_rela=validated_data['photo']) + if settings.DAHUA_ENABLED: + dhClient.request(**dhapis['person_img_upload'], file_path_rela=validated_data['photo']) return super().create(validated_data) @@ -157,7 +159,8 @@ class RemployeeUpdateSerializer(CustomModelSerializer): def update(self, instance, validated_data): with transaction.atomic(): - dhClient.request(**dhapis['person_img_upload'], file_path_rela=validated_data['photo']) + if settings.DAHUA_ENABLED: + dhClient.request(**dhapis['person_img_upload'], file_path_rela=validated_data['photo']) return super().update(instance, validated_data) class RemployeeSimpleSerializer(CustomModelSerializer): diff --git a/apps/rpm/views.py b/apps/rpm/views.py index ad76fbe0..f41c7920 100644 --- a/apps/rpm/views.py +++ b/apps/rpm/views.py @@ -236,6 +236,11 @@ class RpjmemberViewSet(CustomModelViewSet): 提前离厂 """ obj = self.get_object() + rpj = obj.rpj + if rpj.state != Rpj.RPJ_WORKING: + raise ParseError('成员非进行状态不可离厂') + obj.note = '提前离厂' + obj.save() rpj_member_leave(obj) RpjLog.objects.create(rpj=obj.rpj, operation='member_leave', remployee=obj.remployee, create_by=request.user, reason=request.data.get('reason', '')) return Response()