Merge branch 'main' of http://192.168.65.198:3000/toolchaintechnologycenter/spdm-backend
This commit is contained in:
@@ -15,6 +15,7 @@ import java.util.List;
|
||||
* @since 2025-09-05
|
||||
*/
|
||||
public interface FileMetadataInfoMapper extends BaseMapper<FileMetadataInfo> {
|
||||
List<FileMetadataInfo> listSimulationNodeFiles(@Param("parentId") Long parentId,@Param("fileIds") List<Long> fileIds);
|
||||
List<FileMetadataInfo> listSimulationNodeDir(@Param("dirIds") List<Long> dirIds,@Param("filterEmptyData") boolean filterEmptyData);
|
||||
List<FileMetadataInfo> listSimulationNodeFiles(@Param("parentId") Long parentId,@Param("fileIds") List<Long> fileIds, @Param("filterEmptyData") boolean isFilterEmptyData);
|
||||
|
||||
}
|
||||
|
||||
@@ -12,11 +12,17 @@ public class ListSimulationNodeTreeReq extends BaseReq {
|
||||
*/
|
||||
@Schema(description = "数据展示维度模版ID")
|
||||
@NotEmpty(message = "数据展示维度模版ID不能为空")
|
||||
private Long dimensionTemplateId;
|
||||
Long dimensionTemplateId;
|
||||
|
||||
/**
|
||||
* 文件夹ID
|
||||
*/
|
||||
@Schema(description = "文件夹ID")
|
||||
Long fileId;
|
||||
|
||||
/**
|
||||
* 是否过滤空数据
|
||||
*/
|
||||
@Schema(description = "是否过滤空数据")
|
||||
boolean filterEmptyData =false;
|
||||
}
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
package com.sdm.data.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.sdm.data.model.dto.NodeSizeDTO;
|
||||
import com.sdm.data.model.dto.UserTotalFileSizeDTO;
|
||||
import com.sdm.data.model.entity.FileMetadataInfo;
|
||||
|
||||
import java.util.List;
|
||||
@@ -16,5 +14,10 @@ import java.util.List;
|
||||
* @since 2025-09-05
|
||||
*/
|
||||
public interface IFileMetadataInfoService extends IService<FileMetadataInfo> {
|
||||
List<FileMetadataInfo> listSimulationNodeFiles(Long parentId,List<Long> fileIds);
|
||||
/**
|
||||
* 数据总览 需要过滤空文件夹查询文件夹
|
||||
* @return
|
||||
*/
|
||||
List<FileMetadataInfo> listSimulationNodeDir(List<Long> dirIds,boolean filterEmptyData);
|
||||
List<FileMetadataInfo> listSimulationNodeFiles(Long parentId, List<Long> fileIds, boolean isFilterEmptyData);
|
||||
}
|
||||
|
||||
@@ -241,7 +241,7 @@ public class DimensionTemplateServiceImpl extends ServiceImpl<DimensionTemplateM
|
||||
return SdmResponse.success(resultDir);
|
||||
}
|
||||
|
||||
List<FileMetadataInfo> nodeDirInfos = fileMetadataInfoService.lambdaQuery().in(FileMetadataInfo::getRelatedResourceUuid, uuids).list();
|
||||
List<FileMetadataInfo> nodeDirInfos = fileMetadataInfoService.lambdaQuery().in(FileMetadataInfo::getRelatedResourceUuid, uuids).orderByDesc(FileMetadataInfo::getCreateTime).list();
|
||||
resultDir.addAll(nodeDirInfos);
|
||||
return SdmResponse.success(resultDir);
|
||||
}
|
||||
@@ -269,7 +269,7 @@ public class DimensionTemplateServiceImpl extends ServiceImpl<DimensionTemplateM
|
||||
}
|
||||
|
||||
PageHelper.startPage(req.getCurrent(), req.getSize());
|
||||
List<FileMetadataInfo> fileMetadataInfos = fileMetadataInfoService.lambdaQuery().in(FileMetadataInfo::getId, dirInfos).list();
|
||||
List<FileMetadataInfo> fileMetadataInfos = fileMetadataInfoService.listSimulationNodeDir(dirInfos, req.isFilterEmptyData());
|
||||
|
||||
PageInfo<FileMetadataInfo> page = new PageInfo<>(fileMetadataInfos);
|
||||
return PageUtils.getJsonObjectSdmResponse(fileMetadataInfos, page);
|
||||
@@ -293,7 +293,7 @@ public class DimensionTemplateServiceImpl extends ServiceImpl<DimensionTemplateM
|
||||
|
||||
|
||||
PageHelper.startPage(req.getCurrent(), req.getSize());
|
||||
List<FileMetadataInfo> fileMetadataInfos = fileMetadataInfoService.listSimulationNodeFiles(parentDirId, dirInfos);
|
||||
List<FileMetadataInfo> fileMetadataInfos = fileMetadataInfoService.listSimulationNodeFiles(parentDirId, dirInfos,req.isFilterEmptyData());
|
||||
|
||||
PageInfo<FileMetadataInfo> page = new PageInfo<>(fileMetadataInfos);
|
||||
return PageUtils.getJsonObjectSdmResponse(fileMetadataInfos, page);
|
||||
|
||||
@@ -2,11 +2,8 @@ package com.sdm.data.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.sdm.data.dao.FileMetadataInfoMapper;
|
||||
import com.sdm.data.model.dto.NodeSizeDTO;
|
||||
import com.sdm.data.model.dto.UserTotalFileSizeDTO;
|
||||
import com.sdm.data.model.entity.FileMetadataInfo;
|
||||
import com.sdm.data.service.IFileMetadataInfoService;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
@@ -22,7 +19,12 @@ import java.util.List;
|
||||
@Service
|
||||
public class FileMetadataInfoServiceImpl extends ServiceImpl<FileMetadataInfoMapper, FileMetadataInfo> implements IFileMetadataInfoService {
|
||||
@Override
|
||||
public List<FileMetadataInfo> listSimulationNodeFiles(Long parentId, List<Long> fileIds) {
|
||||
return this.baseMapper.listSimulationNodeFiles(parentId,fileIds);
|
||||
public List<FileMetadataInfo> listSimulationNodeDir(List<Long> dirIds,boolean filterEmptyData) {
|
||||
return this.baseMapper.listSimulationNodeDir(dirIds, filterEmptyData);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<FileMetadataInfo> listSimulationNodeFiles(Long parentId, List<Long> fileIds, boolean isFilterEmptyData) {
|
||||
return this.baseMapper.listSimulationNodeFiles(parentId,fileIds,isFilterEmptyData);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.sdm.data.dao.FileMetadataInfoMapper">
|
||||
<select id="listSimulationNodeDir" resultType="com.sdm.data.model.entity.FileMetadataInfo">
|
||||
SELECT distinct file_metadata_info.*
|
||||
FROM file_metadata_info
|
||||
<if test="filterEmptyData != null and filterEmptyData">
|
||||
LEFT JOIN file_storage ON file_metadata_info.id = file_storage.dirId
|
||||
</if>
|
||||
WHERE file_metadata_info.id IN (
|
||||
<foreach collection="dirIds" item="dirId" separator=",">
|
||||
#{dirId}
|
||||
</foreach>
|
||||
)
|
||||
|
||||
<if test="filterEmptyData != null and filterEmptyData">
|
||||
AND file_storage.fileId IS NOT NULL
|
||||
</if>
|
||||
</select>
|
||||
|
||||
|
||||
<select id="listSimulationNodeFiles" resultType="com.sdm.data.model.entity.FileMetadataInfo">
|
||||
<!-- 第一个子查询文件(必执行) -->
|
||||
SELECT *
|
||||
SELECT distinct file_metadata_info.*
|
||||
FROM file_metadata_info
|
||||
WHERE parentId = #{parentId}
|
||||
AND dataType = 2
|
||||
@@ -13,13 +31,20 @@
|
||||
<if test="fileIds != null">
|
||||
UNION ALL
|
||||
(
|
||||
SELECT *
|
||||
SELECT file_metadata_info.*
|
||||
FROM file_metadata_info
|
||||
WHERE id IN (
|
||||
<if test="filterEmptyData != null and filterEmptyData">
|
||||
LEFT JOIN file_storage ON file_metadata_info.id = file_storage.dirId
|
||||
</if>
|
||||
WHERE file_metadata_info.id IN (
|
||||
<foreach collection="fileIds" item="fileId" separator=",">
|
||||
#{fileId}
|
||||
</foreach>
|
||||
)
|
||||
|
||||
<if test="filterEmptyData != null and filterEmptyData">
|
||||
AND file_storage.fileId IS NOT NULL
|
||||
</if>
|
||||
)
|
||||
</if>
|
||||
|
||||
|
||||
@@ -764,6 +764,7 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
|
||||
List<SimulationNode> nodeList = this.lambdaQuery()
|
||||
.eq(ObjectUtils.isNotEmpty(nodeId), SimulationNode::getId, nodeId)
|
||||
.eq(ObjectUtils.isNotEmpty(nodeType), SimulationNode::getNodeType, nodeType)
|
||||
.orderByDesc(SimulationNode::getCreateTime)
|
||||
.list();
|
||||
if (CollectionUtils.isEmpty(nodeList)) {
|
||||
return SdmResponse.failed("未找到节点");
|
||||
|
||||
Reference in New Issue
Block a user