package com.liquidnet.service.base.constant;

public class MQConst {
    public enum AdamQueue {
        SMS_NOTICE("adam:stream:rk.sms.notice", "group.sms.sender", "短信通知"),
//        SMS_SPREAD("adam:stream:rk.sms.spread", "group.sms.sender", "短信推广"),

        SQL_UREGISTER("adam:stream:rk.sql.uregister", "group.sql.ucenter", "用户注册"),
        SQL_UCENTER("adam:stream:rk.sql.ucenter", "group.sql.ucenter", "用户中心"),
        SQL_UMEMBER("adam:stream:rk.sql.umember", "group.sql.ucenter", "购买会员"),
        ;
        private final String key;
        private final String group;
        private final String desc;

        AdamQueue(String key, String group, String desc) {
            this.key = key;
            this.group = group;
            this.desc = desc;
        }

        public String getKey() {
            return key;
        }

        public String getGroup() {
            return group;
        }

        public String getDesc() {
            return desc;
        }
    }

    public enum KylinQueue {
        SMS_NOTICE("adam:stream:rk.sms.notice", "group.sms.sender", "短信通知"),
//        SMS_SPREAD("adam:stream:rk.sms.spread", "group.sms.sender", "短信推广"),

        SQL_PERFORMANCE_LACK("kylin:stream:rk.performance.lack", "group.performance.lack", "缺票登记"),
        SQL_ORDER_CREATE("kylin:stream:rk.order.create", "group.order.create", "创建订单"),
        SQL_ORDER_AGAIN("kylin:stream:rk.order.again", "group.order.again", "订单再次支付"),
        SQL_ORDER_CLOSE("kylin:stream:rk.order.close", "group.order.close", "订单关闭"),
        SQL_ORDER_PAY("kylin:stream:rk.order.pay", "group.order.pay", "订单支付"),
        SQL_ORDER_REFUND("kylin:stream:rk.order.refund", "group.order.refund", "订单申请退款"),
        SQL_ORDER_REFUND_EXPRESS("kylin:stream:rk.refundOrderExpress", "group.refundOrderExpress", "用户退款发快递"),
        SQL_ORDER_WITHDRAW("kylin:stream:rk.order.withdraw", "group.order.withdraw", "订单申请撤回"),
        SQL_ORDER_OVERTIME_REFUND("kylin:stream:rk.order.overtime.refund", "group.order.overtime.refund", "超时支付申请退款"),
        SQL_STATION("kylin:stream:rk.station", "group.station", "验票更新"),
        SQL_TRANSFER("kylin:stream:rk.transfer", "group.transfer", "订单发起转赠"),
        SQL_TRANSFER_RESULT("kylin:stream:rk.transfer.result", "group.transfer.result", "订单结果转赠"),
        SQL_TRANSFER_OVERTIME("kylin:stream:rk.transfer.overtime", "group.transfer.overtime", "订单结果转赠"),
        ;
        private final String key;
        private final String group;
        private final String desc;

        KylinQueue(String key, String group, String desc) {
            this.key = key;
            this.group = group;
            this.desc = desc;
        }

        public String getKey() {
            return key;
        }

        public String getGroup() {
            return group;
        }

        public String getDesc() {
            return desc;
        }
    }


    public enum SweetQueue {
        ARTISTS_RELATION("sweet:stream:rk.artists.relation", "group.artists.relation", "用户-关系"),
        ARTISTS_RELATION_MDSK("sweet:stream:rk.artists.mdsk.relation", "group.artists.mdsk.relation", "用户-关系"),
        LUCK_DRAW("sweet:stream:rk.luckDraw", "group.luckDraw", "用户-抽奖"),
        SWEET_ANSWER_INSERT("sweet:stream:rk.answerInsert", "group.answerInsert", "答案"),
        SWEET_WECHAT_USER_INSERT("sweet:stream:rk.sweetUserInsert", "group.sweetUserInsert", "关注服务号的用户信息"),
        SWEET_REMIND_INSERT("sweet:stream:rk.remindInsert", "group.remindInsert", "提醒记录"),
        SWEET_TEMPLATE_MSG("sweet:stream:rk.sweetTemplateMsg", "group.sweetTemplateMsg", "发送模版消息"),
        SWEET_CITY_VOTE("sweet:stream:rk.cityVote", "group.cityVote", "用户投票记录"),
        SWEET_ANTIGENIC_QUESTION("sweet:stream:rk.antigenicQuestion", "group.antigenicQuestion", "防疫答题"),
        SWEET_POSTER("sweet:stream:rk.userLikeMusician", "group.userLikeMusician", "用户喜欢的音乐人"),
        SWEET_INTEGRAL_ACTIVITY_DRAW("sweet:stream:rk.integralActivityDraw", "group.integralActivityDraw", "积分抽奖"),
        SWEET_STONE_INTEGRAL("sweet:stream:rk.stoneIntegral", "group.stoneIntegral", "stone积分处理"),
        ;

        private final String key;
        private final String group;
        private final String desc;

        SweetQueue(String key, String group, String desc) {
            this.key = key;
            this.group = group;
            this.desc = desc;
        }

        public String getKey() {
            return key;
        }

        public String getGroup() {
            return group;
        }

        public String getDesc() {
            return desc;
        }
    }

    public enum CandyQueue {
        COUPON_USE("candy:stream:rk.coupon.use", "group.coupon.use", "券-使用"),
        COUPON_BACK("candy:stream:rk.coupon.back", "group.coupon.back", "券-回退"),
        COUPON_RECEIVE("candy:stream:rk.coupon.receive", "group.coupon.receive", "券-领取"),
        COUPON_ORDER_BACK("candy:stream:rk.coupon.order.back", "group.coupon.order.back", "券-订单-回退"),
        ;

        private final String key;
        private final String group;
        private final String desc;

        CandyQueue(String key, String group, String desc) {
            this.key = key;
            this.group = group;
            this.desc = desc;
        }

        public String getKey() {
            return key;
        }

        public String getGroup() {
            return group;
        }

        public String getDesc() {
            return desc;
        }
    }

    public enum StoneQueue {
        STONE_INSERT_LOGS("stone:stream:rk.logs.insert", "group.stone.logs.insert", "积分日志-添加"),
        STONE_INSERT_USER("stone:stream:rk.user.insert", "group.stone.user.insert", "积分用户-添加"),
//        STONE_COUPON_SEED("stone:stream:rk.coupon.send", "group.stone.coupon.send", "购买券-发放"),
        STONE_ORDER_COUPON("stone:stream:rk.order.pay", "group.stone.order.pay", "下订单-发放券"),
        ;

        private final String key;
        private final String group;
        private final String desc;

        StoneQueue(String key, String group, String desc) {
            this.key = key;
            this.group = group;
            this.desc = desc;
        }

        public String getKey() {
            return key;
        }

        public String getGroup() {
            return group;
        }

        public String getDesc() {
            return desc;
        }
    }

    public enum ChimeQueue {
        USER_OPERATION_LIKE("chime:stream:rk.user.operation.like", "group.user.operation.like", "划卡操作-喜欢"),
        USER_OPERATION_DISLIKE("chime:stream:rk.user.operation.dislike", "group.user.operation.dislike", "划卡操作-不喜欢");
        private final String key;
        private final String group;
        private final String desc;

        ChimeQueue(String key, String group, String desc) {
            this.key = key;
            this.group = group;
            this.desc = desc;
        }

        public String getKey() {
            return key;
        }

        public String getGroup() {
            return group;
        }

        public String getDesc() {
            return desc;
        }
    }

    public static void main(String[] args) {
        System.out.println(ChimeQueue.USER_OPERATION_LIKE.name());
    }

}
