You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
1.8 KiB
96 lines
1.8 KiB
package com.keyware.composeanalysis.mongo;
|
|
|
|
import lombok.Data;
|
|
import org.springframework.data.annotation.Id;
|
|
import org.springframework.data.mongodb.core.mapping.Document;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
* AssemblyMongoDto 类,用于封装 MongoDB 中的装配数据文档。
|
|
* 此类映射到名为 "assembly_data" 的 MongoDB 集合。
|
|
*
|
|
* @author liuzongren
|
|
* @date 2024/7/9
|
|
*/
|
|
@Document(collection = "assembly_data")
|
|
@Data
|
|
public class AssemblyMongoDto {
|
|
|
|
/**
|
|
* MongoDB 文档的唯一标识符。
|
|
*/
|
|
@Id
|
|
private String id;
|
|
|
|
/**
|
|
* 项目引用文件的名称。
|
|
*/
|
|
private String fileName;
|
|
|
|
/**
|
|
* 匹配到的开源组件名称。
|
|
*/
|
|
private String assemblyName;
|
|
|
|
/**
|
|
* 匹配到的开源组件版本号。
|
|
*/
|
|
private String assemblyVersion;
|
|
|
|
/**
|
|
* 组件的来源 URL。
|
|
*/
|
|
private String url;
|
|
|
|
/**
|
|
* 开源率,描述组件开源程度的指标。
|
|
*/
|
|
private String semblance;
|
|
|
|
/**
|
|
* 许可证列表,描述组件的许可协议。
|
|
*/
|
|
private List<String> license;
|
|
|
|
/**
|
|
* 任务 ID,与分析任务关联。
|
|
*/
|
|
private String testFileId;
|
|
|
|
/**
|
|
* 文件 ID,与特定文件关联。
|
|
*/
|
|
private String fileId;
|
|
|
|
/**
|
|
* 父节点编号,用于构建树形结构。
|
|
*/
|
|
private int parentNode;
|
|
|
|
/**
|
|
* 节点所在的层次。
|
|
*/
|
|
private int layer;
|
|
|
|
/**
|
|
* 当前节点的编号。
|
|
*/
|
|
private int node;
|
|
|
|
/**
|
|
* 子节点集合,用于构建树形结构。
|
|
*/
|
|
private List<AssemblyMongoDto> children = new ArrayList<>();
|
|
|
|
/**
|
|
* 添加子节点的方法。
|
|
*
|
|
* @param child 要添加的子节点
|
|
*/
|
|
public void addChild(AssemblyMongoDto child) {
|
|
children.add(child);
|
|
}
|
|
} |