SceneStatisticsServiceImpl.java 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package com.fdkankan.ucenter.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.fdkankan.common.util.DateUtil;
  4. import com.fdkankan.ucenter.entity.SceneStatistics;
  5. import com.fdkankan.ucenter.mapper.ISceneStatisticsMapper;
  6. import com.fdkankan.ucenter.service.ISceneStatisticsService;
  7. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  8. import java.util.Date;
  9. import java.util.List;
  10. import java.util.Map;
  11. import org.springframework.stereotype.Service;
  12. /**
  13. * <p>
  14. * 百度统计场景流量量表 服务实现类
  15. * </p>
  16. *
  17. * @author
  18. * @since 2022-10-31
  19. */
  20. @Service
  21. public class SceneStatisticsServiceImpl extends ServiceImpl<ISceneStatisticsMapper, SceneStatistics> implements ISceneStatisticsService {
  22. @Override
  23. public List<SceneStatistics> findByTime(Date startDate, Date endDate, String sceneNum, Integer type) {
  24. return this.list(new LambdaQueryWrapper<SceneStatistics>()
  25. .eq(SceneStatistics::getSceneNum, sceneNum)
  26. .eq(SceneStatistics::getType, type)
  27. .ge(SceneStatistics::getDateStr, startDate)
  28. .le(SceneStatistics::getDateStr, endDate));
  29. }
  30. @Override
  31. public void addData(Map<String, Map<String, Double>> map, String dateStr) {
  32. String sceneNum = "";
  33. Map<String, Double> numMap = null;
  34. SceneStatistics entity = null;
  35. for (Map.Entry<String, Map<String, Double>> entry : map.entrySet()) {
  36. sceneNum = entry.getKey();
  37. numMap = entry.getValue();
  38. entity = new SceneStatistics();
  39. entity.setPvCount(numMap.get("pv_count").intValue());
  40. entity.setVisitorCount(numMap.get("visit1_count").intValue());
  41. entity.setVisit1Count(numMap.get("visit1_count").intValue());
  42. entity.setOutwardCount(numMap.get("outward_count").intValue());
  43. entity.setExitCount(numMap.get("exit_count").intValue());
  44. entity.setAverageStayTime(numMap.get("average_stay_time").intValue());
  45. entity.setExitRatio(numMap.get("exit_ratio"));
  46. entity.setDateStr(DateUtil.string2Date(dateStr, DateUtil.YYYYMMDD_DATA_FORMAT));
  47. entity.setRecStatus("A");
  48. entity.setCreateTime(new Date());
  49. entity.setUpdateTime(new Date());
  50. if(sceneNum.contains("_tag")){
  51. entity.setType(2);
  52. entity.setSceneNum(sceneNum.replace("_tag", ""));
  53. } else if(sceneNum.contains("_video")){
  54. entity.setType(3);
  55. entity.setSceneNum(sceneNum.replace("_video", ""));
  56. }else {
  57. entity.setType(1);
  58. entity.setSceneNum(sceneNum);
  59. }
  60. this.save(entity);
  61. }
  62. }
  63. }