diff --git a/src/main/java/net/geedge/asw/module/workspace/controller/WorkspaceController.java b/src/main/java/net/geedge/asw/module/workspace/controller/WorkspaceController.java index 7955a0e..73eb4b6 100644 --- a/src/main/java/net/geedge/asw/module/workspace/controller/WorkspaceController.java +++ b/src/main/java/net/geedge/asw/module/workspace/controller/WorkspaceController.java @@ -60,7 +60,6 @@ public class WorkspaceController { public R save(@RequestBody WorkspaceEntity workspace) { VerifyUtil.is(workspace).notNull() .and(workspace.getName()).notEmpty(RCode.WORKSPACE_NAME_CANNOT_EMPTY) - .and(workspace.getMembers()).notEmpty(RCode.WORKSPACE_MEMBER_CANNOT_EMPTY) .and(workspace.getVisibility()).notEmpty(RCode.WORKSPACE_VISIBILITY_CANNOT_EMPTY); WorkspaceEntity workspaceEntity = workspaceService.saveWorkspace(workspace); @@ -73,7 +72,6 @@ public class WorkspaceController { VerifyUtil.is(workspace).notNull() .and(workspace.getId()).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY) .and(workspace.getName()).notEmpty(RCode.WORKSPACE_NAME_CANNOT_EMPTY) - .and(workspace.getMembers()).notEmpty(RCode.WORKSPACE_MEMBER_CANNOT_EMPTY) .and(workspace.getVisibility()).notEmpty(RCode.WORKSPACE_VISIBILITY_CANNOT_EMPTY); WorkspaceEntity workspaceEntity = workspaceService.updateWorkspace(workspace); diff --git a/src/main/java/net/geedge/asw/module/workspace/service/impl/WorkspaceServiceImpl.java b/src/main/java/net/geedge/asw/module/workspace/service/impl/WorkspaceServiceImpl.java index eeace9a..45530d5 100644 --- a/src/main/java/net/geedge/asw/module/workspace/service/impl/WorkspaceServiceImpl.java +++ b/src/main/java/net/geedge/asw/module/workspace/service/impl/WorkspaceServiceImpl.java @@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import net.geedge.asw.common.util.ASWException; -import net.geedge.asw.common.util.Constants; import net.geedge.asw.common.util.RCode; import net.geedge.asw.common.util.T; import net.geedge.asw.module.workspace.dao.WorkspaceDao; @@ -49,12 +48,14 @@ public class WorkspaceServiceImpl extends ServiceImpl members = workspace.getMembers(); - members.stream().forEach(x -> { - x.setWorkspaceId(workspace.getId()); - x.setCreateTimestamp(System.currentTimeMillis()); - x.setCreateUserId(StpUtil.getLoginIdAsString()); - }); - workspaceMemberService.saveBatch(members); + if (T.CollUtil.isNotEmpty(members)) { + members.stream().forEach(x -> { + x.setWorkspaceId(workspace.getId()); + x.setCreateTimestamp(System.currentTimeMillis()); + x.setCreateUserId(StpUtil.getLoginIdAsString()); + }); + workspaceMemberService.saveBatch(members); + } return workspace; } @@ -67,14 +68,17 @@ public class WorkspaceServiceImpl extends ServiceImpl members = workspace.getMembers(); - members.stream().forEach(x -> { - x.setWorkspaceId(workspace.getId()); - x.setCreateTimestamp(System.currentTimeMillis()); - x.setCreateUserId(StpUtil.getLoginIdAsString()); - }); workspaceMemberService.remove(new LambdaQueryWrapper().eq(WorkspaceMemberEntity::getWorkspaceId, workspace.getId())); - workspaceMemberService.saveBatch(members); + + List members = workspace.getMembers(); + if (T.CollUtil.isNotEmpty(members)) { + members.stream().forEach(x -> { + x.setWorkspaceId(workspace.getId()); + x.setCreateTimestamp(System.currentTimeMillis()); + x.setCreateUserId(StpUtil.getLoginIdAsString()); + }); + workspaceMemberService.saveBatch(members); + } return workspace; }