package jnpf.constants;

/**
 * 消息队列topic
 *
 * @author wangchunxiang
 * @date 2024/12/05
 */
public interface MessageTopicConstants {

    // 字符建议：字母a~z或A~Z、数字0~9以及下划线（）、短划线（-）和百分号（%）。长度建议：1~64个字符。

    /**
     * 任务消费主题
     */
    String PERSONNEL_SECONDMENT_TOPIC = "secondment-consumer-output";
    String PERSONNEL_SECONDMENT_FAIL_TOPIC = "personnel-onboarding-fail-topic";
    String PERMISSION_TOPIC = "permission-topic";
    //创建借调
    String PERSONNEL_ONBOARDING_TOPIC = "personnel-onboarding-topic";
    //取消借调
    String SECONDMENT_WITHDRAWAL_OUTPUT = "secondment-withdrawal-topic";
    //借调延迟
    String SECONDMENT_WITHDRAWAL_DELAY_OUTPUT = "secondment-withdrawal-delay-topic";
    //借调提前结束
    String SECONDMENT_WITHDRAWAL_EARLY_END_OUTPUT = "secondment-withdrawal-early-end-topic";

    //考勤统计清除(为了等待调用事务的全量提交，发送的延迟消息(等级是2（5秒后发送）)
    String ATTENDANCE_STATISTICS_BATCH_CLEAR_TOPIC = "attendance-statistics-batch-clear-topic";
    String ATTENDANCE_STATISTICS_BATCH_CLEAR_CONSUMER_GROUP = "attendance-statistics-batch-clear-consumer-group";

    //考勤统计单个生成(为了等待调用事务的全量提交，发送的延迟消息(等级是2（5秒后发送）)
    String ATTENDANCE_STATISTICS_SINGLE_TOPIC = "attendance-statistics-single-topic";
    String ATTENDANCE_STATISTICS_SINGLE_CONSUMER_GROUP = "attendance-statistics-single--consumer-group";

    String ATTENDANCE_NOTIFICATION_CLOCK_TOPIC = "attendance-notification-clock-topic";
    String ATTENDANCE_NOTIFICATION_CLOCK_CONSUMER_GROUP = "attendance-notification-clock-consumer-group";
    //考勤统计单个生成(为了等待调用事务的全量提交，发送的延迟消息(等级是2（5秒后发送）)
    String ATTENDANCE_STATISTICS_SINGLE_HISTORY_TOPIC = "attendance-statistics-single-history-topic";
    String ATTENDANCE_STATISTICS_SINGLE_HISTORY_CONSUMER_GROUP = "attendance-statistics-single-history-consumer-group";

    // 加班发券
    String ATTENDANCE_OVERTIME_TOPIC = "attendance-overtime-topic";
    String ATTENDANCE_OVERTIME_CONSUMER_GROUP = "attendance-overtime-consumer-group";

    // 绩效
    String AUDIT_RANKING_TOPIC = "audit-ranking-topic";
    String AUDIT_RANKING_TOPIC_CONSUMER_GROUP = "audit-ranking-consumer-group";
    /**
     * 任务消费组
     */
    String SECONDMENT_GROUP = "jnpf-ftb-secondment-group_1";
    String SECONDMENT_WITHDRAWAL_GROUP = "jnpf-ftb-secondment-withdrawal-group_1";
    String JNPF_GROUP = "jnpf-ftb-permission-group_1";
    String JNPF_USER_GROUP = "jnpf-ftb-permission-user-group_1";
    String ONBOARDING_GROUP = "jnpf-ftb-onboarding-group_1";
    String ONBOARDING_FAIL_GROUP = "jnpf-ftb-onboarding-fail-group_1";

    String TAG_ORGANIZE = "TAG_ORGANIZE";
    String ORGANIZE_RELATION_USER = "TAG_ORGANIZE_RELATION_USER";


    //培训topic
    String CULTIVATE_TOPIC = "jnpf-ftb-cultivate-topic";
    //培训消费者组
    String CULTIVATE_CONSUMER_GROUP_SELF = "jnpf-ftb-cultivate-consumer-group-self";
    String CULTIVATE_CONSUMER_GROUP = "jnpf-ftb-cultivate-consumer-group";

}
