Browse Source

微信用户绑定缓存修复

contract
Yen 2 years ago
parent
commit
273ca2791d
  1. 13
      src/main/java/com/qs/serve/modules/wx/controller/WxUserController.java

13
src/main/java/com/qs/serve/modules/wx/controller/WxUserController.java

@ -2,6 +2,8 @@ package com.qs.serve.modules.wx.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.qs.serve.common.framework.redis.RedisService;
import com.qs.serve.common.model.consts.RedisCacheKeys;
import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.util.PageUtil;
@ -33,6 +35,7 @@ public class WxUserController {
private WxUserService wxUserService;
private SysUserService sysUserService;
private RedisService redisService;
/**
* 翻页查询
@ -73,7 +76,7 @@ public class WxUserController {
@PostMapping("/bind")
public R<?> bind(@RequestBody @Valid WxUserBindBo param){
WxUser wxUser = wxUserService.getById(param.getWxUserId());
if(wxUser.getSysUserId()!=null&&!wxUser.getSysUserId().equals("0")){
if(StringUtils.hasText(wxUser.getSysUserId())&&!wxUser.getSysUserId().equals("0")){
return R.error("该微信用户已被绑定");
}
SysUser sysUser = sysUserService.getById(param.getSysUserId());
@ -103,8 +106,10 @@ public class WxUserController {
*/
@PostMapping("/rmBind")
public R<?> rmBind(@RequestBody @Valid WxUserRmBindBo param){
String sysUserId = null;
if(StringUtils.hasText(param.getWxUserId())){
WxUser wxUser = wxUserService.getById(param.getWxUserId());
sysUserId = wxUser.getSysUserId();
if(!StringUtils.hasText(wxUser.getUnionId())){
wxUser.setSysUserId("0");
wxUser.setEmpName(wxUser.getNickName());
@ -120,6 +125,7 @@ public class WxUserController {
wxUserService.update(updVo,lqw);
}
}else if (StringUtils.hasText(param.getSysUserId())){
sysUserId = param.getSysUserId();
SysUser sysUser = sysUserService.getById(param.getSysUserId());
List<WxUser> wxUserList = wxUserService.getBySysUserId(sysUser.getId());
for (WxUser wxUser : wxUserList) {
@ -129,6 +135,11 @@ public class WxUserController {
wxUserService.updateById(wxUser);
}
}
if(sysUserId!=null){
String client = "wx_app";
String redisKey = StringUtils.format(RedisCacheKeys.LOGIN_KEY_APP,client,sysUserId);
redisService.remove(redisKey);
}
return R.ok();
}

Loading…
Cancel
Save