package com.stylefeng.guns.modular.system.service; import com.baomidou.mybatisplus.service.IService; import com.stylefeng.guns.modular.system.model.UserInfo; import com.stylefeng.guns.modular.system.util.ResultUtil; import com.stylefeng.guns.modular.system.warpper.LoginWarpper; import javax.servlet.http.HttpServletRequest; import java.util.Date; import java.util.Map; public interface IUserInfoService extends IService { /** * 获取短信验证码 * @param phone * @return */ ResultUtil queryCaptcha(String phone, Integer type) throws Exception; /** * 校验短信验证码 * @param phone * @param code * @return * @throws Exception */ boolean checkCaptcha(String phone, String code) throws Exception; /** * 手机验证码登录 * @param phone * @param code * @return */ ResultUtil captchaLogin(String phone, String code, String registIp, String registAreaCode,String loginType) throws Exception; /** * 手机一键登录 * @param accessToken * @param registIp * @param registAreaCode * @return * @throws Exception */ ResultUtil oneClickLogin(String accessToken, String registIp, String registAreaCode,String loginType,String androidOrIos) throws Exception; ResultUtil captchaLogin(String phone, String code, Integer uid, Integer type, Integer userType,String loginType) throws Exception; /** * 手机号码查询用户 * @param phone * @return * @throws Exception */ UserInfo queryByPhone(String phone) throws Exception; /** * 账号密码登录 * @param phone * @param password * @return * @throws Exception */ ResultUtil userLogin(String phone, String password,String loginType) throws Exception; /** * 微信授权登录 * @param type 登录端口(1:APP登录,2:小程序) * @param openid 微信openid * @param unionid 微信unionid * @param jscode 小程序登录时的jscode临时凭证 * @param registIp ip地址 * @param registAreaCode 当前定位区县行政编号(6位) * @return */ ResultUtil wxLogin(Integer type, String openid, String unionid, String jscode, String registIp, String registAreaCode, Integer sex, String nickName, String avatar,String loginType) throws Exception; /** * 忘记密码的操作 * @param phone * @param code * @param password * @return * @throws Exception */ ResultUtil forgetPassword(String phone, String code, String password) throws Exception; /** * 设置手机号码 * @param uid * @param phone * @param code * @return * @throws Exception */ ResultUtil bindingPhone(Integer uid, String phone, String code,String loginType) throws Exception; /** * 从redis中获取用户id * @param request * @return * @throws Exception */ Integer getUserIdFormRedis(HttpServletRequest request) throws Exception; /** * 获取用户详情 * @param uid * @return * @throws Exception */ Map queryUserInfo(Integer uid) throws Exception; /** * 电话号码查询用户 * @param phone * @return * @throws Exception */ Map queryUser(String phone) throws Exception; /** * 设置紧急联系人 * @param name * @param phone * @param uid * @throws Exception */ void setUrgentUser(String name, String phone, Integer uid) throws Exception; /** * 充值余额 * @param payType * @param money * @param uid * @return * @throws Exception */ ResultUtil depositBalance(Integer payType, Double money, Integer uid, Integer type) throws Exception; /** * 修改手机号码 * @param code * @param phone * @param uid * @return * @throws Exception */ ResultUtil updatePhone(String code, String phone, Integer uid) throws Exception; /** * 修改密码 * @param password * @param uid * @return * @throws Exception */ ResultUtil updatePass(String password, Integer uid) throws Exception; /** * 修改个人信息 * @param avatar * @param nickname * @param sex * @param birthday * @param uid * @throws Exception */ void updateInfo(String avatar, String nickname, Integer sex, Date birthday, Integer uid) throws Exception; /** * 获取实名认证数据 * @param uid * @return * @throws Exception */ Map queryRealName(Integer uid) throws Exception; /** * 充值余额完成支付后的处理 * @param id 用户id * @param order_id 工行订单id * @param paymentRecordId 预支付订单id * @param type 支付类型(1=微信,2=支付宝) * @throws Exception */ void payCancelUserBalance(Integer id, String order_id, Integer paymentRecordId, Integer type) throws Exception; /** * H5接入道行龙城实现登录 * @param authCode * @return * @throws Exception */ ResultUtil dxlcLogin(String authCode, String registAreaCode,String loginType) throws Exception; /** * 小程序中手机号码登录后绑定微信 * @param userId * @param jscode * @return * @throws Exception */ ResultUtil phoneLoginBindingWeChat(Integer userId, String jscode) throws Exception; }