package com.ruoyi.front.service;

import com.ruoyi.front.enums.EnvVersion;
import me.chanjar.weixin.common.error.WxErrorException;

import java.io.File;

/**
 * 微信小程序服务接口
 */
public interface IWxService {
    /**
     * 根据授权码获取用户OpenId
     * @param jsCode 获取用户openid授权码
     * @return 用户OpenId
     * @throws WxErrorException 微信API通信异常信息
     */
    public String getOpenId(String jsCode) throws WxErrorException;

    /**
     * 根据授权码获取用户手机号
     * @param code 获取用户手机后授权码
     * @return 微信用户手机号
     * @throws WxErrorException 微信API通信异常信息
     */
    public String getPhoneNumber(String code) throws WxErrorException;

    /**
     * 获取小程序二维码
     * @param scene 参数  示例: a=1&b=2
     * @param page 页面   示例: pages/index/index
     * @param envVersion  环境  示例: develop
     * @return 二维码文件
     */
    public File createWxaCode(String scene, String page, EnvVersion envVersion) throws WxErrorException;

}
