From d6628194b6d867f840d37db2ef9dc057a2084270 Mon Sep 17 00:00:00 2001 From: 姜友瑶 <935090232@qq.com> Date: Fri, 01 Jul 2022 07:36:00 +0800 Subject: [PATCH] fix:修复用户绑定后被删除的情况 --- zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxBindingPhoneNumber.java | 22 ++++++++++++---------- 1 files changed, 12 insertions(+), 10 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxBindingPhoneNumber.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxBindingPhoneNumber.java index 84755ba..52cd2d5 100644 --- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxBindingPhoneNumber.java +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxBindingPhoneNumber.java @@ -1,11 +1,11 @@ package com.matrix.system.shopXcx.api.action; -import com.matrix.component.rabbitmq.RabiitMqTemplate; -import com.matrix.component.redis.RedisUserLoginUtils; +import com.alibaba.fastjson.JSON; import com.matrix.component.tools.AES; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.tools.LogUtil; import com.matrix.core.tools.StringUtils; +import com.matrix.system.common.init.UserCacheManager; import com.matrix.system.hive.bean.SysVipInfo; import com.matrix.system.hive.dao.SysVipInfoDao; import com.matrix.system.shopXcx.api.pojo.BindingPhoneNumberPOJO; @@ -20,7 +20,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.util.Arrays; import java.util.List; +import java.util.Objects; /** * @author jiangyouyao @@ -37,10 +39,8 @@ private SysVipInfoDao sysVipInfoDao; @Autowired - private RedisUserLoginUtils redisUserLoginUtils; + private UserCacheManager userCacheManager; - @Autowired - private RabiitMqTemplate mqTemplate; @Value("${evn}") private String evn; @@ -97,19 +97,21 @@ if (StringUtils.isBlank(bindingPhoneNumber.getPhoneNumber())) { return new AjaxResult(AjaxResult.STATUS_FAIL, "手机号码不能为空"); } - SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); + SysVipInfo loginUser = userCacheManager.getLoginUser(); + SysVipInfo oldeUser = sysVipInfoDao.selectByPhone(bindingPhoneNumber.getPhoneNumber(), loginUser.getCompanyId()); - if(oldeUser!=null){ + if(oldeUser!=null && !Objects.equals(oldeUser.getId(),loginUser.getId())){ oldeUser.setIsSales(loginUser.getIsSales()); oldeUser.setOpenId(loginUser.getOpenId()); oldeUser.setSessionKey(loginUser.getSessionKey()); oldeUser.setPhoto(loginUser.getAvatarUrl()); oldeUser.setAvatarUrl(loginUser.getAvatarUrl()); sysVipInfoDao.update(oldeUser); - sysVipInfoDao.deleteById(loginUser.getId()); - String token = redisUserLoginUtils.saveUserInfo(oldeUser); + LogUtil.info("绑定手机号码删除会员。。"+ JSON.toJSONString(loginUser)); + sysVipInfoDao.deleteLogicByIds(Arrays.asList(loginUser.getId())); + String token = userCacheManager.saveUserInfo(oldeUser); AjaxResult result = AjaxResult.buildSuccessInstance("绑定成功"); result.putInMap("token",token); result.putInMap("userInfo",oldeUser); @@ -145,7 +147,7 @@ @RequestMapping(value = "/deciphering") public @ResponseBody AjaxResult deciphering(@RequestBody DataDecipheringVo dataDecipheringVo) { - SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); + SysVipInfo loginUser = userCacheManager.getLoginUser(); String session_key = loginUser.getSessionKey(); LogUtil.debug(dataDecipheringVo.toString()); String jsonResult = AES.wxDecrypt(dataDecipheringVo.getEncryptedData(), session_key, dataDecipheringVo.getIv()); -- Gitblit v1.9.1