package com.qmth.teachcloud.task.enums;

import java.util.Objects;

/**
 * @Description: job enum
 * @Param:
 * @return:
 * @Author: wangliang
 * @Date: 2021/3/31
 */
public enum JobEnum {

    TIMED_SYNC_SCHOOL_JOB("学校信息同步定时任务"),

    TIMED_TASK_JOB_GROUP("定时任务job组"),

    RESET_CREATE_PDF_JOB("重新生成pdf定时任务"),

    RESET_CREATE_PDF_JOB_GROUP("重新生成pdfjob组"),

    SMS_NOTICE_TASK_EXPIRE_JOB("任务到期提醒定时任务"),

    SMS_NOTICE_TASK_EXPIRE_JOB_GROUP("任务到期提醒定时任务job组"),

    SMS_NOTICE_TASK_OVERDUE_JOB("任务逾期提醒定时任务"),

    SMS_NOTICE_TASK_OVERDUE_JOB_GROUP("任务逾期提醒定时任务job组"),

    SMS_NOTICE_TASK_RESEND_JOB("短信发送失败重发定时任务"),

    SMS_NOTICE_TASK_RESEND_JOB_GROUP("短信发送失败重发定时任务job组"),

    REDIS_MQ_JOB("学校信息同步定时任务"),

    REDIS_MQ_JOB_GROUP("学校信息同步定时任务组"),

    TIMED_SYNC_USER_PUSH_ERROR_JOB("用户推送失败再次推送定时任务"),

    TIMED_SYNC_USER_PUSH_ERROR_JOB_GROUP("用户推送失败再次推送定时任务组"),

    TIMED_SYNC_USER_NEED_PUSH_AGAIN_JOB("用户需重新推送再次推送定时任务"),

    TIMED_SYNC_USER_NEED_PUSH_AGAIN_JOB_GROUP("用户需重新推送再次推送定时任务组"),
    ;


    private String title;

    private JobEnum(String title) {
        this.title = title;
    }

    public String getTitle() {
        return title;
    }

    /**
     * 状态转换 toName
     *
     * @param value
     * @return
     */
    public static String convertToName(String value) {
        for (JobEnum e : JobEnum.values()) {
            if (Objects.equals(value.trim(), e.getTitle())) {
                return e.name();
            }
        }
        return null;
    }
}
