From c6ebbc7a11ca228addb0cca7c5f34d2d5ae3249b Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期三, 18 六月 2025 17:48:11 +0800
Subject: [PATCH] 更新优化

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbRegionServiceImpl.java |    3 ++-
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java    |   17 +++++++++++++++--
 ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java      |    2 +-
 3 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java
index eebaf23..e6854aa 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java
@@ -98,9 +98,15 @@
             tbUser.setPhone(loginBody.getPhone());
             tbUser.setStatus(1);
             tbUser.setUserName(loginBody.getPhone());
-            tbUser.setInviteId(loginBody.getInviteId());
+            tbUser.setInviteId(loginBody.getInviteUserId());
             tbUserService.save(tbUser);
             user = tbUser;
+            ajax.put("firstRegister",1);
+        }else {
+            ajax.put("firstRegister",0);
+            if(StringUtils.isEmpty(user.getInviteId()) && !StringUtils.isEmpty(loginBody.getInviteUserId())){
+                user.setInviteId(loginBody.getInviteUserId());
+            }
         }
         LoginUser loginUser = new LoginUser();
         loginUser.setUserId(Long.valueOf(user.getId()));
@@ -115,6 +121,7 @@
     @PostMapping("/openIdByJsCode")
     public AjaxResult openIdByJsCode(@RequestBody AppletUserEncrypteData data) {
         log.info("<<<<<<<<换取openid开始<<<<<<<<:{}", data.getCode());
+        AjaxResult ajax = AjaxResult.success();
         WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, wxConfig, redisService);
         Code2SessionRespBody body = appletTools.getOpenIdByJscode2session(new Code2SessionResqBody().build(data.getCode()));
         String openid = body.getOpenid();
@@ -135,20 +142,26 @@
             user.setInviteId(data.getInviteUserId());
             user.setStatus(1);
             tbUserService.save(user);
+            ajax.put("firstRegister",1);
         }else {
+            ajax.put("firstRegister",0);
+            if(StringUtils.isEmpty(user.getInviteId()) && !StringUtils.isEmpty(data.getInviteUserId())){
+                user.setInviteId(data.getInviteUserId());
+            }
             user.setOpenId(appletUserDecodeData.getOpenId());
             user.updateById();
         }
         if(user.getStatus()==2){
             return AjaxResult.error("登录失败,当前账号已被冻结");
         }
-        AjaxResult ajax = AjaxResult.success();
+
         LoginUser loginUser = new LoginUser();
         loginUser.setUserId(Long.valueOf(user.getId()));
         loginUser.setUser(new SysUser());
         ajax.put(Constants.TOKEN, tokenService.createToken(loginUser));
         ajax.put("username",user.getUserName());
         ajax.put("avatar",user.getAvatar());
+
         return ajax;
     }
 
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java
index ed3b9fa..c0c4e9f 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java
@@ -32,7 +32,7 @@
 
 
     @ApiModelProperty(value = "邀请人用户id")
-    private String inviteId;
+    private String inviteUserId;
 
     @ApiModelProperty(value = "微信授权code")
     private String jscode;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbRegionServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbRegionServiceImpl.java
index 0adb87c..95da61c 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbRegionServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbRegionServiceImpl.java
@@ -34,7 +34,8 @@
     @Override
     public List<RegionVo> listCityVo() {
         // 缓存
-        if (redisService.getCacheList("region_list")!=null) {
+        List<Object> regionList = redisService.getCacheList("region_list");
+        if (regionList!=null && !regionList.isEmpty()) {
             List<RegionVo> regionVoList = BeanUtil.copyToList(redisService.getCacheList("region_list"), RegionVo.class);
             return regionVoList;
         } else {

--
Gitblit v1.7.1