package com.yonge.cooleshow.auth.middleware.wechat;

import com.microsvc.toolkit.middleware.wechat.MWxCacheService;
import com.yonge.cooleshow.auth.api.entity.WxConfigInfo;
import com.yonge.cooleshow.auth.api.entity.WxTemplateConfig;
import com.yonge.cooleshow.auth.api.entity.WxTemplateMessage;

/**
 * Created by Eric.Shang on 4/1/18.
 */
public interface WxCacheService extends MWxCacheService {

    /**
     * 模板消息内容
     * @param appId 公众号标识
     * @param cmd 消息类型
     * @return WxTemplateMessage
     */
    WxTemplateMessage findWxTemplateMessageBaseInfo(String appId, String cmd);

    /**
     * 模板消息配置
     * @param appId 公众号标识
     * @param cmd 消息类型
     * @return WxTemplateConfig
     */
    WxTemplateConfig findWxTemplateConfigBaseInfo(String appId, String cmd);

    /**
     * 查询公众号通知消息内容
     * @param appId 公众号Id
     * @return WxConfigInfo
     */
    WxConfigInfo findMPSubscribeNotifyMessageBaseInfo(String appId);

    /**
     * 更新公众号关注状态
     * @param appId 应用ID
     * @param openId 来源用户
     * @param subscribe 订阅状态
     */
    void updateMpSubscribeStatusInfo(String appId, String openId, Boolean subscribe);
}
