From 1ff64e01e5ef182d22fef8bf261de730bcd2fe87 Mon Sep 17 00:00:00 2001 From: shahaibo <1023316923@qq.com> Date: Thu, 12 Oct 2023 10:16:50 +0800 Subject: [PATCH] =?UTF-8?q?BUGFIX:=20workspace=E5=88=A0=E9=99=A4=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ai/da/controller/WorkspaceController.java | 4 ++-- .../java/com/ai/da/service/WorkspaceService.java | 2 ++ .../ai/da/service/impl/WorkspaceServiceImpl.java | 16 ++++++++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ai/da/controller/WorkspaceController.java b/src/main/java/com/ai/da/controller/WorkspaceController.java index c611fe50..b4847fe4 100644 --- a/src/main/java/com/ai/da/controller/WorkspaceController.java +++ b/src/main/java/com/ai/da/controller/WorkspaceController.java @@ -81,8 +81,8 @@ public class WorkspaceController { @DeleteMapping("/remove") @ApiOperationSupport(order = 4) @ApiOperation(value = "删除", notes = "传入id") - public Response remove(@Valid @RequestBody List workspaceList) { - return Response.success(workspaceService.removeBatchByIds(workspaceList)); + public Response> remove(@Valid @RequestBody List workspaceList) { + return Response.success(workspaceService.delete(workspaceList)); } @GetMapping("/enumValues") diff --git a/src/main/java/com/ai/da/service/WorkspaceService.java b/src/main/java/com/ai/da/service/WorkspaceService.java index 61d177af..f0f931ac 100644 --- a/src/main/java/com/ai/da/service/WorkspaceService.java +++ b/src/main/java/com/ai/da/service/WorkspaceService.java @@ -45,4 +45,6 @@ public interface WorkspaceService extends IService { void moveFile(); void maleDataInsert() throws FileNotFoundException; + + List delete(List workspaceList); } diff --git a/src/main/java/com/ai/da/service/impl/WorkspaceServiceImpl.java b/src/main/java/com/ai/da/service/impl/WorkspaceServiceImpl.java index 5cff6df5..db276afe 100644 --- a/src/main/java/com/ai/da/service/impl/WorkspaceServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/WorkspaceServiceImpl.java @@ -45,6 +45,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Collectors; /** @@ -443,6 +444,21 @@ public class WorkspaceServiceImpl extends ServiceImpl delete(List workspaceList) { + // 校验不能删除最后选择的workspace + List deleteIds = workspaceList.stream().map(Workspace::getId).collect(Collectors.toList()); + QueryWrapper qw = new QueryWrapper<>(); + qw.lambda().in(Workspace::getId, deleteIds); + qw.lambda().eq(Workspace::getIsLastIndex, 1); + List workspaces = workspaceMapper.selectList(qw); + if (!CollectionUtils.isEmpty(workspaces)) { + throw new BusinessException("Unable to delete the workspace you last used"); + } + workspaceMapper.deleteBatchIds(deleteIds); + return deleteIds; + } + // public static void main(String[] args) throws FileNotFoundException { // String b = "C:\\workspace\\fileData\\aida_men_library\\top\\mens_test_9992.png"; // File pngFile = new File(b);