From 6d85e681bb7a4c2aba7558b943f84741be1416bf Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 07 三月 2025 18:34:06 +0800
Subject: [PATCH] 2.0新增

---
 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java |   32 ++++++++++++++++++++++++++++----
 1 files changed, 28 insertions(+), 4 deletions(-)

diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
index 2739ae5..1bb9c24 100644
--- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
+++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -32,6 +32,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.util.LinkedMultiValueMap;
 import org.springframework.util.MultiValueMap;
+import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.client.RestTemplate;
 import org.springframework.web.multipart.MultipartFile;
@@ -507,7 +508,8 @@
     @Override
     public ResultUtil<LoginWarpper> wxLogin(Integer type, String openid, String unionid, String jscode, String registIp,
                                             String registAreaCode, Integer sex, String nickName, String avatar,String loginType,
-                                            Integer uid,Integer userType) throws Exception {
+                                            Integer uid,Integer userType,String phone) throws Exception {
+        System.err.println("手机号+++++"+phone);
         UserInfo userInfo = null;
         if(type == 2){//小程序
             if(ToolUtil.isEmpty(jscode)){
@@ -520,10 +522,19 @@
             System.out.println("unionid===="+unionid);
             userInfo = userInfoMapper.queryByOpenid2(openid);
 
+
         }else{//APP
             userInfo = userInfoMapper.queryByOpenid(openid);
         }
+        if (StringUtils.hasLength(phone)){
+            UserInfo userInfo1 = userInfoMapper.queryByPhone(phone);
+            if (null != userInfo1){
+                userInfo = userInfo1;
+                userInfo.setAppletsOpenId(openid);
+            }
+        }
         if(null == userInfo){
+
             // 如果为空 需要生成小程序二维码并携带用户id
             userInfo = new UserInfo();
             userInfo.setPassWord(ShiroKit.md5("", salt));
@@ -652,8 +663,8 @@
             // 用户id 用于分享
             param.put("scene", "uid="+userInfo.getId()+"userType=1");
 
-            param.put("env_version", "trial");// 体验版
-//            param.put("env_version", "release");// 正式版
+//            param.put("env_version", "trial");// 体验版
+            param.put("env_version", "release");// 正式版
             param.put("width", 200); //二维码尺寸
             param.put("is_hyaline", true); // 是否需要透明底色, is_hyaline 为true时,生成透明底色的小程序码 参数仅对小程序码生效
             param.put("auto_color", true); // 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调 参数仅对小程序码生效
@@ -739,6 +750,7 @@
     }
 
 
+
     /**
      * 设置手机号码操作
      * @param uid
@@ -818,6 +830,18 @@
         this.updateById(userInfo);
 
         smsrecordService.saveData(2, phone, code, "短信验证码【" + code + "】已发到您的手机,验证码将在5分钟后失效,请及时登录!");
+        List<Invite> invites = inviteMapper.selectList(null);
+        List<UserInfo> userInfos = this.selectList(null);
+        List<Integer> integers = new ArrayList<>();
+        for (Invite invite : invites) {
+            UserInfo userInfo2 = userInfos.stream().filter(e -> e.getId().equals(invite.getUserId())).findFirst().orElse(null);
+            if (userInfo2==null){
+                integers.add(invite.getId());
+            }
+        }
+        if (!integers.isEmpty()){
+            inviteMapper.deleteBatchIds(integers);
+        }
         return ResultUtil.success(new LoginWarpper());
     }
 
@@ -1295,7 +1319,7 @@
      * @return
      */
     public String getDefaultName(){
-        int num = this.selectCount(new EntityWrapper<UserInfo>().ne("flag", 3)) + 1000001;
+        int num = this.selectCount(new EntityWrapper<UserInfo>()) + 1000001;
         return "XN" + String.valueOf(num).substring(1);
     }
 

--
Gitblit v1.7.1