|
|
@@ -8,14 +8,20 @@ import com.ytpm.advertise.enums.AdPlatformTypeEnum;
|
|
|
import com.ytpm.advertise.param.AddPlacementParam;
|
|
|
import com.ytpm.advertise.param.AppAuthContent;
|
|
|
import com.ytpm.advertise.param.AuthContent;
|
|
|
+import com.ytpm.advertise.param.ComprehensiveReportParam;
|
|
|
+import com.ytpm.advertise.param.HourReportParam;
|
|
|
import com.ytpm.advertise.param.Network;
|
|
|
import com.ytpm.advertise.param.NetworkAppInfo;
|
|
|
import com.ytpm.advertise.param.RelativeChannelParam;
|
|
|
+import com.ytpm.advertise.param.RoiReportParam;
|
|
|
import com.ytpm.advertise.param.UnitsListParam;
|
|
|
import com.ytpm.advertise.param.UnitsParam;
|
|
|
import com.ytpm.advertise.view.AddAppResponse;
|
|
|
import com.ytpm.advertise.view.AddPlacementResponse;
|
|
|
import com.ytpm.advertise.view.AppV1View;
|
|
|
+import com.ytpm.advertise.view.ComprehensiveReportView;
|
|
|
+import com.ytpm.advertise.view.HourReportView;
|
|
|
+import com.ytpm.advertise.view.ReportRoiView;
|
|
|
import com.ytpm.advertise.view.UnitsAddResponse;
|
|
|
import com.ytpm.advertise.view.UnitsListView;
|
|
|
import com.ytpm.advertise.view.UnitsUpdateResponse;
|
|
|
@@ -35,14 +41,17 @@ import org.apache.http.client.methods.HttpPost;
|
|
|
import org.apache.http.client.methods.HttpPut;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Collections;
|
|
|
import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
|
|
|
@Slf4j(topic = "Taku API 服务")
|
|
|
@Service
|
|
|
public class TakuApiServiceImpl implements TakuApiService {
|
|
|
|
|
|
private final static String API_VERSION_V1 = "/v1";
|
|
|
+ private final static String API_VERSION_V2 = "/v2";
|
|
|
private final static String API_VERSION_V3 = "/v3";
|
|
|
|
|
|
/**
|
|
|
@@ -224,5 +233,61 @@ public class TakuApiServiceImpl implements TakuApiService {
|
|
|
return Result.resultOk(RepMessage.DELETE_SUCCESS);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 查询综合报表
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public Result<ComprehensiveReportView> comprehensiveReport(ComprehensiveReportParam param) {
|
|
|
+ String result = TakuRequestUtil.doRequest(HttpPost.METHOD_NAME, API_VERSION_V2+"/fullreport", JSON.toJSONString(param));
|
|
|
+ return Result.resultObjOk(JSONObject.parseObject(result, ComprehensiveReportView.class));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询Roi报表
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public ResultTable<ReportRoiView> getReportRoi(RoiReportParam param) {
|
|
|
+ String result = TakuRequestUtil.doRequest(HttpPost.METHOD_NAME, API_VERSION_V3+"/report/roi", JSON.toJSONString(param));
|
|
|
+ JSONObject object = JSONObject.parseObject(result);
|
|
|
+ Integer count = object.getInteger("count");
|
|
|
+ if(Objects.nonNull(count)){
|
|
|
+ String records = object.getString("records");
|
|
|
+ List<ReportRoiView> roiViewList = JSONArray.parseArray(records, ReportRoiView.class);
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<ReportRoiView>(roiViewList));
|
|
|
+ }
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<ReportRoiView>(new ArrayList<>()));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询Roi报表
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public ResultTable<ReportRoiView> getReportRoiLtv(RoiReportParam param) {
|
|
|
+ String result = TakuRequestUtil.doRequest(HttpPost.METHOD_NAME, API_VERSION_V3+"/report/roi_ltv", JSON.toJSONString(param));
|
|
|
+ JSONObject object = JSONObject.parseObject(result);
|
|
|
+ Integer count = object.getInteger("count");
|
|
|
+ if(Objects.nonNull(count)){
|
|
|
+ String records = object.getString("records");
|
|
|
+ List<ReportRoiView> roiViewList = JSONArray.parseArray(records, ReportRoiView.class);
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<ReportRoiView>(roiViewList));
|
|
|
+ }
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<ReportRoiView>(new ArrayList<>()));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询分小时报表
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public ResultTable<HourReportView> hourReport(HourReportParam param) {
|
|
|
+ String result = TakuRequestUtil.doRequest(HttpPost.METHOD_NAME, API_VERSION_V3+"/report/tk_hour", JSON.toJSONString(param));
|
|
|
+ JSONObject object = JSONObject.parseObject(result);
|
|
|
+ Integer count = object.getInteger("count");
|
|
|
+ if(Objects.nonNull(count)){
|
|
|
+ String records = object.getString("records");
|
|
|
+ List<HourReportView> hourReportViews = JSONArray.parseArray(records, HourReportView.class);
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<HourReportView>(hourReportViews));
|
|
|
+ }
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<ReportRoiView>(new ArrayList<>()));
|
|
|
+ }
|
|
|
|
|
|
}
|