package cn.superdesk.uniorder.common.enums.scheduler.jd;

import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;

/**
 * @Description: -- 导入状态:0-导入中;1-导入成功;2-导入失败; process_state 	process_time
 * -- 导入中:指该对账任务正在上传服务端中的状态,对账任务创建的初始状态;
 * -- 导入成功:指该对账任务上传服务端成功&符合数据检查条件的状态;
 * -- 导入失败:指该对账任务上传服务失败或其他异常或不符合数据检查条件的状态;
 * @Author: linjinyu
 * @CreateDate: 2022/6/8 5:52 下午
 * @UpdateUser: linjinyu
 * @UpdateDate: 2022/6/8 5:52 下午
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
public enum ScheduleTaskProcessStateEnum {


    导入中(0, "导入中"),
    导入成功(1, "导入成功"),
    导入失败(2, "导入失败"),

    ;

    private Integer key;
    private String  desc;

    ScheduleTaskProcessStateEnum(Integer key, String desc) {
        this.key = key;
        this.desc = desc;
    }

    public Integer getKey() {
        return key;
    }

    public String getDesc() {
        return desc;
    }

    public static String getDesc(Integer key) {
        for (ScheduleTaskProcessStateEnum c : ScheduleTaskProcessStateEnum.values()) {
            if (c.key.equals(key)) {
                return c.getDesc();
            }
        }
        return null;
    }

    private static final Map<Integer, ScheduleTaskProcessStateEnum> LOOKUP = new HashMap<>();

    static {
        for (ScheduleTaskProcessStateEnum s : EnumSet.allOf(ScheduleTaskProcessStateEnum.class)) {
            LOOKUP.put(s.getKey(), s);
        }
    }

    public static ScheduleTaskProcessStateEnum get(Integer key) {
        return LOOKUP.get(key);
    }
}
