CustomReportViewUtil.java 1.6 KB
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;
	}

}