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 3694052..240d3e6 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 @@ -187,9 +187,14 @@ public class EdTagLibraryServiceImpl extends ServiceImpl tags = this.list(new LambdaQueryWrapper() + .eq(EdTagLibrary::getParentId, tagId)); + // 删除所有子标签的关联关系 + fileTagRelationMapper.delete(new LambdaQueryWrapper().in(FileTagRelation::getTagId, tags.stream().map(EdTagLibrary::getTagId).collect(Collectors.toList()))); + // 删除所有子标签 this.remove(new LambdaQueryWrapper().eq(EdTagLibrary::getParentId, tagId)); - // 删除标签关联文件 - fileTagRelationMapper.delete(new LambdaQueryWrapper().eq(FileTagRelation::getTagId, tagId)); } // 删除本身 boolean isDeleted = this.removeById(tagId);