创建提交bug

This commit is contained in:
caoqianming 2022-04-13 10:57:58 +08:00
parent 69d05b02da
commit c400fd79b4
4 changed files with 20 additions and 14 deletions

View File

@ -12,6 +12,16 @@ class EmployeeSerializer(CustomModelSerializer):
class Meta:
model = Employee
exclude = EXCLUDE_FIELDS + ['face_data']
def save(self, **kwargs):
if self.validated_data.get('user', None):
user = self.validated_data['user']
self.validated_data['name'] = user.name
self.validated_data['belong_dept'] = user.belong_dept
return super().save(**kwargs)
class EmployeeNotWorkRemarkSerializer(ModelSerializer):
class Meta:

View File

@ -24,7 +24,7 @@ from rest_framework.exceptions import ParseError
# Create your views here.
class EmployeeViewSet(CustomModelViewSet):
"""
工信息管理
员管理
"""
queryset = Employee.objects.all()
select_related_fields = ['user']
@ -32,7 +32,7 @@ class EmployeeViewSet(CustomModelViewSet):
serializer_class = EmployeeSerializer
search_fields = ['name', 'number', 'user__username']
ordering = ['-pk']
def update(self, request, *args, **kwargs):
partial = kwargs.pop('partial', False)
instance = self.get_object()
@ -41,14 +41,9 @@ class EmployeeViewSet(CustomModelViewSet):
serializer.is_valid(raise_exception=True)
photo = data.get('photo', None)
if instance.photo != photo:
f_l, msg = HRMService.get_facedata_from_img(img_path=photo)
if f_l:
serializer.save(update_by=request.user, face_data = f_l)
# 更新人脸缓存
update_all_user_facedata_cache.delay()
return Response()
return Response(msg, status=status.HTTP_400_BAD_REQUEST)
serializer.save(update_by=request.user)
# 调取大华接口
return Response()
serializer.save()
return Response()
@action(methods=['post'], detail=True, perms_map={'post': 'employee_notworkremark'}

View File

@ -149,7 +149,7 @@ class RoleCreateUpdateSerializer(CustomModelSerializer):
model = Role
exclude = EXCLUDE_FIELDS
class PermissionSerializer(CustomModelSerializer):
class PermissionSerializer(serializers.ModelSerializer):
"""
权限序列化
"""
@ -158,7 +158,7 @@ class PermissionSerializer(CustomModelSerializer):
model = Permission
fields = '__all__'
class PermissionCreateUpdateSerializer(CustomModelSerializer):
class PermissionCreateUpdateSerializer(serializers.ModelSerializer):
"""
权限序列化
"""

View File

@ -19,10 +19,11 @@ class CustomModelSerializer(DynamicFieldsMixin, serializers.ModelSerializer):
if self.request:
if getattr(self.request, 'user', None):
validated_data['create_by'] = self.request.user
if 'belong_dept' in validated_data: # 如果指定数据归属部门
if 'belong_dept' in validated_data: # 如果指定数据归属部门
pass
elif getattr(self.request.user, 'belong_dept', None):
validated_data['belong_dept'] = self.request.user.belong_dept
if hasattr(self.Meta.model, 'belong_dept'):
validated_data['belong_dept'] = self.request.user.belong_dept
return super().create(validated_data)
def update(self, instance, validated_data):