package com.iailab.module.model.mdk.vo;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;

/**
 * 模型实体
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ModelVO {
    /**
     * 模型ID
     */
    private String id;

    /**
     * 模型编号
     */
    private String modelNo;

    /**
     * 模型名称
     */
    private String modelName;

    /**
     * 预测项ID
     */
    private String itemId;

    /**
     * 算法ID
     */
    private String arithId;

    /**
     * 训练样本长度
     */
    private Integer trainSampleLength;

    /**
     * 预测样本长度
     */
    private Integer predictSampleLength;

    /**
     * 是否在线训练
     */
    private Integer isOnlineTrain;

    /**
     * 模型路径
     */
    private String modelPath;

    /**
     * 是否归一化
     */
    private Integer isNormal;

    /**
     * 归一化后的最大值
     */
    private Double normalMax;

    /**
     * 归一化后的最小值
     */
    private Double normalMin;

    /**
     * 是否参与预测
     */
    private Integer status;

    /**
     * 类名称
     */
    private String className;

    /**
     * 方法名称
     */
    private String methodName;

    /**
     * 模型构造器
     */
    private String modelParamStructure;

    /**
     * 结果ID
     */
    private String resultstrid;

    /**
     * settingMap
     */
    private String settingMap;

    /**
     * 训练模型路径
     */
    private String trainModelPath;

    /**
     * 模型路径状态(1:需要更换,0:不需要更换)
     */
    private BigDecimal pathStatus;

    /**
     * 预测阶段需要输入的数据长度
     */
    private Integer pdim;
}