Просмотр исходного кода

feat:添加获取首页tab的接口

zhaohaipeng 2 недель назад
Родитель
Сommit
93e2a774a8

+ 1 - 1
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/common/enums/TabSource.java

@@ -11,7 +11,7 @@ public enum TabSource {
     share_cate2("share_cate2", "分享二级品类"),
     return_cate2("return_cate2", "回流二级品类"),
     default_hot("default_hot", "默认-热度"),
-    ;
+    other("", "其他");
 
     private final String source;
     private final String desc;

+ 6 - 1
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/tab/TabService.java

@@ -1,5 +1,6 @@
 package com.tzld.piaoquan.recommend.server.service.tab;
 
+import com.alibaba.fastjson.JSON;
 import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
 import com.google.common.collect.Sets;
 import com.tzld.piaoquan.recommend.server.common.enums.TabSource;
@@ -71,7 +72,9 @@ public class TabService {
         List<TabProto> tabProtos = new ArrayList<>();
         // 非中国地域不返回地域Tab
         if (isChinaRegion(tabParam.getProvinceCode())) {
-            tabProtos.add(TabProto.newBuilder().setKey(tabParam.getProvince()).setTitle(tabParam.getProvince()).setSource("").setType(TabType.territory.getType()).build());
+            String province = tabParam.getProvince().replaceAll("省$", "");
+            List<TabProto> provinceTab = this.buildTabProto(Collections.singletonList(province), TabSource.other, TabType.territory);
+            tabProtos.addAll(provinceTab);
         }
         return tabProtos;
     }
@@ -99,6 +102,8 @@ public class TabService {
             return tabProtos;
         }
 
+        log.info("tabCollect: {}", JSON.toJSONString(tabCollect));
+
         List<TabProto> profileTab = this.buildTabProto(tabCollect.get(0), TabSource.profile, TabType.personalization);
         List<TabProto> shareCate2Tab = this.buildTabProto(tabCollect.get(0), TabSource.share_cate2, TabType.personalization);
         List<TabProto> returnCate2Tab = this.buildTabProto(tabCollect.get(0), TabSource.return_cate2, TabType.personalization);