优化[删除标签接口]性能

This commit is contained in:
2023-04-21 11:46:46 +08:00
parent 761f8d2002
commit 9cd97ee573
@@ -117,7 +117,7 @@ public class ITreeLabelServiceImpl extends ServiceImpl<TreeLabelDao, TreeLabelEn
//编辑标签
//不能设置上级标签为自己
if (entity.getParentId().equals(entity.getId())) {
throw new AdcDaBaseException("不能设置上级标签为自身");
throw new AdcDaBaseException("不能设置上级标签为自身");
}
TreeLabelEntity treeLabelEntity = treeLabelDao.selectById(entity.getId());
if (Objects.nonNull(treeLabelEntity)) {
@@ -156,11 +156,8 @@ public class ITreeLabelServiceImpl extends ServiceImpl<TreeLabelDao, TreeLabelEn
public boolean deleteById(String id) {
List<String> nodeAndChildrenIds = findNodeAndChildrenIds(getTreeLabelRoot(), id).stream().distinct().collect(Collectors.toList());
LambdaQueryWrapper<ReportLabelEntity> wrapper = new LambdaQueryWrapper<>();
nodeAndChildrenIds.forEach(labelLd -> {
wrapper.eq(ReportLabelEntity::getLabelId, labelLd);
reportLabelDao.delete(wrapper);
});
wrapper.in(ReportLabelEntity::getLabelId, nodeAndChildrenIds);
reportLabelDao.delete(wrapper);
int i = treeLabelDao.deleteBatchIds(nodeAndChildrenIds);
return i != 0;
}