package com.ematou.wxservice.common.constant;

/**
 * 微信开发中需要用到的常量
 * @author lhm
 * @version 1.0
 * 2021-05-11 15:10
 */
public class WeChatConstant {

    public static final String RESPONSE_OK = "ok";
    public static final String RESPONSE_ERROR_CODE = "errcode";
    public static final String RESPONSE_ERROR_MSG = "errmsg";
    public static final String TOKEN = "rv978qwd";


    /**
     * 自定义的模板的编号，可通过模板编号获取模板消息id
     */
    public static class TemplateMsgId {
        /**
         * 取件通知模板
         */
        public static final String TAKE_PARCEL_CODE_TEMPLATE_MSG_ID = "69SkKm9Hqw9MgHzfkazzCf5wiWXOStcs10WUSX1LwdE";
    }

    /**
     * 自定义菜单事件的key
     */
    public static class CustomEventKey {
        public static final String CALL_COMPANY = "call_company_button";        // 联系我们
        public static final String MY_TAKE_PARCEL_CODE = "my_code_button";      // 我的取件码

        public static final String SCANCODE_PUSH_BUTTON = "scancode_push_button";      // 扫码取件
        public static final String MY_HISTORY_RECORD = "my_history_button";     // 取件历史
        public static final String POLICY_SUPPORT = "policy_support_button";    // 政策支持

        public static final String BUSINESS_COOPERATION = "business_cooperation_btn";    // 商务合作
        public static final String AFTER_SALE_SERVICE = "after_sale_service_btn";    // 商务合作


    }

    /**
     * 消息类型
     */
    public static class XmlMsgType {
        public static final String TEXT = "text";
        public static final String IMAGE = "image";
        public static final String VOICE = "voice";
        public static final String SHORTVIDEO = "shortvideo";
        public static final String VIDEO = "video";
        public static final String NEWS = "news";
        public static final String MUSIC = "music";
        public static final String LOCATION = "location";
        public static final String LINK = "link";
        public static final String EVENT = "event";
        public static final String DEVICE_TEXT = "device_text";
        public static final String DEVICE_EVENT = "device_event";
        public static final String DEVICE_STATUS = "device_status";
        public static final String HARDWARE = "hardware";
        public static final String TRANSFER_CUSTOMER_SERVICE = "transfer_customer_service";
    }

    /**
     * 微信端推送过来的事件类型.
     */
    public static class EventType {
        public static final String SUBSCRIBE = "subscribe";
        public static final String UNSUBSCRIBE = "unsubscribe";
        public static final String SCAN = "scan";
        public static final String LOCATION = "LOCATION";
        public static final String CLICK = "CLICK";
        public static final String VIEW = "VIEW";
        /**
         * 下发消息
         */
        public static final String MEDIA_ID = "media_id";
        public static final String MINIPROGRAM = "miniprogram";
        public static final String MASS_SEND_JOB_FINISH = "MASSSENDJOBFINISH";
        /**
         * 扫码推事件的事件推送
         */
        public static final String SCANCODE_PUSH = "scancode_push";
        /**
         * 扫码推事件且弹出“消息接收中”提示框的事件推送.
         */
        public static final String SCANCODE_WAITMSG = "scancode_waitmsg";
        /**
         * 弹出系统拍照发图的事件推送.
         */
        public static final String PIC_SYSPHOTO = "pic_sysphoto";
        /**
         * 弹出拍照或者相册发图的事件推送.
         */
        public static final String PIC_PHOTO_OR_ALBUM = "pic_photo_or_album";
        /**
         * 弹出微信相册发图器的事件推送.
         */
        public static final String PIC_WEIXIN = "pic_weixin";
        /**
         * 弹出地理位置选择器的事件推送.
         */
        public static final String LOCATION_SELECT = "location_select";

        public static final String TEMPLATE_SEND_JOB_FINISH = "TEMPLATESENDJOBFINISH";
        /**
         * 微信小店 订单付款通知.
         */
        public static final String MERCHANT_ORDER = "merchant_order";

        /**
         * 卡券事件：卡券通过审核
         */
        public static final String CARD_PASS_CHECK = "card_pass_check";

        /**
         * 卡券事件：卡券未通过审核
         */
        public static final String CARD_NOT_PASS_CHECK = "card_not_pass_check";

        /**
         * 卡券事件：用户领取卡券
         */
        public static final String CARD_USER_GET_CARD = "user_get_card";

        /**
         * 卡券事件：用户转赠卡券
         */
        public static final String CARD_USER_GIFTING_CARD = "user_gifting_card";


        /**
         * 卡券事件：用户核销卡券
         */
        public static final String CARD_USER_CONSUME_CARD = "user_consume_card";


        /**
         * 卡券事件：用户通过卡券的微信买单完成时推送
         */
        public static final String CARD_USER_PAY_FROM_PAY_CELL = "user_pay_from_pay_cell";


        /**
         * 卡券事件：用户提交会员卡开卡信息
         */
        public static final String CARD_SUBMIT_MEMBERCARD_USER_INFO = "submit_membercard_user_info";

        /**
         * 卡券事件：用户打开查看卡券
         */
        public static final String CARD_USER_VIEW_CARD = "user_view_card";

        /**
         * 卡券事件：用户删除卡券
         */
        public static final String CARD_USER_DEL_CARD = "user_del_card";

        /**
         * 卡券事件：用户在卡券里点击查看公众号进入会话时（需要用户已经关注公众号）
         */
        public static final String CARD_USER_ENTER_SESSION_FROM_CARD = "user_enter_session_from_card";

        /**
         * 卡券事件：当用户的会员卡积分余额发生变动时
         */
        public static final String CARD_UPDATE_MEMBER_CARD = "update_member_card";

        /**
         * 卡券事件：当某个card_id的初始库存数大于200且当前库存小于等于100时，用户尝试领券会触发发送事件给商户，事件每隔12h发送一次
         */
        public static final String CARD_SKU_REMIND = "card_sku_remind";

        /**
         * 卡券事件：当商户朋友的券券点发生变动时
         */
        public static final String CARD_PAY_ORDER = "card_pay_order";

        /**
         * 小程序审核事件：审核通过
         */
        public static final String WEAPP_AUDIT_SUCCESS = "weapp_audit_success";

        /**
         * 小程序审核事件：审核不通过
         */
        public static final String WEAPP_AUDIT_FAIL = "weapp_audit_fail";

    }


}
