rentaiming
2024-06-04 9ea0ed39137ded48ccd490cfe6d931d34d5c82d6
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,20 +92,16 @@
    /**
     * appID
     **/
    private static final String APP_ID_PROD = "2021003196653501";
    private static final String APP_ID_PROD = "2021004147684313";
    /**
     * 私钥
     */
    private static final String APP_PRIVATE_KEY = "";
    private static final String APP_PRIVATE_KEY = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCg31tKXap7oTKKKDtfXc/hQjriSJkKopfRkh9j1UA/BpY+6GLkbJhg8kw9CRCILjfi5M0F3FCu+j1ogeDE1ivRGJlX1l/TGj+HuM1g8qLx/tD5D+9nJq5UHfaoKxXPko8H3AWcN1n/MAq3kRwUJRkeYJyYrZ7Sd6RU2taVLktWu92lqoUahjFkQSkdJoKi77v5i1T56PLRFfClt72tnvgol4OXBfFEjpGVrnuYoiHCgLV9eN5Qmvdas/04TtU396p+atYycU2P/dU9fdc8NFFFJo+eYH7astJXIQsowpLtTS7lavQuzCcLvC20pRBPhql5+5X96DVdnOLMbdUKwLQ9AgMBAAECggEAZLuXgVhnYSSN7f7FNrEaczWyg3DsC8HGCN9TsoKcyRpJyDhhfCEXxVTTMkDTzkIKkpOsYagUCYz+GMuCwB5Pr42Ur3C37gr4jvbD+5nTOG7T0bENumx5Kojco27fKGvgDg7SoH/0ZZtiipFdoKueL+xVAjFtSuLJzqx9Q0qKuFLJH0lrQfHYyGcq9ZzrPKLrMZb3Ve3upmpaLjIddZmqnzK7g5lx/OLHEujXIR9u0VWzzxqeaFkgCAMuyzkNYwlpqtiTJsEggbnG9YsLf0n156F0dXo2i44fUav+bKU2ksv7YmENx3R9gPDuPAKH+MwQlwVIc6tR8jKoz0cUbmaujQKBgQDhvaQd4jg9zszdVw1enPWKWViu4rsEFirIz3CUBRB3g2mkZ+tXpQQps7bL7KLBFfXmVYiVMu4EoOfZlkAjJPbFMj9aSPZ3pbx0VnHG8+3T9T2eJdzZp/CehG3MyycNHxAbbl2B04Chiiyf67R0b4ZLMHoElQgJP9jF1q3Xiloi0wKBgQC2b73S4LZWlWkyIsmHYHmXyWta64W2whlL4Nsy97tl4kZNfLCG7mgG5FhHhi16lT7J6Sw1D2FgFov2B1r9+yGBRxckGzWoY5m6FtBE/l+42+gxsB41+kEgirVjlEaX7YBXmnux2LntPVlJOG6HTizjcUnTesGIRvwbmbR2tuXCrwKBgQCMJwKq7xW+AhQdY/vP/yFPaRNvWSOFcQHVNT2PGOnVWciQI1jxTGmePo7CY0PVH35RKE+pWjp+syvfYrKlX0C6w+yjcGNde4/apwTy4eWJ0FwWQSmyFNuGf2/wUz0Gn3+PmGEDxr25DaGRFHUwSUGWkx1elOytWW+LvTKnfKVjswKBgGuh50MnskvI4IRkw7Mr9vDXM5AzjfLx9syuf4RFZflJEyMaImeo9hTC2VZxUhmVPbMP7zXqug9fnflsA4H+jJjh4UQ7DWAoSwTf+sYJsV211/qgpmJAH/Zb/4Idc7yksWh9yuZ1L9RIsomhUoxfUdpp9x1euhl1j72U5ER5yXofAoGAZNrIYFWk4S8mqFY8/h0YVGxT7Hj0ppLsq20N4OzglScoEEG+aYmWDOQU9kWcxsD44bMdzk2k0DyOhHbp8Tjd1hp0UFb03s8HgERcFHMZMzQ5oqtWQEoYiyQZxReXZZvWUbV+dg1HXXG8I26XAKb3OWFUIBBfKa2/Ig9ensY9m+M=";
    /**
     * 支付宝公钥
     */
    private static final String ALIPAY_PUBLIC_KEY = "";
    private static final String ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAh+tCVKqUmlHDL8Ki1TUJtzE5IKV1irJuoHWZTvndJCKJJ8bdWxL9mu5xsy8KkfrnS6wJIKBMLTxMoYQHG7l2Gt07YyUCYHS5+yvbHtTkyFFy2KRPeUEWXz1Tm4juvInDvvr+n7v9ETepToGhC+UDlQcBvuSppw8N+463E+1GRrC4APwXYGLzaIvYvDHcQAULkWhXsjzxJSmeSi12kqWKlgnVJC1y0FT8xQtvhwShfaIqKwzErn9S2z7JjdXboJMUYQHoqF1A4SmWY8c0qawqvx2hGP36W3RDQ4cczzFwUHS1Cylhsbgh1COc4OdANCX4Np2NUzaRDCNzN0WVFKtK+QIDAQAB";
    @Resource
    private  IMemberService iMemberService;
    @Resource
    private WxMaService wxMaService;
@@ -115,6 +111,7 @@
    @Resource
    private RedisService redisService;
    @Override
    public AppMiniLoginVO loginThird(AppMiniLoginDTO appMiniLoginDto) {
@@ -145,19 +142,43 @@
                if (response.isSuccess()) {
                    System.out.println("调用成功");
                    //我这里只返回了一个字段给前端用
                    String user1= response.getUserId();
                    String user1= response.getOpenId();
                    LambdaQueryWrapper<Member> wrapper= Wrappers.lambdaQuery();
                    wrapper.eq(Member::getZfbOpenid,response.getUserId());
                    Member member=iMemberService.getOne(wrapper);
                    wrapper.eq(Member::getZfbOpenid,response.getOpenId());
                    Member member=this.getOne(wrapper);
                    SysUser sysUser = null;
                    if (member != null) {
                        sysUser = sysUserService.getSysUser(member.getUserId()).getData();
                        appMiniLoginVo.setZfbuserid(response.getOpenId());
                        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.getOpenId());
                        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.getOpenId());
                        this.save(member);
                        appMiniLoginVo.setZfbuserid(response.getUserId());
                        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{
@@ -179,16 +200,54 @@
                //获取用户
                LambdaQueryWrapper<Member> wrapper= Wrappers.lambdaQuery();
                wrapper.eq(Member::getZfbOpenid,session.getOpenid());
                Member member=iMemberService.getOne(wrapper);
                Member member=this.getOne(wrapper);
                SysUser sysUser = null;
                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);
            }
        }
@@ -201,25 +260,25 @@
    @Override
    public Member getMembeid(MemberDTO memberDTO) {
        return  iMemberService.getById(memberDTO.getMemberid());
        return  this.getById(memberDTO.getMemberid());
    }
    @Override
    public void updateMembeid(MemberDTO memberDTO) {
       Member member= iMemberService.getById(memberDTO.getMemberid());
       Member member= this.getById(memberDTO.getMemberid());
       if (memberDTO.getAvatar()!=null){
           member.setAvatar(memberDTO.getAvatar());
       }
        if (memberDTO.getNickname()!=null){
            member.setNickname(memberDTO.getNickname());
        }
       iMemberService.updateById(member);
        this.updateById(member);
    }
    @Override
    public void authentificationMembe(MemberDTO memberDTO) {
        Member member= iMemberService.getById(memberDTO.getMemberid());
        Member member= this.getById(memberDTO.getMemberid());
        member.setPhone(memberDTO.getPhone());
        member.setIdNumber(memberDTO.getIdNumber());
        member.setRealName(memberDTO.getRealName());
@@ -270,7 +329,7 @@
            member.setGender(GenderEnum.MALE);
        }
        iMemberService.updateById(member);
        this.updateById(member);
    }
    public static String getGender(String idNumber) {
@@ -305,7 +364,7 @@
            if (appMiniRegisterDTO.getType() == 1) {
                LambdaQueryWrapper<Member> wrapper = Wrappers.lambdaQuery();
                wrapper.eq(Member::getZfbOpenid, appMiniRegisterDTO.getZfbuserid());
                Member member = iMemberService.getOne(wrapper);
                Member member = this.getOne(wrapper);
                //获取用户为空则新建
                if (member == null) {
@@ -328,7 +387,7 @@
                    member.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
                    member.setWxUnionid(appMiniRegisterDTO.getWxUnionid());
                    member.setMiniOpenid(appMiniRegisterDTO.getMiniOpenid());
                    iMemberService.save(member);
                    this.save(member);
                    appMiniLoginVO.setMiniOpenid(member.getMiniOpenid());
                    appMiniLoginVO.setWxUnionid(member.getWxUnionid());
@@ -345,7 +404,7 @@
            if (appMiniRegisterDTO.getType() == 2) {
                    LambdaQueryWrapper<Member> wrapper = Wrappers.lambdaQuery();
                    wrapper.eq(Member::getMiniOpenid, appMiniRegisterDTO.getMiniOpenid());
                    Member member = iMemberService.getOne(wrapper);
                    Member member = this.getOne(wrapper);
                    //获取用户为空则新建
                    if (member == null) {
                        //创建新用户
@@ -367,7 +426,7 @@
                        member.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
                        member.setWxUnionid(appMiniRegisterDTO.getWxUnionid());
                        member.setMiniOpenid(appMiniRegisterDTO.getMiniOpenid());
                        iMemberService.save(member);
                        this.save(member);
                        appMiniLoginVO.setMiniOpenid(member.getMiniOpenid());
                        appMiniLoginVO.setWxUnionid(member.getWxUnionid());