Commit 783dd840 authored by 陈明豪's avatar 陈明豪

Merge remote-tracking branch 'origin/dev' into dev

parents a355e7e4 d8dcec43
......@@ -66,6 +66,24 @@ public class VisitInfomationController extends CyPaginationController<VisitInfoM
visitInfomation);
}
//@PreAuthorize("@cyPerm.hasPerm('sys:itInfomation:add')")
@CyOpeLogAnno(title = "system-wx邀访信息管理-新增邀访信息", businessType = CyLogTypeEnum.INSERT)
@ApiOperation(value = "微信小程序添加邀访信息", notes = "添加邀访信息")
@PostMapping(value = "/wx/add")
public CyResult wxAdd(@RequestBody VisitInfoMation visitInfomation,HttpServletRequest request) {
// //todo 添加信息时候同时添加用户id
String tempUserId = CyUserUtil.getUserInfoStrProp(cyJwtUtil.getToken(request), CyUserUtil.USER_ID);
int userId = Integer.parseInt(tempUserId);
//添加条件添加用户id
visitInfomation.setUserId(userId);
CyPersistModel data = visitInfomationServiceImpl.persist(visitInfomation);
return CyResultGenUtil.builder(data,
CyMessCons.MESSAGE_ALERT_SUCCESS,
CyMessCons.MESSAGE_ALERT_ERROR,
visitInfomation);
}
//@PreAuthorize("@cyPerm.hasPerm('sys:itInfomation:delete')")
@CyOpeLogAnno(title = "system-邀访信息管理-删除邀访信息", businessType = CyLogTypeEnum.DELETE)
@ApiOperation(value = "逻辑删除邀访信息", notes = "逻辑删除邀访信息")
......
package org.rcisoft.tencent.controller;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.rcisoft.core.exception.CyServiceException;
import org.rcisoft.core.jwt.util.CyJwtUtil;
import org.rcisoft.tencent.service.CyWxMiniService;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -34,14 +36,21 @@ public class CyWxMiniAppController {
* wx login 第一步
* 1. 小程序刚进入的时候,可能会有token
* 2. 手机号登录,之前调用的
* 3. 判断登录的用户是否和数据库匹配,如果不匹配提示错误信息
*
* @param code code
* @param userType userType 用户类型 0-内部员工 1-外部访客
* @return
*/
@GetMapping("/validLogin")
public Map<String, Object> validLogin(@RequestParam("code") String code, HttpServletRequest request) {
public Map<String, Object> validLogin(@RequestParam("code") String code,@RequestParam("userType") String userType, HttpServletRequest request) {
//todo userType非空校验
// if (StringUtils.isEmpty(userType)){
// throw new CyServiceException(500,"未选择登录用户类型");
// }
// 1. 已经登录 ----> 延长登录过期时间 30分钟,返回token 和 基本信息(身份)
return cyWxMiniServiceImpl.validLogin(code, cyJwtUtil.getToken(request));
return cyWxMiniServiceImpl.validLogin(code,userType, cyJwtUtil.getToken(request));
}
/**
......
......@@ -14,9 +14,10 @@ public interface CyWxMiniService {
* 验证登录
*
* @param code
* @param userType
* @return
*/
Map<String, Object> validLogin(String code, String token);
Map<String, Object> validLogin(String code, String userType, String token);
/**
* 手机登录
......
......@@ -13,9 +13,11 @@ import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
import org.codehaus.xfire.util.Base64;
import org.rcisoft.core.exception.CyServiceException;
import org.rcisoft.core.jwt.bean.CyJwtBean;
import org.rcisoft.core.jwt.model.CyJwtUser;
import org.rcisoft.core.jwt.util.CyJwtUtil;
import org.rcisoft.core.result.enums.CyReSysExcEnum;
import org.rcisoft.core.service.CyRedisService;
import org.rcisoft.core.util.CyUserUtil;
import org.rcisoft.sys.rbac.menu.dao.SysMenuRbacRepository;
......@@ -97,7 +99,7 @@ public class CyWxMiniServiceImpl implements CyWxMiniService {
@Override
public Map<String, Object> validLogin(String code, String token) {
public Map<String, Object> validLogin(String code, String userType, String token) {
Map<String, Object> resultMap = new HashMap<>();
Map<String, String> res = this.getWxOpenId(code);
String wxOpenid = res.get(CyWxMiniCons.OPEN_ID_STR);
......@@ -118,9 +120,14 @@ public class CyWxMiniServiceImpl implements CyWxMiniService {
// 2. 未登录
//2.1.1 根据 open_id 数据库数据查询
List<UserDto> sysUsers = repositorys.selectByOpenid(wxOpenid);
if (CollectionUtils.isNotEmpty(sysUsers))
if (CollectionUtils.isNotEmpty(sysUsers)){
//todo 根据查找出来的用户数据进行判断登录用户类型是否匹配
if(!sysUsers.get(0).getUserType().equals(userType)){
throw new CyServiceException(500,"登录用户类型错误");
}
// 2.1.2 微信登录,数据库已绑定 openId --->
return wxLogin(resultMap, sysUsers.get(0));
}
else {
// 2.1.3 未登录,数据库未绑定 openId 新用户
resultMap.put(CyWxMiniCons.CODE, CyWxMiniCons.CODE_UNLOGIN);
......
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