|
@@ -1,12 +1,15 @@
|
|
|
package com.ytpm.service.impl;
|
|
package com.ytpm.service.impl;
|
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.github.pagehelper.PageInfo;
|
|
|
import com.ytpm.advertise.param.AddAppParam;
|
|
import com.ytpm.advertise.param.AddAppParam;
|
|
|
|
|
+import com.ytpm.advertise.param.ComprehensiveReportParam;
|
|
|
import com.ytpm.advertise.param.RelativeChannelParam;
|
|
import com.ytpm.advertise.param.RelativeChannelParam;
|
|
|
import com.ytpm.advertise.view.AddAppResponse;
|
|
import com.ytpm.advertise.view.AddAppResponse;
|
|
|
|
|
+import com.ytpm.advertise.view.ComprehensiveAppReport;
|
|
|
import com.ytpm.agent.model.YtApp;
|
|
import com.ytpm.agent.model.YtApp;
|
|
|
import com.ytpm.agent.param.AppListParam;
|
|
import com.ytpm.agent.param.AppListParam;
|
|
|
import com.ytpm.agent.param.AppParam;
|
|
import com.ytpm.agent.param.AppParam;
|
|
@@ -23,7 +26,14 @@ import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
|
|
|
+import java.time.LocalDate;
|
|
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
|
+import java.util.HashMap;
|
|
|
|
|
+import java.util.List;
|
|
|
|
|
+import java.util.Map;
|
|
|
import java.util.Objects;
|
|
import java.util.Objects;
|
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
|
|
|
@Service
|
|
@Service
|
|
@@ -52,7 +62,40 @@ public class AgentAppServiceImpl implements AgentAppService {
|
|
|
@Override
|
|
@Override
|
|
|
public ResultTable<AgentAppView> searchAppList(AppListParam appListParam) {
|
|
public ResultTable<AgentAppView> searchAppList(AppListParam appListParam) {
|
|
|
PageHelper.startPage(appListParam.getPage(), appListParam.getLimit());
|
|
PageHelper.startPage(appListParam.getPage(), appListParam.getLimit());
|
|
|
- return ResultTable.resultTableOk(new PageInfo<>(agentAppMapper.searchAppList(appListParam)));
|
|
|
|
|
|
|
+ List<AgentAppView> views = agentAppMapper.searchAppList(appListParam);
|
|
|
|
|
+ //设置报表数据
|
|
|
|
|
+ if(CollUtil.isEmpty(views)){
|
|
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<>(new ArrayList<>()));
|
|
|
|
|
+ }
|
|
|
|
|
+ List<String> appIds = views.stream().map(AgentAppView::getAppId).collect(Collectors.toList());
|
|
|
|
|
+ ComprehensiveReportParam param = new ComprehensiveReportParam();
|
|
|
|
|
+ param.setStartdate(getDateNum(LocalDate.now().minusDays(7)));
|
|
|
|
|
+ param.setEnddate(getDateNum(LocalDate.now()));
|
|
|
|
|
+ param.setTime_zone("UTC-8");
|
|
|
|
|
+ param.setApp_id_list(appIds);
|
|
|
|
|
+ List<ComprehensiveAppReport> appReport = advertiseFeign.getAppReport(param);
|
|
|
|
|
+ Map<String, ComprehensiveAppReport> reportMap = new HashMap<>();
|
|
|
|
|
+ if(CollUtil.isNotEmpty(appReport)){
|
|
|
|
|
+ reportMap = appReport.stream().collect(Collectors.toMap(
|
|
|
|
|
+ s -> s.getApp().getId(), O -> O));
|
|
|
|
|
+ }
|
|
|
|
|
+ for (AgentAppView view : views) {
|
|
|
|
|
+ if(!reportMap.containsKey(view.getAppId()))continue;
|
|
|
|
|
+ BeanUtil.copyProperties(reportMap.get(view.getAppId()), view);
|
|
|
|
|
+ }
|
|
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<>(views));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 获取日期数字
|
|
|
|
|
+ */
|
|
|
|
|
+ private int getDateNum(LocalDate currentDate) {
|
|
|
|
|
+ // 定义日期格式化器,格式为YYYYMMDD
|
|
|
|
|
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
|
|
|
|
|
+ // 将当前日期格式化为字符串
|
|
|
|
|
+ String formattedDate = currentDate.format(formatter);
|
|
|
|
|
+ // 将字符串转换为整数
|
|
|
|
|
+ return Integer.parseInt(formattedDate);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|