Skip to content

Commit 2d54c4a

Browse files
committed
fix: When moving or editing a folder, if there is a folder with the same name in the target directory, the prompt message suggests optimization
1 parent fb05cad commit 2d54c4a

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

apps/folders/serializers/folder.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ def has_exact_permission_by_role(user_id: str, workspace_id: str, permission_id:
3939

4040
return False
4141

42+
4243
def get_source_type(source):
4344
if source == Group.TOOL.name:
4445
return Tool
@@ -149,7 +150,7 @@ def insert(self, instance, with_valid=True):
149150

150151
Folder = get_folder_type(self.data.get('source')) # noqa
151152
if QuerySet(Folder).filter(name=name, workspace_id=workspace_id, parent_id=parent_id).exists():
152-
raise Exception(_('Folder name already exists'))
153+
raise AppApiException(500, _('Folder name already exists'))
153154
# Folder 不能超过3层
154155
check_depth(self.data.get('source'), parent_id, workspace_id)
155156

@@ -197,7 +198,7 @@ def edit(self, instance):
197198
parent_id=parent_id,
198199
workspace_id=current_node.workspace_id
199200
).exclude(id=current_id).exists():
200-
raise serializers.ValidationError(_('Folder name already exists'))
201+
raise AppApiException(500, _('Folder name already exists'))
201202

202203
edit_field_list = ['name', 'desc']
203204
edit_dict = {field: instance.get(field) for field in edit_field_list if (
@@ -218,7 +219,7 @@ def edit(self, instance):
218219

219220
if QuerySet(Folder).filter(name=current_node.name, parent_id=parent_id,
220221
workspace_id=current_node.workspace_id).exists():
221-
raise serializers.ValidationError(_('Folder name already exists'))
222+
raise AppApiException(500, _('Folder name already exists'))
222223

223224
current_node.parent = parent
224225
current_node.save()
@@ -352,7 +353,9 @@ def get_folder_tree(self,
352353
if name is not None:
353354
base_q &= Q(name__contains=name)
354355
if not workspace_manage:
355-
having_read_permission_by_role = has_exact_permission_by_role(user_id, workspace_id, f"{source}_FOLDER:READ", RoleConstants.USER.value.__str__())
356+
having_read_permission_by_role = has_exact_permission_by_role(user_id, workspace_id,
357+
f"{source}_FOLDER:READ",
358+
RoleConstants.USER.value.__str__())
356359
permission_condition = ['VIEW']
357360
if having_read_permission_by_role:
358361
permission_condition = ['VIEW', 'ROLE']

0 commit comments

Comments
 (0)