package com.pcloud.book.applet.biz;

import com.pcloud.book.applet.dto.AnswerSubscribeDTO;
import com.pcloud.book.applet.dto.AnswerSubscribeUserDTO;

import java.util.Map;

public interface AnswerSubscribeBiz {

    /**
     * 答案订阅
     * @author：zhuyajie
     * @date：2020/9/16 16:24
     *  * @param null
     */
    AnswerSubscribeDTO answerSubscribe(AnswerSubscribeDTO answerSubscribeDTO);


    /**
     * 查询是否订阅
     * @author：zhuyajie
     * @date：2020/9/16 16:37
     *  * @param null
     */
    Map<String,Object> getSubscribeState(AnswerSubscribeDTO answerSubscribeDTO);
    /**
     * 定时推送答案订阅提醒
     * @author：zhuyajie
     * @date：2020/9/16 16:48
     *  * @param null
     */
    void sendAppletMsg4Answer();

    /**
     * 查订阅的书籍答案有更新
     * @author：zhuyajie
     * @date：2020/9/18 10:00
     *  * @param null
     */
    void checkAnswerUpdate();

    /**
     * 取消订阅
     * @param answerSubscribeDTO
     */
    void cancelAnswerSubscribe(AnswerSubscribeDTO answerSubscribeDTO);


    /**
     * 查用户订阅信息
     * @author：zhuyajie
     * @date：2021/5/14 16:41
     *  * @param null
     */
    AnswerSubscribeUserDTO getUserSubscribeInfo(Long wechatUserId);

    /**
     * 查公众号是否关注
     * @author：zhuyajie
     * @date：2021/6/3 14:36
     *  * @param null
     */
    AnswerSubscribeDTO getSubscribeQrcodeState(Long wechatUserId, Long accountSettingId);
    /**
     * 添加推送书刊埋点
     * @author：zhuyajie
     * @date：2021/6/3 14:43
     *  * @param null
     */
    void addSubscribePushRecord(AnswerSubscribeDTO answerSubscribeDTO);
}
