package cn.cslg.pas.common.model.vo;

import lombok.Data;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * uploadSetting.json数据源配置文件实体类
 *
 * @author 沈永艺
 * @date 2022/7/1
 * @description 用于存储从配置文件(Json类型)中解析出来的配置参数
 */

@Data
@Accessors(chain = true)
public class UploadSettingVO {
    /**
     * 数据来源id（1.智慧芽 2.合享 3.Patentics）
     */
    private String sourceId;

    /**
     * 数据来源名称
     */
    private String sourceName;

    /**
     * 数据来源中文名称
     */
    private String name;

    /**
     * 可配置属性 包含与数据来源文件(Excel文件)中的字段相对应的属性字段 是一个数组
     */
    private List<Column> column;

    @Data
    @Accessors(chain = true)
    public static class Column {
        /**
         * 上传Excel栏位名称
         */
        private String setName;

        /**
         * 在代码中创建的数据库类里面的字段
         */
        private String column;

        /**
         * 分隔符
         */
        private String splitSymbol;

        /**
         * 处理方法
         */
        private String handler;

        /**
         * 处理方法(特殊或后期加入方法) 存放Jar包路径
         */
        private String jarOrClassPath;
    }

}
