|
@@ -47,19 +47,32 @@ public class PredictModelServiceImpl implements PredictModelService {
|
|
|
@Autowired
|
|
|
RoiModelConfig roiModelConfig;
|
|
|
|
|
|
+
|
|
|
+
|
|
|
public Map<String,Object> adPredict(ThresholdPredictModelRequestParam requestParam){
|
|
|
|
|
|
JSONObject object=requestParam.getAbExpInfo();
|
|
|
+ //临时解决方案
|
|
|
+ List<Map<String,Object>> mapList=(List)requestParam.getAbExpInfo().get("ab_test002");
|
|
|
+ Map<String,List<JSONObject>> configMap=new HashMap<>();
|
|
|
+ for(Map<String,Object> map:mapList){
|
|
|
+ if("555".equals(map.getOrDefault("abExpCode",""))){
|
|
|
+ configMap=JSONObject.parseObject(map.get("configValue").toString(),Map.class);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
//先判断是否开启实验 和是否不出广告时间 而后判断默认0-8
|
|
|
Map<String,Object> result=new HashMap<>();
|
|
|
int hourOfDay= DateUtils.getCurrentHour();
|
|
|
Boolean condition1=abTestConfigContainer.inAdTimeTest(requestParam.getAbExpInfo());
|
|
|
- Boolean condition2=abTestConfigContainer.containsCode(requestParam.getAbTestCode());
|
|
|
+ Boolean condition2=abTestConfigContainer.containsCode(configMap,requestParam.getAbTestCode());
|
|
|
+
|
|
|
+
|
|
|
if(condition1
|
|
|
&&
|
|
|
condition2
|
|
|
&&
|
|
|
- abTestConfigContainer.inWithoutAdTime(requestParam.getAbTestCode(),hourOfDay)){
|
|
|
+ abTestConfigContainer.inWithoutAdTime(configMap,requestParam.getAbTestCode(),hourOfDay)){
|
|
|
result.put("ad_predict", 1);
|
|
|
result.put("no_ad_strategy","no_ad_time_with_time_plan");
|
|
|
return result;
|