package com.reyun.report; import com.reyun.dic.DataViewEnumType; import com.reyun.model.Account; import com.reyun.model.ReportListResult; import com.reyun.report.parse.*; import org.json.JSONException; import java.io.IOException; import java.util.List; import java.util.Map; /** * Created by nolan on 19/12/2016. * description: */ public class RefluxanalysisReportResultBuilder { /** * 列表报表处理 * * @param reportListResult * @param dataViewEnumType * @return * @throws IOException */ public ReportListResult doListReport(ReportListResult reportListResult, DataViewEnumType dataViewEnumType, Long appid, Account loginAcount, List<String> viewColumns, String reportName, List<String> fillCampids, boolean isSearchText, List<String> searchIds, Map<String, String> conditions) { if ("refluxanalysis_date".equals(reportName)) { return new ListCampaignDateParse().parse(reportListResult, appid, loginAcount.getId(), viewColumns, reportName, isSearchText, isSearchText ? searchIds : fillCampids); } else if("refluxanalysis_channel".equals(reportName)){ return new ListChannelNoDivideParse().parse(reportListResult, appid, loginAcount.getId(), viewColumns, reportName, isSearchText, isSearchText ? searchIds : fillCampids); }else if("refluxanalysis_campaign".equals(reportName)) { return new ListCampaignNoDivideParse().parse(reportListResult, appid, loginAcount.getId(), viewColumns, reportName, isSearchText, isSearchText ? searchIds : fillCampids); }else if("refluxanalysis_serverid".equals(reportName)) { return new ListServeridNoDivideParse().parse(reportListResult, appid, loginAcount.getId(), viewColumns, reportName, isSearchText, isSearchText ? searchIds : fillCampids,conditions); } else { return new ListTransNameParse().parse(reportListResult, appid, loginAcount.getId(), null, reportName, isSearchText, null); } } /** * 列表报表处理 * * @param reportListResult * @param dataViewEnumType * @return * @throws IOException */ public ReportListResult doListReport(ReportListResult reportListResult, DataViewEnumType dataViewEnumType, Long appid, Account loginAcount, List<String> viewColumns, String reportName, List<String> fillCampids, boolean isSearchText, List<String> searchIds, Long cid, Map<String, String> conditions) throws IOException, JSONException { return new ListBDKeywordParse().parse(reportListResult, appid, loginAcount.getId(), viewColumns, reportName, isSearchText, null, cid, conditions); } }