jpz最新6.0

dev
jpz 2023-12-29 15:28:55 +08:00
parent 3644c2b9a5
commit 98f231a4fb
2 changed files with 17 additions and 0 deletions

View File

@ -35,4 +35,6 @@ public interface MetadataService extends BaseService<MetadataEntity> {
void updateNeo4j(Neo4jInfo neo4jInfo);
Neo4jInfo getNeo4j();
void deleteAll(Long id);
}

View File

@ -180,6 +180,21 @@ public class MetadataServiceImpl extends BaseServiceImpl<MetadataDao, MetadataEn
return tokenStoreCache.getNeo4jInfo(getProjectId());
}
@Override
public void deleteAll(Long id) {
LambdaQueryWrapper<MetadataEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(MetadataEntity::getParentId, id);
List<MetadataEntity> childs = baseMapper.selectList(wrapper);
for (MetadataEntity child : childs) {
deleteAll(child.getId());
}
baseMapper.deleteById(id);
LambdaQueryWrapper<MetadataPropertyEntity> propertyWrapper = new LambdaQueryWrapper<>();
propertyWrapper.eq(MetadataPropertyEntity::getMetadataId, id);
metadataPropertyDao.delete(propertyWrapper);
}
private void recursionAddParent(MetadataEntity metadataEntity, List<MetadataEntity> resultList){
if(resultList.stream().noneMatch(item -> metadataEntity.getId().equals(item.getId()))) {
resultList.add(metadataEntity);