Browse Source

fix:ios服务端缺陷修复

hidewnd 1 day ago
parent
commit
5067e9e6c2

+ 1 - 2
yt-ios-lemon/lemon-ios-service/src/main/java/com/ytpm/lemonios/controller/WxController.java

@@ -179,7 +179,6 @@ public class WxController {
         //2.拿3条记录 设置到user
         //2.拿3条记录 设置到user
         // TODO 当前仅截取最新三条记录,可能遗漏本次登陆前的风控记录(停落时间过长记录超过三条)
         // TODO 当前仅截取最新三条记录,可能遗漏本次登陆前的风控记录(停落时间过长记录超过三条)
         List<YtDyzAdRecord> adRecordList = recordMapper.getByIosIdBeforeLogin(param.getIosId());
         List<YtDyzAdRecord> adRecordList = recordMapper.getByIosIdBeforeLogin(param.getIosId());
-
         user.setPreAdRecordList(adRecordList);
         user.setPreAdRecordList(adRecordList);
         user.setLoginType(LoginType.VISITOR);
         user.setLoginType(LoginType.VISITOR);
         user.setAppId(appId);
         user.setAppId(appId);
@@ -196,7 +195,7 @@ public class WxController {
         newUser.setUserId(user.getUserId());
         newUser.setUserId(user.getUserId());
         newUser.setUserStatus(UserStatusEnum.NORMAL.getCode());
         newUser.setUserStatus(UserStatusEnum.NORMAL.getCode());
         appUserMapper.updateUser(newUser);
         appUserMapper.updateUser(newUser);
-        return Result.resultObjOk(user);
+        return Result.resultOk();
     }
     }
 
 
     private IosUserInfo setIosUserInfo(IosLoginParam param){
     private IosUserInfo setIosUserInfo(IosLoginParam param){

+ 2 - 0
yt-ios-lemon/lemon-ios-service/src/main/java/com/ytpm/lemonios/dao/AppUserMapper.java

@@ -231,4 +231,6 @@ public interface AppUserMapper {
     List<YtDyzUser> getMonthRegistryUser(@Param("appIds") String appIds, @Param("type") Integer type);
     List<YtDyzUser> getMonthRegistryUser(@Param("appIds") String appIds, @Param("type") Integer type);
 
 
     void updateTotal(@Param("userId") String userId, @Param("videoCount") int videoCount, @Param("revenue") BigDecimal revenue);
     void updateTotal(@Param("userId") String userId, @Param("videoCount") int videoCount, @Param("revenue") BigDecimal revenue);
+
+    YtDyzUser getYtAppUserAndDitchNull(@Param("iosId") String iosId);
 }
 }

+ 1 - 1
yt-ios-lemon/lemon-ios-service/src/main/java/com/ytpm/lemonios/dao/DitchMapper.java

@@ -10,7 +10,7 @@ import java.util.List;
 public interface DitchMapper {
 public interface DitchMapper {
     List<AgentDitchView> ditchList(DitchListParam param);
     List<AgentDitchView> ditchList(DitchListParam param);
 
 
-    List<AgentDitchView> ditchListForIos(@Param("appId") String appId);
+    List<AgentDitchView> ditchListByAppId(@Param("appId") String appId);
 
 
     Integer insertOne(YtDitch ytDitch);
     Integer insertOne(YtDitch ytDitch);
 
 

+ 6 - 0
yt-ios-lemon/lemon-ios-service/src/main/java/com/ytpm/lemonios/service/impl/AppUserServiceImpl.java

@@ -207,10 +207,15 @@ public class AppUserServiceImpl implements AppUserService {
     @Override
     @Override
     public YtDyzUser crudForNewTransIos(IosLoginParam param, IosUserInfo userInfo, LoginType loginType) {
     public YtDyzUser crudForNewTransIos(IosLoginParam param, IosUserInfo userInfo, LoginType loginType) {
         YtDyzUser old = appUserMapper.getYtAppUserForIos(param.getIosId(), param.getDitchId());
         YtDyzUser old = appUserMapper.getYtAppUserForIos(param.getIosId(), param.getDitchId());
+        // 旧包兼容 处理通过配置appid生成 ditchId为null的用户
+        if (old == null) {
+            old = appUserMapper.getYtAppUserAndDitchNull(param.getIosId());
+        }
         if (Objects.isNull(old)) {
         if (Objects.isNull(old)) {
             old = registryUserByIos(param, userInfo);
             old = registryUserByIos(param, userInfo);
         } else {
         } else {
             deadWithUserByIos(old, userInfo, param);
             deadWithUserByIos(old, userInfo, param);
+            old = appUserMapper.getYtAppUserForIos(param.getIosId(), param.getDitchId());
         }
         }
         //设置最后一次答题问题ID、今日答题数、历史答题数
         //设置最后一次答题问题ID、今日答题数、历史答题数
         setExtInfo(old, userInfo.getHeadimgurl());
         setExtInfo(old, userInfo.getHeadimgurl());
@@ -270,6 +275,7 @@ public class AppUserServiceImpl implements AppUserService {
             throw new CustomerException(getTipsMsg());
             throw new CustomerException(getTipsMsg());
         }
         }
         YtDyzUser newUser = new YtDyzUser();
         YtDyzUser newUser = new YtDyzUser();
+        newUser.setUserId(dyzUser.getUserId());
         newUser.setNickName(userInfo.getNickname());
         newUser.setNickName(userInfo.getNickname());
         newUser.setHeadImg(userInfo.getHeadimgurl());
         newUser.setHeadImg(userInfo.getHeadimgurl());
         newUser.setLastLoginTime(new Date());
         newUser.setLastLoginTime(new Date());

+ 1 - 2
yt-ios-lemon/lemon-ios-service/src/main/java/com/ytpm/lemonios/service/impl/DitchServiceImpl.java

@@ -2,7 +2,6 @@ package com.ytpm.lemonios.service.impl;
 
 
 import com.ytpm.agent.model.YtApp;
 import com.ytpm.agent.model.YtApp;
 import com.ytpm.agent.model.YtDitch;
 import com.ytpm.agent.model.YtDitch;
-import com.ytpm.agent.param.AppParam;
 import com.ytpm.agent.param.DitchListParam;
 import com.ytpm.agent.param.DitchListParam;
 import com.ytpm.agent.view.AgentDitchView;
 import com.ytpm.agent.view.AgentDitchView;
 import com.ytpm.lemonios.dao.DitchMapper;
 import com.ytpm.lemonios.dao.DitchMapper;
@@ -22,7 +21,7 @@ public class DitchServiceImpl implements DitchService {
 
 
     @Override
     @Override
     public List<AgentDitchView> ditchList(DitchListParam param) {
     public List<AgentDitchView> ditchList(DitchListParam param) {
-        return agentDitchMapper.ditchListForIos(param.getAppId());
+        return agentDitchMapper.ditchListByAppId(param.getAppId());
     }
     }
 
 
     @Override
     @Override

+ 7 - 0
yt-ios-lemon/lemon-ios-service/src/main/resources/mapper/AppUserMapper.xml

@@ -295,6 +295,13 @@
         </if>
         </if>
         limit 1
         limit 1
     </select>
     </select>
+    <select id="getYtAppUserAndDitchNull" resultType="com.ytpm.app.model.YtDyzUser">
+        select
+        user_id, app_id,phone,device_id, ditch_id, nick_name,head_img, power, registry_time, last_login_time, last_login_ip, login_days, total_video, total_income, red_packet_balance, red_packet_amount, points_balance, points_total, withdraw_total, sign_days, user_status, risk_reason, wx_open_id, ios_id, platform_id
+        from yt_dyz_user
+        where ios_id = #{iosId} and ditch_id is null
+        limit 1
+    </select>
     <select id="queryAll" resultType="com.ytpm.app.view.YtAppUserListView">
     <select id="queryAll" resultType="com.ytpm.app.view.YtAppUserListView">
         select
         select
         user_id, app_id,phone,device_id, ditch_id, nick_name,head_img, power, registry_time, last_login_time, last_login_ip, login_days, total_video, total_income, red_packet_balance, red_packet_amount, points_balance, points_total, withdraw_total, sign_days, user_status, risk_reason, wx_open_id, ios_id, platform_id
         user_id, app_id,phone,device_id, ditch_id, nick_name,head_img, power, registry_time, last_login_time, last_login_ip, login_days, total_video, total_income, red_packet_balance, red_packet_amount, points_balance, points_total, withdraw_total, sign_days, user_status, risk_reason, wx_open_id, ios_id, platform_id

+ 1 - 1
yt-ios-lemon/lemon-ios-service/src/main/resources/mapper/DitchMapper.xml

@@ -33,7 +33,7 @@
         from yt_ditch
         from yt_ditch
         where user_id = #{userId} and is_delete = 0
         where user_id = #{userId} and is_delete = 0
     </select>
     </select>
-    <select id="ditchListForIos" resultType="com.ytpm.agent.view.AgentDitchView">
+    <select id="ditchListByAppId" resultType="com.ytpm.agent.view.AgentDitchView">
         select
         select
         ditch_id, ditch_name, create_time
         ditch_id, ditch_name, create_time
         from yt_ditch
         from yt_ditch