Skip to content

Commit bfc43fc

Browse files
committed
feat: add role ID validation messages and update batch delete logic in user management
1 parent 31903a3 commit bfc43fc

File tree

6 files changed

+38
-8
lines changed

6 files changed

+38
-8
lines changed

apps/locales/en_US/LC_MESSAGES/django.po

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8880,4 +8880,13 @@ msgid "Import knowledge workflow"
88808880
msgstr ""
88818881

88828882
msgid "Export knowledge workflow"
8883+
msgstr ""
8884+
8885+
msgid "Role IDs cannot be empty"
8886+
msgstr ""
8887+
8888+
msgid "Role IDs"
8889+
msgstr ""
8890+
8891+
msgid "Some roles do not exist"
88838892
msgstr ""

apps/locales/zh_CN/LC_MESSAGES/django.po

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9007,3 +9007,12 @@ msgstr "导入知识工作流"
90079007

90089008
msgid "Export knowledge workflow"
90099009
msgstr "导出知识工作流"
9010+
9011+
msgid "Role IDs cannot be empty"
9012+
msgstr "角色 ID 不能为空"
9013+
9014+
msgid "Role IDs"
9015+
msgstr "角色 ID"
9016+
9017+
msgid "Some roles do not exist"
9018+
msgstr "部分角色不存在"

apps/locales/zh_Hant/LC_MESSAGES/django.po

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9007,3 +9007,12 @@ msgstr "匯入知識工作流"
90079007

90089008
msgid "Export knowledge workflow"
90099009
msgstr "匯出知識工作流"
9010+
9011+
msgid "Role IDs cannot be empty"
9012+
msgstr "角色 ID 不能为空"
9013+
9014+
msgid "Role IDs"
9015+
msgstr "角色 ID"
9016+
9017+
msgid "Some roles do not exist"
9018+
msgstr "部分角色不存在"

apps/users/serializers/user.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -578,12 +578,10 @@ class BatchDelete(serializers.Serializer):
578578
ids = serializers.ListField(required=True, label=_('User IDs'))
579579

580580
def batch_delete(self, with_valid=True):
581-
if with_valid:
582-
self.is_valid(raise_exception=True)
583-
ids = self.data.get('ids')
584-
if not ids:
581+
user_ids = self.data.get('ids')
582+
if not user_ids:
585583
raise AppApiException(1004, _('User IDs cannot be empty'))
586-
User.objects.filter(id__in=ids).delete()
584+
User.objects.filter(id__in=user_ids).exclude(id='f0dd8f71-e4ee-11ee-8c84-a8a1595801ab').delete()
587585
return True
588586

589587
def get_all_user_list(self):

apps/users/views/user.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@ class BatchDelete(APIView):
247247
@log(menu='User management', operate='Batch delete user',
248248
get_operation_object=lambda r, k: get_user_operation_object(k.get('user_id')))
249249
def post(self, request: Request):
250-
return result.success(UserManageSerializer.BatchDelete(data=request.data).batch_delete(with_valid=True))
250+
return result.success(UserManageSerializer.BatchDelete({'ids': request.data}).batch_delete(with_valid=True))
251251

252252
class RePassword(APIView):
253253
authentication_classes = [TokenAuth]

ui/src/api/system/user-manage.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,6 @@ const putUserManagePassword: (
6666
}
6767

6868

69-
7069
/**
7170
* 获取系统默认密码
7271
*/
@@ -90,6 +89,12 @@ const getValid: (
9089
return get(`/valid/${valid_type}/${valid_count}`, undefined, loading)
9190
}
9291

92+
const batchDelete: (
93+
ids: string[],
94+
loading?: Ref<boolean>
95+
) => Promise<Result<any>> = (ids, loading) => {
96+
return post(`/user_manage/batch_delete`, ids, {}, loading)
97+
}
9398

9499
export default {
95100
getUserManage,
@@ -99,5 +104,5 @@ export default {
99104
putUserManagePassword,
100105
getSystemDefaultPassword,
101106
getValid,
102-
107+
batchDelete
103108
}

0 commit comments

Comments
 (0)