diff --git a/apps/auth1/authentication.py b/apps/auth1/authentication.py index c73f2f8f..2767ae2c 100755 --- a/apps/auth1/authentication.py +++ b/apps/auth1/authentication.py @@ -13,7 +13,7 @@ class CustomBackend(ModelBackend): return try: user = UserModel._default_manager.get( - Q(username=username) | Q(email=username)) + Q(username=username) | Q(phone=username) | Q(employee__id_number=username)) except UserModel.DoesNotExist: # Run the default password hasher once to reduce the timing # difference between an existing and a nonexistent user (#20760). diff --git a/apps/hrm/serializers.py b/apps/hrm/serializers.py index 8d056c6d..ffe7252c 100755 --- a/apps/hrm/serializers.py +++ b/apps/hrm/serializers.py @@ -45,7 +45,7 @@ def phone_check(phone): class EmployeeImproveSerializer(CustomModelSerializer): class Meta: model = Employee - fields = ['phone', 'number', 'photo', 'id_number'] + fields = ['phone', 'email'] class EmployeeCreateUpdateSerializer(EmployeeBaseSerializer): diff --git a/apps/hrm/views.py b/apps/hrm/views.py index c81685df..7a31b74b 100755 --- a/apps/hrm/views.py +++ b/apps/hrm/views.py @@ -66,7 +66,7 @@ class EmployeeViewSet(CustomModelViewSet): }) return Response(EmployeeSerializer(instance=user.employee).data) - @action(methods=['post'], detail=True, permission_classes=[IsAuthenticated], + @action(methods=['post'], detail=False, permission_classes=[IsAuthenticated], serializer_class=EmployeeImproveSerializer) @transaction.atomic def improve_info(self, request, *args, **kwargs): diff --git a/apps/opm/services.py b/apps/opm/services.py index 83173196..ed68e53d 100644 --- a/apps/opm/services.py +++ b/apps/opm/services.py @@ -52,7 +52,7 @@ def bind_opl(ticket: Ticket, transition: Transition, new_ticket_data: dict): op.save() -def opl_audit_end(ticket: Ticket, transition: Transition, new_ticket_data: dict): +def opl_audit_end(ticket: Ticket): opl = Opl.objects.get(ticket=ticket) op = opl.operation diff --git a/apps/system/views.py b/apps/system/views.py index 6cd75b22..74a33e7e 100755 --- a/apps/system/views.py +++ b/apps/system/views.py @@ -457,9 +457,12 @@ class UserViewSet(CustomModelViewSet): 'username': user.username, 'type': user.type, 'name': user.name, - 'posts': user.posts.values_list('name', flat=True), + 'roles': user.roles.values_list('name', flat=True), 'avatar': user.avatar, 'perms': perms, + 'belong_dept_name': user.belong_dept.name if user.belong_dept else '', + 'post_name': user.post.name if user.post else '', + 'is_superuser': user.is_superuser } return Response(data)