|
@@ -4,6 +4,7 @@ import json
|
|
|
|
|
|
from django.db import transaction
|
|
from django.db import transaction
|
|
from django.contrib.auth import get_user_model
|
|
from django.contrib.auth import get_user_model
|
|
|
|
+from rest_framework.decorators import action
|
|
from utils.permission import IsAdministrator
|
|
from utils.permission import IsAdministrator
|
|
from utils import response_error, response_ok
|
|
from utils import response_error, response_ok
|
|
from utils.custom_modelviewset import CustomModelViewSet
|
|
from utils.custom_modelviewset import CustomModelViewSet
|
|
@@ -45,10 +46,19 @@ class UserViewSet(CustomModelViewSet):
|
|
if log_count > 0 or exam_log_count > 0:
|
|
if log_count > 0 or exam_log_count > 0:
|
|
raise CustomError(u'该账号有使用记录,禁止删除!')
|
|
raise CustomError(u'该账号有使用记录,禁止删除!')
|
|
|
|
|
|
- SysLog.objects.addnew(self.request.user, SysLog.DELETE, u'删除用户[%s],id=%d' % (instance.name, instance.id))
|
|
|
|
|
|
+ SysLog.objects.addnew(self.request.user, SysLog.DELETE, u'删除用户[%s],id=%d' % (instance.username, instance.id))
|
|
instance.delete()
|
|
instance.delete()
|
|
return response_ok()
|
|
return response_ok()
|
|
|
|
|
|
|
|
+ @action(methods=['post'], detail=True)
|
|
|
|
+ def reset_password(self, request, pk):
|
|
|
|
+ with transaction.atomic():
|
|
|
|
+ instance = self.get_object()
|
|
|
|
+ instance.set_password('111111')
|
|
|
|
+ instance.save()
|
|
|
|
+
|
|
|
|
+ SysLog.objects.addnew(self.request.user, SysLog.UPDATE, u'重置用户[%s]密码,id=%d' % (instance.username, instance.id))
|
|
|
|
+ return response_ok()
|
|
|
|
|
|
class ChangePasswordView(APIView):
|
|
class ChangePasswordView(APIView):
|
|
permission_classes = [IsAdministrator, ]
|
|
permission_classes = [IsAdministrator, ]
|