package com.sw.mes.fb.quality.statics;

import lombok.Getter;

public class EnumValues {

    public interface KeyValue {
        String getKey();

        String getValue();
    }

    /**
     * 检验入库类型
     */
    @Getter
    public enum SectionType implements KeyValue {
        正常单晶("正常单晶", "正常单晶"), 返修单晶("返修单晶", "返修单晶"), 返切单晶("返切单晶", "返切单晶"),
        退料单晶("退料单晶", "退料单晶"), 放行单晶("放行单晶", "放行单晶"), 二类单晶("二类单晶", "二类单晶"),
        B1单晶("B1单晶", "B1单晶"), B2单晶("B2单晶", "B2单晶"), 空心硅("空心硅", "空心硅"),
        籽晶专用("籽晶专用", "籽晶专用");

        private SectionType(String key, String value) {
            this.key = key;
            this.value = value;
        }

        private String key;
        private String value;
    }

    /**
     * 报修单状态
     */
    @Getter
    public enum RepairApplyStatus implements KeyValue {
        ASSIGNED("ASSIGNED", "已派工"), WAIT_TO_ASSIGN("WAIT_TO_ASSIGN", "待派工"),CANCEL("CANCEL", "已取消");

        private RepairApplyStatus(String key, String value) {
            this.key = key;
            this.value = value;
        }

        private String key;
        private String value;
    }
    /**
     * 报修级别
     */
    @Getter
    public enum RepairApplyLevel implements KeyValue {
        NORMAL("NORMAL", "一般"), EMERGENCY("EMERGENCY", "紧急");

        private RepairApplyLevel(String key, String value) {
            this.key = key;
            this.value = value;
        }

        private String key;
        private String value;
    }

    /**
     * 维修工单状态
     */
    @Getter
    public enum RepairOrderStatus implements KeyValue {
        WAIT_FOR_REPAIR("WAIT_FOR_REPAIR", "待维修"),
        STOPPING("STOPPING","暂停中"),
        REPAIRING("REPAIRING", "维修中"),
        WAIT_FOR_VERIFY("WAIT_FOR_VERIFY", "待验证"),
        FINISHED("FINISHED", "已完成"),
        CANCEL("CANCEL", "已取消");

        private RepairOrderStatus(String key, String value) {
            this.key = key;
            this.value = value;
        }

        private String key;
        private String value;
    }

    @Getter
    public enum DiseaseStatus implements KeyValue {
        DISEASE_ING("DISEASE_ING", "带病中"),
        DISEASE_CANCEL("DISEASE_CANCEL", "已消除"),
        ;

        private DiseaseStatus(String key, String value) {
            this.key = key;
            this.value = value;
        }

        private String key;
        private String value;
    }

    /**
     * 保养工单状态
     */
    @Getter
    public enum MaintainOrderStatus implements KeyValue {
        WAIT_FOR_MAINTAIN("WAIT_FOR_MAINTAIN", "待保养"), MAINTAINING("MAINTAINING", "保养中"), WAIT_FOR_VERIFY("WAIT_FOR_VERIFY", "待验证"), FINISHED("FINISHED", "已完成");

        private MaintainOrderStatus(String key, String value) {
            this.key = key;
            this.value = value;
        }

        private String key;
        private String value;
    }

    /**
     * 工单类型
     */
    @Getter
    public enum OrderType implements KeyValue {
        REPAIR("REPAIR", "维修工单"), MAINTAIN("MAINTAIN", "保养工单"), LIFE("LIFE", "寿命到");

        private OrderType(String key, String value) {
            this.key = key;
            this.value = value;
        }

        private String key;
        private String value;
    }
}
