Jelajahi Sumber

Merge remote-tracking branch 'origin/developer' into developer

zhijiezhao 1 tahun lalu
induk
melakukan
d6ffb015ca

+ 27 - 4
src/main/java/com/caimei365/manager/service/caimei/user/impl/CmBehaviorRecordServiceImpl.java

@@ -7,6 +7,7 @@ import com.caimei365.manager.entity.PaginationVo;
 import com.caimei365.manager.entity.ResponseJson;
 import com.caimei365.manager.entity.caimei.CmBehaviorRecord;
 import com.caimei365.manager.entity.caimei.CmPageType;
+import com.caimei365.manager.entity.caimei.RetuenEntity;
 import com.caimei365.manager.service.caimei.user.CmBehaviorRecordService;
 import com.github.pagehelper.PageHelper;
 import lombok.extern.slf4j.Slf4j;
@@ -18,6 +19,7 @@ import java.net.URLDecoder;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
+import java.util.concurrent.atomic.AtomicReference;
 
 /**
  * Description
@@ -172,7 +174,8 @@ public class CmBehaviorRecordServiceImpl implements CmBehaviorRecordService {
         // 供应商信息
         List<CmBehaviorRecord> shopNameList = cmBehaviorRecordDao.behaviorShopNameList();
         // 标签总结
-        List<String> label = new ArrayList<>();
+        List<RetuenEntity> label = new ArrayList<>();
+        AtomicReference<Integer> returnId = new AtomicReference<>(0);
         // 计算访问时长,填入信息
         recordList.forEach(r -> {
             r.setProductImage(AppUtils.getImageURL("product", r.getProductImage(), 0, ""));
@@ -221,14 +224,34 @@ public class CmBehaviorRecordServiceImpl implements CmBehaviorRecordService {
             }
             if ("6".equals(r.getPageType()) || "8".equals(r.getPageType()) || "9".equals(r.getPageType()) || "11".equals(r.getPageType())) {
                 if(StringUtils.isNotBlank(r.getPageLabel()) && StringUtils.isNotEmpty(r.getPageLabel()) && !label.contains(r.getPageLabel())) {
-                    label.add(r.getPageLabel());
+                    RetuenEntity retuenEntity = new RetuenEntity();
+                    if (r.getPageLabel().contains(",")) {
+                        log.info("contains");
+                        String[] split = r.getPageLabel().split(",");
+                        for (String str : split) {
+                            if (StringUtils.isNotBlank(str) &&  !label.contains(str)) {
+                                retuenEntity = new RetuenEntity();
+                                returnId.updateAndGet(v -> v + 1);
+                                retuenEntity.setId(returnId.get().toString());
+                                retuenEntity.setValue(str);
+                                label.add(retuenEntity);
+                            }
+                        }
+                    } else {
+                        log.info("not   contains");
+                        if (!label.contains(r.getPageLabel())) {
+                            returnId.updateAndGet(v -> v + 1);
+                            retuenEntity.setId(returnId.get().toString());
+                            retuenEntity.setValue(r.getPageLabel());
+                            label.add(retuenEntity);
+                        }
+                    }
                 }
             }
         });
         PaginationVo<CmBehaviorRecord> pageData = new PaginationVo<>(recordList);
         map.put("page", pageData);
-        String summarize = StringUtils.strip(label.toString(), "[]");
-        map.put("summarize", summarize);
+        map.put("label", label);
         return ResponseJson.success(map);
     }