Commit ec4adb06 authored by 曹盼盼's avatar 曹盼盼

封装微信授权登录接口

parent 094ec2e0
...@@ -14,6 +14,7 @@ import com.yeejoin.amos.boot.module.tzs.api.mapper.ViewJgClaimMapper; ...@@ -14,6 +14,7 @@ import com.yeejoin.amos.boot.module.tzs.api.mapper.ViewJgClaimMapper;
import com.yeejoin.amos.boot.module.tzs.api.service.ITzBaseEnterpriseInfoService; import com.yeejoin.amos.boot.module.tzs.api.service.ITzBaseEnterpriseInfoService;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.EquipmentCategoryServiceImpl; import com.yeejoin.amos.boot.module.tzs.biz.service.impl.EquipmentCategoryServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.TzsAppService; import com.yeejoin.amos.boot.module.tzs.biz.service.impl.TzsAppService;
import com.yeejoin.amos.boot.module.tzs.biz.utils.HttpUtils;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.RegUnitInfo; import com.yeejoin.amos.boot.module.tzs.flc.api.entity.RegUnitInfo;
import com.yeejoin.amos.boot.module.tzs.flc.api.mapper.RegUnitInfoMapper; import com.yeejoin.amos.boot.module.tzs.flc.api.mapper.RegUnitInfoMapper;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
...@@ -36,6 +37,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel; ...@@ -36,6 +37,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.Collection; import java.util.Collection;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -188,4 +190,14 @@ public class TzsAppController { ...@@ -188,4 +190,14 @@ public class TzsAppController {
String sequenceNbr = viewJgClaimMapper.supervisoryCode(code); String sequenceNbr = viewJgClaimMapper.supervisoryCode(code);
return ResponseHelper.buildResponse(sequenceNbr); return ResponseHelper.buildResponse(sequenceNbr);
} }
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@RequestMapping(value = "/wxUserLogin", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "微信授权登陆", notes = "微信授权登陆")
public ResponseModel<JSONObject> wxUserLogin(@RequestBody JSONObject wx) {
return ResponseHelper.buildResponse(appService.wxUserLogin(wx));
}
} }
...@@ -7,11 +7,14 @@ import com.baomidou.mybatisplus.core.MybatisConfiguration; ...@@ -7,11 +7,14 @@ import com.baomidou.mybatisplus.core.MybatisConfiguration;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil; import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.tzs.api.common.CommonException; import com.yeejoin.amos.boot.module.tzs.api.common.CommonException;
import com.yeejoin.amos.boot.module.tzs.api.common.MobileLoginParam; import com.yeejoin.amos.boot.module.tzs.api.common.MobileLoginParam;
import com.yeejoin.amos.boot.module.tzs.api.dto.*; import com.yeejoin.amos.boot.module.tzs.api.dto.*;
import com.yeejoin.amos.boot.module.tzs.api.entity.*; import com.yeejoin.amos.boot.module.tzs.api.entity.*;
import com.yeejoin.amos.boot.module.tzs.api.mapper.CategoryOtherInfoMapper; import com.yeejoin.amos.boot.module.tzs.api.mapper.CategoryOtherInfoMapper;
import com.yeejoin.amos.boot.module.tzs.biz.utils.HttpUtils;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.RegUnitInfo; import com.yeejoin.amos.boot.module.tzs.flc.api.entity.RegUnitInfo;
import com.yeejoin.amos.boot.module.tzs.flc.api.mapper.RegUnitInfoMapper; import com.yeejoin.amos.boot.module.tzs.flc.api.mapper.RegUnitInfoMapper;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
...@@ -33,6 +36,7 @@ import org.springframework.web.multipart.MultipartFile; ...@@ -33,6 +36,7 @@ import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.IOException; import java.io.IOException;
...@@ -103,10 +107,21 @@ public class TzsAppService { ...@@ -103,10 +107,21 @@ public class TzsAppService {
@Autowired @Autowired
CategoryOtherInfoMapper categoryOtherInfoMapper; CategoryOtherInfoMapper categoryOtherInfoMapper;
@Autowired
RedisUtils redisUtils;
@Value("${minio.url.path}") @Value("${minio.url.path}")
String minioPath; String minioPath;
@Autowired @Autowired
private RegUnitInfoMapper regUnitInfoMapper; private RegUnitInfoMapper regUnitInfoMapper;
public static final String WXUSER_TOKEN = "wxUser_token";
/**
* token 过期时间,wechat 系统为7200 ,tzs 系统小于7200 防止获取到无效token
*/
private long time = 6000l;
/** /**
* 产品appkey * 产品appkey
...@@ -374,4 +389,38 @@ public class TzsAppService { ...@@ -374,4 +389,38 @@ public class TzsAppService {
} }
public JSONObject wxUserLogin(JSONObject wx) {
if (redisUtils.hasKey(WXUSER_TOKEN)) {
Object obj= redisUtils.get(WXUSER_TOKEN);
return JSONObject.parseObject(obj.toString());
}else {
StringBuffer buffer= new StringBuffer("https://api.weixin.qq.com/sns/jscode2session?appid=")
.append(wx.getString("appid")).append("&secret=").append(wx.getString("secret")).append("&js_code=").append(wx.getString("js_code"))
.append("&grant_type=").append( wx.getString("grant_type"));
String responseStr = HttpUtils.doGet(buffer.toString());
JSONObject response = null;
try {
response = JSONObject.parseObject(responseStr);
System.out.println("666"+response.getString("session_key"));
} catch (Exception e) {
throw new BadRequest("获取token 出错:" + e.getMessage());
}
if(response.get("session_key") != null) { // 获取token 成功
try {
redisUtils.set(WXUSER_TOKEN, response,time);
return response;
} catch (Exception e) {
throw new BadRequest("获取token 出错:" + e.getMessage());
}
} else {
throw new BadRequest("获取token 出错:" + response);
}
}
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment