|
@@ -6,6 +6,7 @@ import com.google.common.base.Strings;
|
|
|
import com.tzld.piaoquan.recommend.server.common.ThreadPoolFactory;
|
|
|
import com.tzld.piaoquan.recommend.server.framework.common.User;
|
|
|
import com.tzld.piaoquan.recommend.server.gen.common.Result;
|
|
|
+import com.tzld.piaoquan.recommend.server.gen.recommend.PushFromIndex;
|
|
|
import com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest;
|
|
|
import com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse;
|
|
|
import com.tzld.piaoquan.recommend.server.gen.recommend.VideoProto;
|
|
@@ -18,6 +19,7 @@ import com.tzld.piaoquan.recommend.server.service.rank.RankResult;
|
|
|
import com.tzld.piaoquan.recommend.server.service.rank.strategy.RankStrategy4RegionMergeModelV547;
|
|
|
import com.tzld.piaoquan.recommend.server.util.JSONUtils;
|
|
|
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.beans.factory.annotation.Qualifier;
|
|
@@ -97,6 +99,15 @@ public class VideoRecommendService {
|
|
|
|
|
|
List<VideoProto> vps = new ArrayList<>();
|
|
|
for (int i = 0; i < videos.size(); i++) {
|
|
|
+ Map<String, List<String>> pushFromIndex = videos.get(i).getPushFromIndex();
|
|
|
+ List<PushFromIndex> pushFromIndexList = new ArrayList<>();
|
|
|
+ if (MapUtils.isNotEmpty(pushFromIndex)) {
|
|
|
+ pushFromIndex.forEach((k, v) -> {
|
|
|
+ PushFromIndex.Builder builder = PushFromIndex.newBuilder().setPushFrom(k);
|
|
|
+ v.forEach(builder::addIndex);
|
|
|
+ pushFromIndexList.add(builder.build());
|
|
|
+ });
|
|
|
+ }
|
|
|
vps.add(VideoProto.newBuilder()
|
|
|
.setPosition(i + 1)
|
|
|
.setPushFrom(Strings.nullToEmpty(videos.get(i).getPushFrom()))
|
|
@@ -107,6 +118,7 @@ public class VideoRecommendService {
|
|
|
.setFlowPool(Strings.nullToEmpty(videos.get(i).getFlowPool()))
|
|
|
.setIsInFlowPool(videos.get(i).isInFlowPool() ? 1 : 0)
|
|
|
.setRand(videos.get(i).getRand())
|
|
|
+ .addAllPushFromIndex(pushFromIndexList)
|
|
|
.build());
|
|
|
}
|
|
|
|