Forráskód Böngészése

fix:登录前校验风控BugFix

zack 1 hónapja
szülő
commit
f54c0aae27

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

@@ -140,7 +140,26 @@ public class WxController {
             IosUserInfo userInfo = setIosUserInfo(param);
             user = appUserService.crudForNewTransIos(param, userInfo);
         }
+        //2.拿3条记录 设置到user
         List<YtDyzAdRecord> adRecordList = recordMapper.getByIosIdBeforeLogin(param.getIosId());
+        List<YtDyzAdRecord> newAdRecordList = new ArrayList<>();
+        if (adRecordList != null && !adRecordList.isEmpty()) {
+            for (YtDyzAdRecord adRecord : adRecordList) {
+                if (adRecord.getAdSourceType() == 0){
+                    newAdRecordList.add(adRecord);
+                }
+                if (adRecord.getAdSourceType() == 2){
+                    newAdRecordList.add(adRecord);
+                }
+                if (adRecord.getAdSourceType() == 4){
+                    newAdRecordList.add(adRecord);
+                }
+            }
+        }
+        if (CollUtil.isEmpty(newAdRecordList) || newAdRecordList.size() < 3) {
+            WxDefaultConfig defaultConfig = appUserMapper.getLastDefaultConfig();
+            throw new CommonException(defaultConfig.getLowValueTip());
+        }
         user.setPreAdRecordList(adRecordList);
         user.setLoginType(LoginType.VISITOR);
         user.setAppId(appId);

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

@@ -51,6 +51,8 @@ public class AdServiceImpl implements AdService {
     private String tips;
     @Autowired
     private RiskFeign riskFeign;
+    @Value("${yt.ios.appid:}")
+    private String appId;
 
     /**
      * 保存广告记录
@@ -72,7 +74,7 @@ public class AdServiceImpl implements AdService {
                 adRecord.setFinishTime(DateUtil.format(new Date(param.getFinishtimestamp()), "yyyy-MM-dd HH:mm:ss"));
             }
             adRecord.setIosId(param.getIosId());
-            adRecord.setAppId("251be4dff0fd408fbc1fe2c47bf515eb");
+            adRecord.setAppId(appId);
             adRecord.setRecordId(IdUtil.fastSimpleUUID());
             adRecord.setNetworkName(AdPlatformTypeEnum.getDesc(Integer.parseInt(param.getNetworkFormId())));
             adRecordMapper.addOneVisitor(adRecord);

+ 2 - 0
yt-ios-lemon/lemon-ios-service/src/main/resources/mapper/AdRecordMapper.xml

@@ -138,6 +138,8 @@
             record_id, user_id,app_id,ios_id, nick_name, placement_id, ad_source_id, revenue, network_form_id, network_name, network_placement_id, finish_time, begin_time,result_json,ad_source_type,ad_source_index,ecpm
         from yt_dyz_ad_record_visitor
         where ios_id = #{iosId}
+        ORDER BY finish_time DESC
+        limit 3
     </select>
     <select id="getByUserByParam" resultType="com.ytpm.app.model.YtDyzAdRecord">
         select