From db7c6f42a10e0109ccb0f4abc437037e3c9400aa Mon Sep 17 00:00:00 2001 From: lu17301156525 Date: Tue, 27 May 2025 01:22:02 -0700 Subject: [PATCH 1/3] fix: Fix i18n test --- .../tinyengine/it/controller/I18nEntryControllerTest.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java b/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java index 3650b72f..da707448 100644 --- a/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java +++ b/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java @@ -60,9 +60,10 @@ void setUp() { @Test void testGetAllI18nEntries() { I18nEntryListResult mockData = new I18nEntryListResult(); - when(i18nEntryService.findAllI18nEntry()).thenReturn(mockData); - - Result result = i18nEntryController.getAllI18nEntries(); + when(i18nEntryService.findI18nEntryByApp(anyInt(), anyString())).thenReturn(mockData); + Integer host = 1; + String hostType = "app"; + Result result = i18nEntryController.getI18nEntriesByApp(host, hostType); Assertions.assertEquals(mockData, result.getData()); } From 4c3e1f23e2afbdcb9f10f92bdb48ed094e1b3fa5 Mon Sep 17 00:00:00 2001 From: lu17301156525 Date: Tue, 27 May 2025 01:22:26 -0700 Subject: [PATCH 2/3] fix: Fix i18n test --- .../com/tinyengine/it/controller/I18nEntryController.java | 4 ++-- .../com/tinyengine/it/controller/I18nEntryControllerTest.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/base/src/main/java/com/tinyengine/it/controller/I18nEntryController.java b/base/src/main/java/com/tinyengine/it/controller/I18nEntryController.java index c8b8dad0..42a7705d 100644 --- a/base/src/main/java/com/tinyengine/it/controller/I18nEntryController.java +++ b/base/src/main/java/com/tinyengine/it/controller/I18nEntryController.java @@ -70,7 +70,7 @@ public class I18nEntryController { private I18nEntryService i18nEntryService; /** - * Gets all i 18 n entries by app. + * Gets i 18 n entries by app. * * @return 获取国际化词条列表 i 18 n entries */ @@ -79,7 +79,7 @@ public class I18nEntryController { content = @Content(mediaType = "application/json", schema = @Schema())), @ApiResponse(responseCode = "400", description = "请求失败") }) - @SystemControllerLog(description = "获取国际化词条列表") + @SystemControllerLog(description = "通过app获取国际化词条列表") @GetMapping("/i18n/entries") public Result getI18nEntriesByApp( @RequestParam(value = "host", required = false) Integer host, @RequestParam(value = "host_type", required = false) String hostType) { diff --git a/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java b/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java index da707448..0068ef75 100644 --- a/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java +++ b/base/src/test/java/com/tinyengine/it/controller/I18nEntryControllerTest.java @@ -58,7 +58,7 @@ void setUp() { } @Test - void testGetAllI18nEntries() { + void testGetI18nEntriesByApp() { I18nEntryListResult mockData = new I18nEntryListResult(); when(i18nEntryService.findI18nEntryByApp(anyInt(), anyString())).thenReturn(mockData); Integer host = 1; From a39d7561ec1827ca472f530b70a6aa4d4cb6b04e Mon Sep 17 00:00:00 2001 From: lu17301156525 Date: Thu, 5 Jun 2025 00:39:06 -0700 Subject: [PATCH 3/3] fix: Fix page and block lock bug --- .../h2/update_tables_ddl_v1.0.0_2025_0527.sql | 2 ++ .../update_tables_ddl_v1.0.0_2025_0527.sql | 2 ++ .../service/app/impl/CanvasServiceImpl.java | 19 ++++++++++++------- .../main/resources/mappers/BlockMapper.xml | 2 +- .../src/main/resources/mappers/PageMapper.xml | 2 +- 5 files changed, 18 insertions(+), 9 deletions(-) create mode 100644 app/src/main/resources/sql/h2/update_tables_ddl_v1.0.0_2025_0527.sql create mode 100644 app/src/main/resources/sql/mysql/update_tables_ddl_v1.0.0_2025_0527.sql 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 143e7d72..0a6d3ab7 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},