diff --git a/app/src/main/resources/sql/h2/update_tables_ddl_v1.0.0_2025_0527.sql b/app/src/main/resources/sql/h2/update_tables_ddl_v1.0.0_2025_0527.sql new file mode 100644 index 00000000..460a83aa --- /dev/null +++ b/app/src/main/resources/sql/h2/update_tables_ddl_v1.0.0_2025_0527.sql @@ -0,0 +1,2 @@ +ALTER TABLE t_block_group DROP INDEX u_idx_block_group; +ALTER TABLE t_block_group ADD INDEX u_idx_block_group (`tenant_id`, `platform_id`, `name`, `app_id`); \ No newline at end of file diff --git a/app/src/main/resources/sql/mysql/update_tables_ddl_v1.0.0_2025_0527.sql b/app/src/main/resources/sql/mysql/update_tables_ddl_v1.0.0_2025_0527.sql new file mode 100644 index 00000000..460a83aa --- /dev/null +++ b/app/src/main/resources/sql/mysql/update_tables_ddl_v1.0.0_2025_0527.sql @@ -0,0 +1,2 @@ +ALTER TABLE t_block_group DROP INDEX u_idx_block_group; +ALTER TABLE t_block_group ADD INDEX u_idx_block_group (`tenant_id`, `platform_id`, `name`, `app_id`); \ No newline at end of file diff --git a/base/src/main/java/com/tinyengine/it/service/app/impl/CanvasServiceImpl.java b/base/src/main/java/com/tinyengine/it/service/app/impl/CanvasServiceImpl.java index fb1a8656..fe9bb248 100644 --- a/base/src/main/java/com/tinyengine/it/service/app/impl/CanvasServiceImpl.java +++ b/base/src/main/java/com/tinyengine/it/service/app/impl/CanvasServiceImpl.java @@ -14,6 +14,7 @@ import com.tinyengine.it.common.base.Result; import com.tinyengine.it.common.context.LoginUserContext; +import com.tinyengine.it.common.enums.Enums; import com.tinyengine.it.mapper.BlockMapper; import com.tinyengine.it.mapper.PageMapper; import com.tinyengine.it.mapper.UserMapper; @@ -44,7 +45,7 @@ public class CanvasServiceImpl implements CanvasService { @Override public Result lockCanvas(Integer id, String state, String type) { - String occupier; + String occupier = null; // needTODO 先试用mock数据,后续添加登录及权限后从session获取, User user = userMapper.queryUserById(loginUserContext.getLoginUserId()); if (user == null) { @@ -52,17 +53,21 @@ public Result lockCanvas(Integer id, String state, String type) { user.setId(loginUserContext.getLoginUserId()); } CanvasDto canvasDto = new CanvasDto(); + String value = state.equals(Enums.CanvasEditorState.OCCUPY.getValue()) ? user.getId() : null; + User occupierValue = state.equals(Enums.CanvasEditorState.OCCUPY.getValue()) ? user : null; if ("page".equals(type)) { Page page = pageMapper.queryPageById(id); - occupier = page.getOccupier().getId(); + if (page.getOccupier() != null) { + occupier = page.getOccupier().getId(); + } Boolean isCaDoIt = isCanDoIt(occupier, user); if (isCaDoIt) { Page updatePage = new Page(); updatePage.setId(id); - updatePage.setOccupierBy(user.getId()); + updatePage.setOccupierBy(value); pageMapper.updatePageById(updatePage); canvasDto.setOperate("success"); - canvasDto.setOccupier(user); + canvasDto.setOccupier(occupierValue); return Result.success(canvasDto); } } else { @@ -72,15 +77,15 @@ public Result lockCanvas(Integer id, String state, String type) { if (isCaDoIt) { Block updateBlock = new Block(); updateBlock.setId(id); - updateBlock.setOccupierBy(user.getId()); + updateBlock.setOccupierBy(value); blockMapper.updateBlockById(updateBlock); canvasDto.setOperate("success"); - canvasDto.setOccupier(user); + canvasDto.setOccupier(occupierValue); return Result.success(canvasDto); } } canvasDto.setOperate("failed"); - canvasDto.setOccupier(user); + canvasDto.setOccupier(occupierValue); return Result.success(canvasDto); } diff --git a/base/src/main/resources/mappers/BlockMapper.xml b/base/src/main/resources/mappers/BlockMapper.xml index e562c060..43b06531 100644 --- a/base/src/main/resources/mappers/BlockMapper.xml +++ b/base/src/main/resources/mappers/BlockMapper.xml @@ -142,7 +142,7 @@ path = #{path}, - + occupier_by = #{occupierBy}, diff --git a/base/src/main/resources/mappers/PageMapper.xml b/base/src/main/resources/mappers/PageMapper.xml index 2044d35c..bdf95efa 100644 --- a/base/src/main/resources/mappers/PageMapper.xml +++ b/base/src/main/resources/mappers/PageMapper.xml @@ -108,7 +108,7 @@ is_page = #{isPage}, - + occupier_by = #{occupierBy},