935090232@qq.com
2022-02-22 bbe0a2fd03063316e50cf141986bda984599bbda
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxBindingPhoneNumber.java
@@ -1,11 +1,10 @@
package com.matrix.system.shopXcx.api.action;
import com.matrix.component.rabbitmq.RabiitMqTemplate;
import com.matrix.component.redis.RedisUserLoginUtils;
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;
@@ -37,10 +36,8 @@
    private SysVipInfoDao sysVipInfoDao;
    @Autowired
    private RedisUserLoginUtils redisUserLoginUtils;
    private UserCacheManager userCacheManager;
    @Autowired
    private RabiitMqTemplate mqTemplate;
    @Value("${evn}")
    private String evn;
@@ -97,16 +94,38 @@
        if (StringUtils.isBlank(bindingPhoneNumber.getPhoneNumber())) {
            return new AjaxResult(AjaxResult.STATUS_FAIL, "手机号码不能为空");
        }
        //验证通过将手机号加入相应的用户数据中
        SysVipInfo sysVipInfo = new SysVipInfo();
        SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
        sysVipInfo.setId(loginUser.getId());
        if(loginUser.getShopId()==null){
            sysVipInfo.setShopId(bindingPhoneNumber.getShopId());
        SysVipInfo loginUser = userCacheManager.getLoginUser();
        SysVipInfo oldeUser = sysVipInfoDao.selectByPhone(bindingPhoneNumber.getPhoneNumber(), loginUser.getCompanyId());
        if(oldeUser!=null){
            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 = userCacheManager.saveUserInfo(oldeUser);
            AjaxResult result =   AjaxResult.buildSuccessInstance("绑定成功");
            result.putInMap("token",token);
            result.putInMap("userInfo",oldeUser);
            return result;
        }else{
            //验证通过将手机号加入相应的用户数据中
            SysVipInfo sysVipInfo = new SysVipInfo();
            sysVipInfo.setId(loginUser.getId());
            if(loginUser.getShopId()==null){
                sysVipInfo.setShopId(bindingPhoneNumber.getShopId());
            }
            sysVipInfo.setPhone(bindingPhoneNumber.getPhoneNumber());
            sysVipInfoDao.update(sysVipInfo);
            return new AjaxResult(AjaxResult.STATUS_SUCCESS, "绑定成功");
        }
        sysVipInfo.setPhone(bindingPhoneNumber.getPhoneNumber());
        sysVipInfoDao.update(sysVipInfo);
        return new AjaxResult(AjaxResult.STATUS_SUCCESS, "绑定成功");
    }
@@ -123,7 +142,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());