package com.dxhy.common.enums;

/**
 * 发票日志操作类型
 * 
 * @author jiaohongyang
 */
public enum LogTypeEnum {

    /**
     * 采集代码
     */
    CJ("1", 1),
    /**
     * 认证代码
     */
    RZ("2", 2),
    /**
     * 签收代码
     */
    QS("3", 3),
    /**
     * 取消签收代码
     */
    QXQS("4", 4),
    /**
     * 设置不认证代码
     */
    SZBRZ("5", 5),
    /**
     * 发票状态变更代码
     */
    FPZTBG("6", 6),
    /**
     * 退税认证
     */
    TSRZ("7", 7),
    /**
     * 出口转内销认证
     */
    CKZNXRZ("8", 8),
    /**
     * 出口转内销不认证
     */
    CKZNXBRZ("9", 9),
    /**
     * 录入
     */
    LR("10", 10);

    private final String[] RZLXMC =
        {"采集", "认证抵扣", "签收", "取消签收", "认证不抵扣", "票据状态变更", "退税认证", "转内销认证抵扣", "转内销认证不抵扣", "录入"};

    private String rzlxDm;
    private int index;

    LogTypeEnum(String rzlxDm, int index) {
        this.rzlxDm = rzlxDm;
        this.index = index;
    }

    public String getRzlxDm(int index) {
        for (LogTypeEnum log : LogTypeEnum.values()) {
            if (log.getIndex() == index) {
                return log.rzlxDm;
            }
        }
        return null;
    }

    public String getRzlxMc(int index) {
        int length = RZLXMC.length;
        if (index <= length) {
            return RZLXMC[index - 1];
        }
        return null;
    }

    public String getRzlxDm() {
        return rzlxDm;
    }

    public void setRzlxDm(String rzlxDm) {
        this.rzlxDm = rzlxDm;
    }

    public int getIndex() {
        return index;
    }

    public void setIndex(int index) {
        this.index = index;
    }
}
