package com.yonge.cooleshow.auth.api.client.fallback;

import java.util.List;
import java.util.Map;

import com.dayaedu.cbs.openfeign.wrapper.qrcode.CbsQrCodeScanWrapper;
import com.yonge.cooleshow.auth.api.dto.RealnameAuthReq;
import com.yonge.cooleshow.auth.api.dto.SysUserQueryInfo;
import com.yonge.toolset.utils.idcard.IdcardInfoExtractor;
import org.springframework.stereotype.Component;

import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
import com.yonge.cooleshow.auth.api.entity.SysUser;
import com.yonge.cooleshow.common.entity.HttpResponseResult;

@Component
public class SysUserFeignServiceFallback implements SysUserFeignService {

	@Override
	public SysUser queryUserById(Long userId) {
		return null;
	}

	@Override
	public SysUser queryUserInfo() {
		return null;
	}

	@Override
	public SysUser queryUserByMobile(String mobile) {
		return null;
	}

	public HttpResponseResult<Long> add(SysUser user){
		return null;
	}

	@Override
	public HttpResponseResult<Integer> update(SysUser user) {
		return null;
	}

	@Override
	public List<String> queryRoleCodeListByUserId(Long userId) {
		return null;
	}

	@Override
	public HttpResponseResult<Boolean> updateSysUser(SysUser user) {
		return HttpResponseResult.failed("请求失败");
	}

	@Override
	public HttpResponseResult<String> exitByPhone(String clientId, String phone) {
		return null;
	}

	@Override
	public HttpResponseResult<IdcardInfoExtractor> realNameAuth(RealnameAuthReq realNameAuthDto) {
		return null;
	}

	@Override
	public HttpResponseResult<Boolean> bindOpenId(SysUser user) {
		return HttpResponseResult.failed("请求失败");
	}

	@Override
	public HttpResponseResult refreshToken(String refreshToken, String clientId, String clientSecret) {
		return HttpResponseResult.failed("请求失败");
	}

	public HttpResponseResult<Long> getTenantByClient(Long userId,String clientId){
		return HttpResponseResult.succeed(-1L);
	}

	@Override
	public HttpResponseResult<String> logout() {
		return HttpResponseResult.failed("请求失败");
	}

	@Override
	public HttpResponseResult<String> logout(String phone, String client) {
		return null;
	}

	@Override
	public HttpResponseResult<String> exitByPhoneAndOpenId(String clientId, String phone, String openId) {
		return null;
	}

	@Override
	public HttpResponseResult<List<SysUser>> page(SysUserQueryInfo queryInfo) {
		return HttpResponseResult.failed("请求失败");
	}

	@Override
	public HttpResponseResult<String> client() {
		return null;
	}

	/**
	 * @param req
	 * @return
	 */
	@Override
	public CbsQrCodeScanWrapper.UserInfo userInfo(CbsQrCodeScanWrapper.QrCodeScanUserInfoReq req) {
		return null;
	}

	/**
	 * @param req
	 * @return
	 */
	@Override
	public CbsQrCodeScanWrapper.QrCodeScanToken login(CbsQrCodeScanWrapper.QrCodeScanReq req) {
		return null;
	}

	/**
	 * @param phone
	 * @param smsCode
	 * @param clientId
	 * @param loginType
	 * @param clientSecret
	 * @return
	 */
	@Override
	public HttpResponseResult<Map<String, Object>> smsLogin(String phone, String smsCode, String loginType, String clientId, String clientSecret) {
		return null;
	}
    @Override
    public HttpResponseResult<Void> logoffUser(Long id) {
        return null;
    }

}
