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();