From f2a57f2a9fa309f872d10c7fada992b63a0c0d5f Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期日, 27 十月 2024 20:52:48 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java |   76 ++++++++++++++++++++++++--------------
 1 files changed, 48 insertions(+), 28 deletions(-)

diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java
index 1630c25..bd17572 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java
@@ -10,6 +10,8 @@
 import com.ruoyi.account.api.model.TAppUser;
 import com.ruoyi.account.mapper.TAppUserMapper;
 import com.ruoyi.account.service.TAppUserService;
+import com.ruoyi.account.service.TInviteUserService;
+import com.ruoyi.account.util.RptUtils;
 import com.ruoyi.account.wx.model.WeixinProperties;
 import com.ruoyi.account.wx.pojo.AppletUserDecodeData;
 import com.ruoyi.common.core.exception.ServiceException;
@@ -17,6 +19,7 @@
 import com.ruoyi.system.api.model.LoginUserApplet;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 import org.springframework.web.client.RestTemplate;
 
 import java.util.HashMap;
@@ -35,8 +38,10 @@
 public class TAppUserServiceImpl extends ServiceImpl<TAppUserMapper, TAppUser> implements TAppUserService {
     @Autowired
     private TokenService tokenService;
+    @Autowired
+    private TInviteUserService inviteUserService;
     @Override
-    public Map<String, Object> wxLogin(AppletUserDecodeData appletUserDecodeData) {
+    public Map<String, Object> wxLogin(AppletUserDecodeData appletUserDecodeData,Long inviteUserId) {
         // 通过手机号查询用户,是否已存在手动导入用户,包含支付宝用户
         TAppUser appUser = this.getOne(Wrappers.lambdaQuery(TAppUser.class)
                 .eq(TAppUser::getPhone, appletUserDecodeData.getPhoneNumber())
@@ -49,29 +54,38 @@
                     .eq(TAppUser::getPhone, appletUserDecodeData.getPhoneNumber())
                     .last("LIMIT 1"));
             if(Objects.isNull(appUser)){
-                appUser = this.getOne(Wrappers.lambdaQuery(TAppUser.class)
-                        .eq(TAppUser::getWxOpenid, appletUserDecodeData.getOpenId())
-                        .last("LIMIT 1"));
-                if(Objects.isNull(appUser)){
-                    appUser = new TAppUser();
-                    appUser.setPhone(appletUserDecodeData.getPhoneNumber());
-                }
+                appUser = new TAppUser();
+                appUser.setPhone(appletUserDecodeData.getPhoneNumber());
+                appUser.setInviteUserId(inviteUserId);
             }
         }
         if(Objects.nonNull(appUser.getStatus())){
-            throwInfo(appUser.getStatus());
+            switch (appUser.getStatus()){
+                case 1:
+                    break;
+                case 2:
+                    throw new ServiceException("账号被冻结,请联系管理员");
+                case 3:
+                    appUser = new TAppUser();
+                    appUser.setPhone(appletUserDecodeData.getPhoneNumber());
+                    break;
+            }
         }
-        appUser.setAvatar(appletUserDecodeData.getAvatarUrl());
+
+        appUser.setAvatar(StringUtils.hasLength(appletUserDecodeData.getAvatarUrl())?appletUserDecodeData.getAvatarUrl():"http://221.182.45.100:8090/2024-10-26/logo.png");
+        appUser.setName(StringUtils.hasLength(appletUserDecodeData.getNickName())?appletUserDecodeData.getNickName():RptUtils.around(appletUserDecodeData.getPhoneNumber(),3,4));
         appUser.setCity(appletUserDecodeData.getCity());
-        appUser.setName(appletUserDecodeData.getNickName());
         appUser.setProvince(appletUserDecodeData.getProvince());
         appUser.setWxOpenid(appletUserDecodeData.getOpenId());
         this.saveOrUpdate(appUser);
+        if(Objects.nonNull(inviteUserId)){
+            inviteUserService.saveInviteUser(appUser.getId(), inviteUserId);
+        }
         return this.getUserInfo(appUser);
     }
 
     @Override
-    public Map<String, Object> aliLogin(AlipaySystemOauthTokenResponse response,String phone) {
+    public Map<String, Object> aliLogin(AlipaySystemOauthTokenResponse response,String phone,Long inviteUserId) {
         // 通过手机号查询用户,是否已存在手动导入用户,包含微信用户
         TAppUser appUser = this.getOne(Wrappers.lambdaQuery(TAppUser.class)
                 .eq(TAppUser::getPhone, phone)
@@ -84,20 +98,30 @@
                     .eq(TAppUser::getPhone, phone)
                     .last("LIMIT 1"));
             if(Objects.isNull(appUser)){
-                appUser = this.getOne(Wrappers.lambdaQuery(TAppUser.class)
-                        .eq(TAppUser::getAliOpenid, response.getOpenId())
-                        .last("LIMIT 1"));
-                if(Objects.isNull(appUser)){
-                    appUser = new TAppUser();
-                    appUser.setPhone(phone);
-                }
+                appUser = new TAppUser();
+                appUser.setPhone(phone);
+                appUser.setInviteUserId(inviteUserId);
             }
         }
         if(Objects.nonNull(appUser.getStatus())){
-            throwInfo(appUser.getStatus());
+            switch (appUser.getStatus()){
+                case 1:
+                    break;
+                case 2:
+                    throw new ServiceException("账号被冻结,请联系管理员");
+                case 3:
+                    appUser = new TAppUser();
+                    appUser.setPhone(phone);
+                    break;
+            }
         }
         appUser.setAliOpenid(response.getOpenId());
+        appUser.setAvatar("http://221.182.45.100:8090/2024-10-26/logo.png");
+        appUser.setName(RptUtils.around(phone,3,4));
         this.saveOrUpdate(appUser);
+        if(Objects.nonNull(inviteUserId)){
+            inviteUserService.saveInviteUser(appUser.getId(), inviteUserId);
+        }
         return this.getUserInfo(appUser);
     }
 //    @Override
@@ -114,13 +138,8 @@
 //                    .eq(TAppUser::getPhone, userInfo.getMobile())
 //                    .last("LIMIT 1"));
 //            if(Objects.isNull(appUser)){
-//                appUser = this.getOne(Wrappers.lambdaQuery(TAppUser.class)
-//                        .eq(TAppUser::getAliOpenid, response.getOpenId())
-//                        .last("LIMIT 1"));
-//                if(Objects.isNull(appUser)){
-//                    appUser = new TAppUser();
-//                    appUser.setPhone(userInfo.getMobile());
-//                }
+//                appUser = new TAppUser();
+//                appUser.setPhone(userInfo.getMobile());
 //            }
 //        }
 //        if(Objects.nonNull(appUser.getStatus())){
@@ -140,6 +159,7 @@
         LoginUserApplet loginUserApplet = new LoginUserApplet();
         if(ObjectUtils.isNotNull(appUser)){
             loginUserApplet.setUserId(appUser.getId());
+            loginUserApplet.setUserIdStr(appUser.getId().toString());
             loginUserApplet.setName(appUser.getName());
             loginUserApplet.setPhone(appUser.getPhone());
             loginUserApplet.setAvatar(appUser.getAvatar());
@@ -157,7 +177,7 @@
             case 2:
                 throw new ServiceException("账号被冻结,请联系管理员");
             case 3:
-                throw new ServiceException("账号已注销,请重新注册使用");
+//                throw new ServiceException("账号已注销,请重新注册使用");
             default:
                 break;
         }

--
Gitblit v1.7.1