From a6508a543e3727eb527db5feec9ac7155e88f599 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期一, 03 六月 2024 21:17:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java |   89 ++++++++++++++++++++++++++++++++++++++------
 1 files changed, 77 insertions(+), 12 deletions(-)

diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
index 75111eb..c7f6ea2 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
+++ b/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);
             }
         }

--
Gitblit v1.7.1