CustomReportViewUtil.java
1.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.skua.modules.util;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.springframework.jdbc.core.JdbcTemplate;
import com.skua.common.report.ReportViewUtil;
import com.skua.core.context.SpringContextUtils;
/**
* <pre>
* 针对洪城项目按业务要求处理报表工具类
* </pre>
* @author Li Yuanyuan
* @version V0.1, 2021年2月26日 上午9:34:04
*/
public class CustomReportViewUtil {
/**
* <pre>
* 需要取运营日报处理水量和化验室日报水质数据时,使用此方法
* </pre>
* @param reportIds 报表id集合
* @param fields 查询字段集合,厂站字段间逗号分割,厂内字段#分割
* @param factoryIds 厂站集合
* @param startTime 开始时间
* @param endTime 结束时间
* @return
* @author Li Yuanyuan, 2021年2月26日 上午10:23:06
*/
public static String buildYyrbView(String hyrbReportIds,String yyrbReportIds,String hyrbFields,String yyrbFields,String factoryIds,String startTime,String endTime) {
//分别获取两张报表sql字段
String hyrbSql = ReportViewUtil.buildView(hyrbReportIds, hyrbFields, factoryIds, startTime, endTime);
String yyrbSql = ReportViewUtil.buildView(yyrbReportIds, yyrbFields, factoryIds, startTime, endTime);
//String[] hyrbFieldArray = hyrbFields.split(",");
//String hyrbFieldSqlPart = "";
// for(String key : hyrbFieldArray) {
// hyrbFieldSqlPart = hyrbFieldSqlPart+",aa."+key;
// }
String sql = "(select bb."+yyrbFields+",aa.* from "+hyrbSql+" aa left join "+yyrbSql+" bb on aa.time=bb.time and aa.factory_id=bb.factory_id)";
return sql;
}
}