From 2924849d2fb05d1dff2549a8a0c0c2b3c85bc4d9 Mon Sep 17 00:00:00 2001 From: s2042968 Date: Thu, 6 Mar 2025 10:03:38 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix:=E5=A2=9E=E5=8A=A0=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=E5=85=A5=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/EdTagLibraryController.java | 4 ++-- .../manage/service/EdTagLibraryService.java | 2 +- .../serviceimpl/EdTagLibraryServiceImpl.java | 17 ++++++++++++++--- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java index 2bf4d57..67bfa94 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java @@ -41,9 +41,9 @@ public class EdTagLibraryController { // 拖拽修改排序/分组 @GetMapping("/updateOrder") @UserOperation(value="修改了标签顺序", modelName = UserOperationModuleEnum.TAG) - public ElectromagneticResult updateTagOrder(@RequestParam String tagId, @RequestParam String newParentId, @RequestParam Integer newOrderBy) { + public ElectromagneticResult updateTagOrder(@RequestParam String tagId, @RequestParam String newTagId, @RequestParam String newParentId, @RequestParam Integer newOrderBy) { String updatedBy = UserThreadLocal.getUserId(); - return ElectromagneticResultUtil.success(edTagLibraryService.updateTagOrder(tagId, newParentId, newOrderBy,updatedBy)); + return ElectromagneticResultUtil.success(edTagLibraryService.updateTagOrder(tagId, newTagId, newParentId, newOrderBy,updatedBy)); } // 发布标签 diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdTagLibraryService.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdTagLibraryService.java index 7c77b8f..900d97e 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdTagLibraryService.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdTagLibraryService.java @@ -32,7 +32,7 @@ public interface EdTagLibraryService extends IService { * @param tagId * @param newOrderBy */ - Boolean updateTagOrder(String tagId, String newParentId, Integer newOrderBy, String updatedBy); + Boolean updateTagOrder(String tagId, String newTagId, String newParentId, Integer newOrderBy, String updatedBy); /** * 发布标签 diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java index 8153621..0df3ac1 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java @@ -96,18 +96,29 @@ public class EdTagLibraryServiceImpl extends ServiceImpl() .eq(EdTagLibrary::getTagId, tagId)); + // 查询交换顺序的标签/组 + EdTagLibrary newTag = this.getOne(new LambdaQueryWrapper() + .eq(EdTagLibrary::getTagId, newTagId)); Assert.notNull(tag,"标签不存在"); + Assert.notNull(newTag, "无法将标签移动到此位置"); + + // 若标签挪到空标签组下,newTagId为新标签组Id + if (!tag.getType().equals(newTag.getType())) { + if (tag.getType().equals(TagTypeEnum.TAG.getCode())) { + newParentId = newTagId; + } else { + throw new BizException("标签组无法移动到标签下"); + } + } String oldParentId = tag.getParentId(); Integer oldOrderBy = tag.getOrderBy(); From 8e3f27eeaf1c772f444a5efb7134c2e541bcb63a Mon Sep 17 00:00:00 2001 From: s2042968 Date: Thu, 6 Mar 2025 13:50:06 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=8F=91=E5=B8=83=E7=9A=84=E5=85=A5=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/EdTagLibraryController.java | 4 +- .../serviceimpl/EdTagLibraryServiceImpl.java | 54 ++++++++++++------- 2 files changed, 36 insertions(+), 22 deletions(-) diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java index 67bfa94..0b2c473 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/controller/EdTagLibraryController.java @@ -47,9 +47,9 @@ public class EdTagLibraryController { } // 发布标签 - @GetMapping("/batchPublish") + @PostMapping("/batchPublish") @UserOperation(value="发布了标签组", modelName = UserOperationModuleEnum.TAG) - public ElectromagneticResult publishTag(@RequestParam List tagIds) { + public ElectromagneticResult publishTag(@RequestBody List tagIds) { return ElectromagneticResultUtil.success(edTagLibraryService.batchPublishTagGroups(tagIds)); } diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java index 0df3ac1..3c72a11 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdTagLibraryServiceImpl.java @@ -36,13 +36,9 @@ public class EdTagLibraryServiceImpl extends ServiceImpl() .eq(EdTagLibrary::getTagId, newTagId)); - Assert.notNull(tag,"标签不存在"); - Assert.notNull(newTag, "无法将标签移动到此位置"); + Assert.notNull(tag,"此标签/标签组不存在"); + Assert.notNull(newTag, "无法将标签/标签组移动到此位置"); // 若标签挪到空标签组下,newTagId为新标签组Id if (!tag.getType().equals(newTag.getType())) { if (tag.getType().equals(TagTypeEnum.TAG.getCode())) { newParentId = newTagId; + newOrderBy = 1; } else { throw new BizException("标签组无法移动到标签下"); } @@ -127,11 +119,11 @@ public class EdTagLibraryServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(EdTagLibrary::getTagId, tagId) .set(EdTagLibrary::getTagName, tagName) .set(EdTagLibrary::getUpdatedBy, updatedBy); boolean isUpdated = this.update(updateWrapper); if (isUpdated) { - UserThreadLocal.setSuccessInfo("", tagId, StrFormatter.format("更新了标签{}信息", tagName)); + UserThreadLocal.setSuccessInfo("", tagId, StrFormatter.format("更新了标签 {} 信息", tagName)); } return isUpdated; } @@ -329,5 +322,26 @@ public class EdTagLibraryServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(EdTagLibrary::getTagName, tagName); + return this.count(queryWrapper) > 0; + } + + /** + * 计算顺序 + * @return maxOrder + */ + private int selectMaxOrder(int typeCode, String parentId) { + // 查询当前最大排序值 + int maxOrder = Optional.ofNullable(this.getBaseMapper().selectMaxOrder(typeCode, parentId)).orElse(0); + return maxOrder; + } }