package com.ruoyi.platform.vo;

import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import com.ruoyi.platform.domain.Models;
import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
public class ModelDependcyTreeVo {
    /**
     * 当前模型id
     */
    private Integer currentModelId;
    /**
     * 实验实例id
     */
    private Integer expInsId;

    /**
     * 版本
     */
    private String version;


    /**
     * 引用项目
     */
    private String refItem;
    /**
     * 训练任务
     */
    private Map trainTask;
    /**
     * 训练数据集
     */
    private List<Map<String, Object>> trainDataset;

    /**
     * 训练参数
     */
    private List trainParams;
    /**
     * 训练镜像
     */
    private String trainImage;
    /**
     * 测试数据集
     */
    private List<Map<String, Object>> testDataset;
    /**
     * 依赖项目
     */
    private Map projectDependency;

    private List<Map<String, Object>> parentModelsMap;
    /**
     * 父模型
     */
    private List<ModelDependcyTreeVo> parentModels;

    /**
     * 子模型
     */
    private List<ModelDependcyTreeVo> childrenModels;

    private Long workflowId;
    private ModelVersionDependcyVo modelVersionDependcyVo;
}
