package com.ydl.component.service.web;


import com.ydl.webview.H5JsBean;

/**
 * webview 点击事件监听
 * Created by harvie on 2017/7/4 0004.
 */

public interface WebViewClientClickListener {

    void openH5(H5JsBean.H5JsCmd.Params jsData);

    void courseList();

    void activeDetail(String id);

    void contactYi();

    void contactCourseCustomerService();

    void openTopicDetail(String topic_id);

    void openMember(String id);

    void sendTrend();

    void sendResultTrend(final String cover1, final String title1, final String purl1, String share_url1);

    void sendInfo(H5JsBean.H5JsCmd.Params params);

    void searchList(H5JsBean.H5JsCmd.Params params);

    void openExpertsHome(H5JsBean.H5JsCmd.Params params);

    void openTest(H5JsBean.H5JsCmd.Params params);

    void chat(int id, int toUid, int canTalk, String accessToken, int isFromQingShu);

    void chatSendMessage(int id, int toUid, int canTalk, String accessToken, int isFromQingShu);

    void chatTeam(int tid, int doctorId);

    void jumpLogin(H5JsBean.H5JsCmd.Params jsData);

    void openFmDetail(int id);

    void openArticle();

    void openFmList();

    void sendSubscriptionTimeMessage(String to_uid);

    void pay(H5JsBean.H5JsCmd.Params jsData);

    void payReceipt(H5JsBean.H5JsCmd.Params jsData);

    void payCourse(H5JsBean.H5JsCmd.Params jsData);

    void payTest(H5JsBean.H5JsCmd.Params jsData);

    void viewTestResult(H5JsBean.H5JsCmd.Params jsData);

    void ydlNative(H5JsBean.H5JsCmd jsData);//用于神策统计

    void openOrderDetail(H5JsBean.H5JsCmd.Params params);

    void expertProduct(H5JsBean.H5JsCmd.Params params);

    void order(H5JsBean.H5JsCmd.Params params);

    void toOrderCt(H5JsBean.H5JsCmd.Params params);


    void showDocList(H5JsBean.H5JsCmd.Params params);

    void goodExpert();

    void copyWechat(H5JsBean.H5JsCmd.Params params);

    void goWechat();

    void listenOrderDetail(H5JsBean.H5JsCmd.Params params);

    void detailSub(H5JsBean.H5JsCmd.Params params);

    void openAgreement(H5JsBean.H5JsCmd.Params params);

    void modifyEval(H5JsBean.H5JsCmd.Params params);

    void visitEval(H5JsBean.H5JsCmd.Params params);

    void coursePlay(H5JsBean.H5JsCmd.Params params);

    void closeFloatView();

    void courseWriteComment(H5JsBean.H5JsCmd.Params params);

    void courseComment(H5JsBean.H5JsCmd.Params params);

    void listenTel(H5JsBean.H5JsCmd.Params jsData);

    void voiceBroadcast(H5JsBean.H5JsCmd.Params params);

    void tel(H5JsBean.H5JsCmd.Params params);

    void onOrderByApp(H5JsBean.H5JsCmd.Params params);

    void orderSetTime(H5JsBean.H5JsCmd.Params params);

    void searchServiceDoc(int cateId);

    void openTestDetail(H5JsBean.H5JsCmd.Params params);

    void shareAction(H5JsBean.H5JsCmd.Params params);

    void openTestList();

    void feedBack();

    void phoneCall();

    void chatSchedule(H5JsBean.H5JsCmd.Params params);

    void invite(H5JsBean.H5JsCmd.Params params);

    void balance(H5JsBean.H5JsCmd.Params params);

    //是否显示下拉刷新控件
    void switchDownRefresh(H5JsBean.H5JsCmd.Params params);

    //跳转充值界面
    void recharge();

    void bindPhone();

    //界面刷新
    void refresh();

    //声网拨号逻辑
    void listenAgora(H5JsBean.H5JsCmd.Params jsData);

    void setTitle(H5JsBean.H5JsCmd.Params jsData);

    void saveImage(H5JsBean.H5JsCmd.Params jsData);

    void sendToExpert(H5JsBean.H5JsCmd.Params jsData);

    void confideConnect(H5JsBean.H5JsCmd.Params jsData);

    void confidePay(H5JsBean.H5JsCmd.Params jsData);

    void back();

    //调用公共支付的
    void commonPay(H5JsBean.H5JsCmd.Params jsData);

    //隐藏statusbar，全屏展示
    void hideStatusBar();

    void showStatusBar();

    //打开与关闭右上角菜单
    void openRightTopMenu();

    //打开与关闭底部分享弹框
    void openShareMenu(H5JsBean.H5JsCmd.Params params);

    //关闭页面
    void closeWebKit();

    void goHome(H5JsBean.H5JsCmd.Params params);
    //保存图片
//    void storePic();

    void sendUnReadNum(String callbackFuncName, String uid);

    //是否展示标题栏
    void shouldShowTitleBar(boolean isShowTitleBar);

    //设置当前页面类型
    void setSelfPageType(int selfType);

    default void playMeditation(int mediaId,long meditationId,int meditationType,String mediaCoverUrl){}

    default void switchSound(int mediaId,long meditationId,int meditationType,int businessType,
                             String buried,String mediaUrl,String mediaCoverUrl,String title,
                             String desc,int status){

    }

}
