rentaiming
2024-06-03 f7e5362d1193d0d58c4acab9395dd9ac8ac0e234
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
@@ -70,9 +70,9 @@
    //微信
    private static final String ACCESS_TOKEN_HOST = "https://api.weixin.qq.com/cgi-bin/token";
    private static final String WX_APPID = "wxb7f0ea286fc4e535";
    private static final String WX_APPID = "wxe91f1af7638aa5dd";
    private static final String WX_SECRET = "852a2512a6ab559cafc68bae5d4160ac";
    private static final String WX_SECRET = "a787e1a462715604e0c9528b6d8960d1";
    //支付寶
    /**
@@ -92,7 +92,7 @@
    /**
     * appID
     **/
    private static final String APP_ID_PROD = "2021003196653501";
    private static final String APP_ID_PROD = "wxe91f1af7638aa5dd";
    /**
     * 私钥
     */
@@ -111,6 +111,7 @@
    @Resource
    private RedisService redisService;
    @Override
    public AppMiniLoginVO loginThird(AppMiniLoginDTO appMiniLoginDto) {
@@ -149,11 +150,37 @@
                    SysUser sysUser = null;
                    if (member != null) {
                        sysUser = sysUserService.getSysUser(member.getUserId()).getData();
                        appMiniLoginVo.setZfbuserid(response.getUserId());
                        appMiniLoginVo.setSysUser(sysUser);
                        appMiniLoginVo.setMemberid(member.getId());
                        redisService.setCacheObject(SecurityConstant.SESSION_KEY + response.getUserId(), null, 1L, TimeUnit.DAYS);
                    }else{
                        //创建新用户
                        String memberId = IdUtils.simpleUUID();
                        sysUser = new SysUser();
                        sysUser.setUserName(memberId);
                        sysUser.setUserType("03");
                        sysUser.setNickName("白金用户");
                        sysUser.setPhonenumber(response.getUserId());
                        sysUser.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
                        String password = "123456";
                        sysUser.setPassword(SecurityUtils.encryptPassword(password));
                        sysUser = sysUserService.registerUser(sysUser).getData();
                        member = new Member();
                        member.setUserId(sysUser.getUserId());
                        member.setDelFlag(0);
                        member.setNickname("白酒用户");
                        member.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
                        member.setZfbOpenid(response.getUserId());
                        this.save(member);
                        appMiniLoginVo.setMiniOpenid(member.getMiniOpenid());
                        appMiniLoginVo.setWxUnionid(member.getWxUnionid());
                        appMiniLoginVo.setSysUser(sysUser);
                        appMiniLoginVo.setMemberid(member.getId());
                    }
                    appMiniLoginVo.setZfbuserid(response.getUserId());
                    appMiniLoginVo.setSysUser(sysUser);
                    appMiniLoginVo.setMemberid(member.getId());
                    redisService.setCacheObject(SecurityConstant.SESSION_KEY + response.getUserId(), null, 1L, TimeUnit.DAYS);
                }
            }
        }else{
@@ -180,11 +207,49 @@
                if (member != null) {
                    sysUser = sysUserService.getSysUser(member.getUserId()).getData();
                }
                appMiniLoginVo.setMiniOpenid(openid);
                appMiniLoginVo.setWxUnionid(unionid);
                appMiniLoginVo.setMemberid(member.getId());
                appMiniLoginVo.setSysUser(sysUser);
                appMiniLoginVo.setSessionKey(sessionKey);
                LambdaQueryWrapper<Member> wrapper1= Wrappers.lambdaQuery();
                wrapper1.eq(Member::getMiniOpenid,openid);
                Member member1=this.getOne(wrapper);
                if (member1==null){
                        //创建新用户
                        String memberId = IdUtils.simpleUUID();
                        sysUser = new SysUser();
                        sysUser.setUserName(memberId);
                        sysUser.setUserType("03");
                        sysUser.setNickName("白金用户");
                        sysUser.setPhonenumber(openid);
                        sysUser.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
                        String password = "123456";
                        sysUser.setPassword(SecurityUtils.encryptPassword(password));
                        sysUser = sysUserService.registerUser(sysUser).getData();
                        member = new Member();
                        member.setUserId(sysUser.getUserId());
                        member.setDelFlag(0);
                        member.setNickname("白酒用户");
                        member.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
                        member.setWxUnionid(unionid);
                        member.setMiniOpenid(openid);
                        this.save(member);
                    appMiniLoginVo.setMiniOpenid(member.getMiniOpenid());
                    appMiniLoginVo.setWxUnionid(member.getWxUnionid());
                    appMiniLoginVo.setSysUser(sysUser);
                    appMiniLoginVo.setMemberid(member.getId());
                    } else {
                    sysUser = sysUserService.getSysUser(member.getUserId()).getData();
                    appMiniLoginVo.setMiniOpenid(member.getMiniOpenid());
                    appMiniLoginVo.setWxUnionid(member.getWxUnionid());
                    appMiniLoginVo.setSysUser(sysUser);
                    appMiniLoginVo.setMemberid(member.getId());
                    }
                redisService.setCacheObject(SecurityConstant.SESSION_KEY + openid, sessionKey, 1L, TimeUnit.DAYS);
            }
        }