|
@@ -5,10 +5,12 @@ import com.alibaba.fastjson.TypeReference;
|
|
|
import com.tzld.piaoquan.ad.engine.commons.redis.AlgorithmRedisHelper;
|
|
|
import com.tzld.piaoquan.ad.engine.service.user.UserService;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.collections4.MapUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
|
@Slf4j
|
|
@@ -19,24 +21,51 @@ public class UserServiceImpl implements UserService {
|
|
|
protected AlgorithmRedisHelper algRedisHelper;
|
|
|
|
|
|
@Override
|
|
|
- public String getUserLayerByMid(String mid) {
|
|
|
+ public String getUserLayer4Level(String mid) {
|
|
|
+
|
|
|
+ Map<String, String> userLayer = this.getUserLayer(mid);
|
|
|
+ if (MapUtils.isEmpty(userLayer)) {
|
|
|
+ return "无曝光";
|
|
|
+ }
|
|
|
+
|
|
|
+ return userLayer.getOrDefault("layer_l4", "无曝光");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Map<String, String> getUserLayer(String mid) {
|
|
|
+
|
|
|
+ Map<String, String> resultMap = new HashMap<>();
|
|
|
+
|
|
|
+ if (StringUtils.isEmpty(mid)) {
|
|
|
+ return resultMap;
|
|
|
+ }
|
|
|
+
|
|
|
String key = String.format("ad:engine:mid:layer:%s", mid);
|
|
|
String value = algRedisHelper.get(key);
|
|
|
if (StringUtils.isEmpty(value)) {
|
|
|
- return "无曝光";
|
|
|
+ return resultMap;
|
|
|
}
|
|
|
+
|
|
|
try {
|
|
|
Map<String, String> layerMap = JSON.parseObject(value, new TypeReference<Map<String, String>>() {
|
|
|
});
|
|
|
- String layer = layerMap.getOrDefault("layer", "无曝光");
|
|
|
- if (StringUtils.equals(layer, "已转化")) {
|
|
|
- layer = "有转化";
|
|
|
+ String layer3L = layerMap.getOrDefault("layer", "无曝光");
|
|
|
+ if (StringUtils.equals(layer3L, "已转化")) {
|
|
|
+ layer3L = "有转化";
|
|
|
}
|
|
|
- return layer;
|
|
|
+
|
|
|
+ Map<String, String> basic4lMap = JSON.parseObject(layerMap.getOrDefault("basic_l4", "{}"), new TypeReference<Map<String, String>>() {
|
|
|
+ });
|
|
|
+
|
|
|
+ String layer4L = basic4lMap.getOrDefault("level", "无曝光");
|
|
|
+
|
|
|
+ resultMap.put("layer", layer3L);
|
|
|
+ resultMap.put("layer_l4", layer4L);
|
|
|
+ return resultMap;
|
|
|
} catch (Exception e) {
|
|
|
- log.error("UserServiceImpl getUserLayerByMi error: ", e);
|
|
|
+ log.error("UserServiceImpl getUserLayer error: ", e);
|
|
|
}
|
|
|
|
|
|
- return "无曝光";
|
|
|
+ return resultMap;
|
|
|
}
|
|
|
}
|