Bladeren bron

0618 bug修复

郎学彬 4 jaren geleden
bovenliggende
commit
3d701812bb

+ 37 - 29
src/main/java/com/minpay/common/service/impl/ReportServiceImpl.java

@@ -599,7 +599,7 @@ public class ReportServiceImpl implements IReportService {
 		}
 		childList9.add(CommonUtil.divide(shihuMap.get("合计"), "60", 2));
 		resList.add(childList9);
-		
+
 		String shihuNum = CommonUtil.divide(shihuMap.get("合计"), "60", 2);
 
 		List<String> childList3 = new ArrayList<String>();
@@ -646,7 +646,7 @@ public class ReportServiceImpl implements IReportService {
 			taiQuMap.put(apppar.getValue(), 0);
 		}
 		taiQuMap.put("合计", 0);
-		
+
 		// 最大停电次数(大于等于3)
 		for (Map<String, String> map : mountCountList) {
 			String area = map.get("area");
@@ -692,7 +692,7 @@ public class ReportServiceImpl implements IReportService {
 			}
 			yesterdayTaiQuMap.put("合计",yesterdayTaiQuMap.get("合计") + 1);
 		}
-		
+
 		String max = "0";
 		List<Map<String, Object>> maxDescList = new ArrayList<>();
 		for (Map<String, String> map : yesterdayAndTDData) {
@@ -726,10 +726,11 @@ public class ReportServiceImpl implements IReportService {
 			pinfanMaxDesc += "为";
 			for (Map<String, Object> map : maxDescList) {
 				String area = map.get("area").toString();
-				pinfanMaxDesc += area + "管辖的";
+//				pinfanMaxDesc += area + "管辖的";
+				pinfanMaxDesc += area;
 				Object addressNameListObj = map.get("addressNameList");
 				List<String> addressNameList = (List<String>)addressNameListObj;
-				
+
 				for (String addressName : addressNameList) {
 					pinfanMaxDesc += addressName + "、";
 				}
@@ -738,7 +739,7 @@ public class ReportServiceImpl implements IReportService {
 			}
 			pinfanMaxDesc = pinfanMaxDesc.substring(0, pinfanMaxDesc.length()-1) + "。";
 		}
-		
+
 		List<String> childList7 = new ArrayList<String>();
 		childList7.add(monthNum+"个月停电" + countNum + "次及以上台区且当日停电");
 		for (PubApppar apppar : appparList) {
@@ -808,7 +809,10 @@ public class ReportServiceImpl implements IReportService {
 		for (Map.Entry<String, String> entry : countMap.entrySet()) {
 			String mapKey = entry.getKey();
 		    String mapValue = entry.getValue();
-		    tingdianNumDesc += mapKey + mapValue + "个,";
+		    if(!"合计".equals(mapKey)){
+				tingdianNumDesc += mapKey + mapValue + "个,";
+			}
+
 		}
 
 		String sanciyishangNum = String.valueOf(taiQuMap.get("合计"));
@@ -816,7 +820,10 @@ public class ReportServiceImpl implements IReportService {
 		for (Map.Entry<String, Integer> entry : taiQuMap.entrySet()) {
 			String mapKey = entry.getKey();
 		    Integer mapValue = entry.getValue();
-		    sanciyishangNumDesc += mapKey + mapValue + "个,";
+			if(!"合计".equals(mapKey)){
+				sanciyishangNumDesc += mapKey + mapValue + "个,";
+			}
+//		    sanciyishangNumDesc += mapKey + mapValue + "个,";
 		}
 
 		// 恢复供电时间
@@ -825,7 +832,7 @@ public class ReportServiceImpl implements IReportService {
 		List<DwFileDetail00> selectByExample = db.selectByExample(DwFileDetail00Mapper.class, example, new MINRowBounds(1, 1));
 		String huifu = "";
 		if (selectByExample.size() != 0) {
-			System.out.println(selectByExample.get(0).getEndTime());
+			System.out.println("恢复时间======》"+selectByExample.get(0).getEndTime());
 			String hour = selectByExample.get(0).getEndTime().substring(8, 10);
 			String min = selectByExample.get(0).getEndTime().substring(10, 12);
 			if ("00".equals(min)) {
@@ -850,7 +857,8 @@ public class ReportServiceImpl implements IReportService {
 			zuiduoshihuDesc = "停电时户数最多的为"+zuiduoshihuArea + zuiduoshihu+"时户。";
 		}
 		dataMap.put("zuiduoshihuDesc", zuiduoshihuDesc);
-		String descStr = "<p>监测发现台区停电${tingdianNum}个(${shihuNum}时户),按单位分:${tingdianNumDesc}${zuiduoshihuDesc}${pinfanMaxDesc}其中${monthNum}个月内重复停电${countNum}次及以上的台区${sanciyishangNum},按单位分:${sanciyishangNumDesc}截止今日${huifu}时已全部恢复送电。</p>";
+//		String descStr = "<p>监测发现台区停电${tingdianNum}台次(${shihuNum}时户),按单位分:${tingdianNumDesc}${zuiduoshihuDesc}${pinfanMaxDesc}其中${monthNum}个月内重复停电${countNum}次及以上的台区${sanciyishangNum}个,按单位分:${sanciyishangNumDesc}截止今日${huifu}时已全部恢复送电。</p>";
+		String descStr = "<p>监测发现台区停电${tingdianNum}台次(${shihuNum}时户),按单位分:${tingdianNumDesc}${zuiduoshihuDesc}${pinfanMaxDesc}其中${monthNum}个月内重复停电${countNum}次及以上的台区${sanciyishangNum}个,按单位分:${sanciyishangNumDesc}截止今日6时已全部恢复送电。</p>";
 		resMap.put("dataMap", dataMap);
 		resMap.put("descStr", descStr);
 
@@ -919,7 +927,7 @@ public class ReportServiceImpl implements IReportService {
 		heji.add(totalMap.get("合计"));
 
 		resList.add(heji);
-		
+
 		// 停电台区数
 		List<Map<String, String>> tqCountList = db.getMybatisMapper(ReportServiceMapper.class).selectDetail00ByAddress(param);
 		String tqTotalCount = "0";
@@ -1012,7 +1020,7 @@ public class ReportServiceImpl implements IReportService {
 		String mostAddressNumDesc = "";
 		// 停电最多的次数
 		String mostAddressNum = "";
-		
+
 		List<Map<String, String>> twiceCountList = db.getMybatisMapper(ReportServiceMapper.class).selectMountCount00(param);
 		for (Map<String, String> map : twiceCountList) {
 			String area = map.get("area");
@@ -1022,7 +1030,7 @@ public class ReportServiceImpl implements IReportService {
 			if (areaList.contains(area)) {
 				int index = areaList.indexOf(area);
 				List<String> child = resList.get(index + 1);
-				
+
 				// 本周督办频繁停电台次
 				if (child.size() >= 7) {
 					child.set(6, CommonUtil.add(child.get(6), "1"));
@@ -1032,14 +1040,14 @@ public class ReportServiceImpl implements IReportService {
 			} else {
 				continue;
 			}
-			
+
 			if (CommonUtil.isEmpty(mostAddressNum)) {
 				mostAddressNum = num;
 			}
 			if (mostAddressNum.equals(num)) {
-				mostAddressNumDesc += addressName + "、";
+				mostAddressNumDesc += area+addressName + "、";
 			}
-			
+
 			// 合计
 			if (heji.size() >= 7) {
 				heji.set(6, CommonUtil.add(heji.get(6), "1"));
@@ -1051,7 +1059,7 @@ public class ReportServiceImpl implements IReportService {
 		if (!CommonUtil.isEmpty(mostAddressNumDesc)) {
 			mostAddressNumDesc = mostAddressNumDesc.substring(0, mostAddressNumDesc.length() - 1);
 		}
-		
+
 		for (List<String> list : resList) {
 			if (list.size() == 6) {
 				list.add("0");
@@ -1070,7 +1078,7 @@ public class ReportServiceImpl implements IReportService {
 		// 本周督办频繁停电台次
 		String begin = rangeArray[0];
 		String end = rangeArray[1];
-		
+
 		// 查询每天的停电三次以上且当日停电的台次
 		while (CommonUtil.compare(begin, end) != 1) {
 			param.put("yesterday", begin);
@@ -1090,10 +1098,10 @@ public class ReportServiceImpl implements IReportService {
 				String area = map.get("area");
 				String num = map.get("num");
 				if (areaList.contains(area)) {
-					
+
 					int index = areaList.indexOf(area);
 					List<String> child = resList.get(index + 1);
-					
+
 					// 本周督办频繁停电台次
 					if (child.size() >= 8) {
 						child.set(7, CommonUtil.add(child.get(7), num));
@@ -1114,7 +1122,7 @@ public class ReportServiceImpl implements IReportService {
 				} else {
 					heji.add(num);
 				}
-				
+
 				// 合计
 				if (heji.size() >= 9) {
 					heji.set(8, CommonUtil.add(heji.get(8), "1"));
@@ -1125,7 +1133,7 @@ public class ReportServiceImpl implements IReportService {
 			// 天数 + 1
 			begin = DateUtil.dateAddDay(begin, 1);
 		}
-		
+
 		// 没有数据的区域数值为0
 		for (List<String> list : resList) {
 			if (list.size() == 7) {
@@ -1140,7 +1148,7 @@ public class ReportServiceImpl implements IReportService {
 		}
 
 		// 督办总次数
-		String totalMonthChongfuTaici = heji.get(6);
+		String totalMonthChongfuTaici = heji.get(7);
 		if (CommonUtil.isEmpty(timeRange)) {
 			param.put("beginDay", DateUtil.dateAddDay(DateUtil.dateAddMonth(rangeArray[1], -2), 1) + "000000");
 		} else {
@@ -1245,11 +1253,11 @@ public class ReportServiceImpl implements IReportService {
 		for (int i = 1; i < resList.size(); i ++) {
 			List<String> childList = resList.get(i);
 			String area = childList.get(0);
-			String num = childList.get(5);
+			String num = childList.get(6);
 			if (CommonUtil.compare(num, "0") != 0) {
 				twiceCountDesc += area + num + "个,";
 			}
-			num = childList.get(6);
+			num = childList.get(7);
 			if (CommonUtil.compare(num, "0") != 0) {
 				dubantaiciDesc += area + num + "次,";
 			}
@@ -1582,7 +1590,7 @@ public class ReportServiceImpl implements IReportService {
 		String countMapTwiceDesc = "";
 		String max1 = "0";
 		String max1Value = "0";
-		
+
 		param.put("beginTime", beginDay + beginTime.substring(8,14));
 		param.put("endTime", rangeArray[1] + endTime.substring(8,14));
 		for (Map.Entry<String, Integer> entry : countMapTwice.entrySet()) {
@@ -1600,7 +1608,7 @@ public class ReportServiceImpl implements IReportService {
 			}
 			countMapTwiceDesc = countMapTwiceDesc.substring(0, countMapTwiceDesc.length() - 1) + ";";
 		}
-		
+
 		if(!"".equals(countMapTwiceDesc)){
 			countMapTwiceDesc = countMapTwiceDesc.substring(0,countMapTwiceDesc.length() - 1) + "。";
 		}
@@ -1623,7 +1631,7 @@ public class ReportServiceImpl implements IReportService {
 				} else {
 					max1Desc = max1Desc.substring(0, max1Desc.length()-1) + "台区,占比" + CommonUtil.multiply(CommonUtil.divide(numTemp, max1Value, 4), "100", 2) + "%;";
 					max1Desc = max1Desc.replace("#num#", numTemp);
-					
+
 					numTemp = "1";
 					areaTemp = maxMap.get("area");
 					max1Desc += areaTemp + "区#num#台,为" + maxMap.get("addressName") + "、";
@@ -1632,7 +1640,7 @@ public class ReportServiceImpl implements IReportService {
 			max1Desc = max1Desc.substring(0, max1Desc.length()-1) + "台区,占比" + CommonUtil.multiply(CommonUtil.divide(numTemp, max1Value, 4), "100", 2) + "%。";
 			max1Desc = max1Desc.replace("#num#", numTemp);
 		}
-		
+
 		// 两个月内停电3次以上的数据
 		param.put("countNum", "3");
 		List<Map<String, String>> thipleMountCountList = db.getMybatisMapper(ReportServiceMapper.class).selectMountCount00(param);

+ 17 - 17
src/main/java/com/minpay/reportManage/action/TQTDReportAction.java

@@ -59,16 +59,16 @@ public class TQTDReportAction implements IMINAction {
 
     /** 台区数量编辑 */
     public final static String AREA_NUM_UPDATE = "areaNumUpdate";
-    
+
     /**穿透导出详情*/
     public final static String REPORT_INF_FUJIAN_CHUANTOU = "reportInfFujianChuantou";
-    
+
     /**红黄蓝督办预警下载*/
     public final static String DOWN_RB_HHL = "downRbHhl";
 
     /** 台区停电周报报穿透数据 */
     public final static String REPORT_INF_ZB_CHUANTOU = "reportInfZbChuantou";
-    
+
     /** 台区停电周报报穿透数据下载 */
     public final static String REPORT_INF_ZB_CHUANTOU_DOWN = "reportInfZbChuantouDown";
     /**
@@ -159,7 +159,7 @@ public class TQTDReportAction implements IMINAction {
 			List<String> addressNumList = CommonUtil.getIdFromList(mountCountList, "addressNum");
 			param.put("addressNumList", addressNumList);
 			List<Map<String, String>> selectByExample = db.getMybatisMapper(ReportServiceMapper.class).selectTqtdRbDetail(param);
-			
+
 			selectByExample = Service.lookup(IFormatService.class).formatDate(selectByExample, "date");
 			selectByExample = Service.lookup(IFormatService.class).formatDateTime(selectByExample, "startTime", "endTime");
 			res.set(IMINBusinessConstant.F_PAGING_LAY, selectByExample);
@@ -315,7 +315,7 @@ public class TQTDReportAction implements IMINAction {
 			} else {
 				List<String> addressNumList = CommonUtil.getIdFromList(mountCountList, "addressNum");
 				param.put("addressNumList", addressNumList);
-				
+
 				excelList = db.getMybatisMapper(ReportServiceMapper.class).selectTqtdRbDetail(param);
 				excelList = Service.lookup(IFormatService.class).formatDate(excelList, "date");
 				excelList = Service.lookup(IFormatService.class).formatDateTime(excelList, "startTime", "endTime");
@@ -395,16 +395,16 @@ public class TQTDReportAction implements IMINAction {
 				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","数据日期#date","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress","停电时间#startTime","来电时间#endTime"};
 				wb = ExportExcelUtil.export(response, reportInf.getFileName(), excelHeader, excelList);
 			} else if ("TQTD03".equals(chuantouType)) {
-				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress","停电次数#num"};
+				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress","停电次数#num","停电时间#startTime","来电时间#endTime"};
 				wb = ExportExcelUtil.export(response, reportInf.getFileName(), excelHeader, excelList);
 			} else if ("TQTD04".equals(chuantouType)) {
-				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress"};
+				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress","停电时间#startTime","来电时间#endTime"};
 				wb = ExportExcelUtil.export(response, reportInf.getFileName(), excelHeader, excelList);
 			} else if ("TQTD05".equals(chuantouType)) {
 				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","数据日期#date","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress","停电时间#startTime","来电时间#endTime","时长#hour"};
 				wb = ExportExcelUtil.export(response, reportInf.getFileName(), excelHeader, excelList);
 			} else if ("TQTD06".equals(chuantouType)) {
-				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress"};
+				String[] excelHeader = {"台区编号#addressNum","台区名称#addressName","单位#area","单位名称#comonpanyName","终端名称#terminalName","终端编号#terminalNum","终端地址码#terminalAddress","停电时间#startTime","来电时间#endTime"};
 				wb = ExportExcelUtil.export(response, reportInf.getFileName(), excelHeader, excelList);
 			}
             if(wb != null){
@@ -648,7 +648,7 @@ public class TQTDReportAction implements IMINAction {
 		} else {
 			List<String> addressNumList = CommonUtil.getIdFromList(mountCountList, "addressNum");
 			param.put("addressNumList", addressNumList);
-			
+
 			excelList = db.getMybatisMapper(ReportServiceMapper.class).selectTqtdRbDetail(param);
 			excelList = Service.lookup(IFormatService.class).formatDate(excelList, "date");
 			excelList = Service.lookup(IFormatService.class).formatDateTime(excelList, "startTime", "endTime");
@@ -667,7 +667,7 @@ public class TQTDReportAction implements IMINAction {
 				}
 			}
 		}
-		
+
 		DwFileDetail99Example dwFileDetail99Example = new DwFileDetail99Example();
 		dwFileDetail99Example.createCriteria().andTqIn(addressNameList);
 		List<DwFileDetail99> yxList = db.getMybatisMapper(DwFileDetail99Mapper.class).selectByExample(dwFileDetail99Example);
@@ -680,7 +680,7 @@ public class TQTDReportAction implements IMINAction {
 				}
 			}
 		}
-		
+
 		OutputStream out=null;
         try {
         	out = response.getOutputStream();
@@ -694,11 +694,11 @@ public class TQTDReportAction implements IMINAction {
         } catch (Exception e) {
             e.printStackTrace();
         }
-    	
+
     	return res;
     }
-    
-    
+
+
     @MINAction(value = REPORT_INF_ZB_CHUANTOU)
     public MINActionResult reportInfZbChuantou(
         @MINParam(key = "reportId") String reportId,
@@ -819,11 +819,11 @@ public class TQTDReportAction implements IMINAction {
 			}
 			resList = Service.lookup(IFormatService.class).formatDate(resList, "date");
 			res.set(IMINBusinessConstant.F_PAGING_LAY, resList);
-		} 
+		}
 
 		return res;
     }
-    
+
     @MINAction(value = REPORT_INF_ZB_CHUANTOU_DOWN)
     public MINActionResult reportInfZbChuantouDown(
             @MINParam(key = "reportId") String reportId,
@@ -953,7 +953,7 @@ public class TQTDReportAction implements IMINAction {
  				begin = DateUtil.dateAddDay(begin, 1);
  			}
  			excelList = Service.lookup(IFormatService.class).formatDate(excelList, "date");
- 		} 
+ 		}
  		 OutputStream out=null;
          try {
          	out = response.getOutputStream();

+ 123 - 117
src/main/resources/com/minpay/db/table/own/mapper/ReportServiceMapper.xml

@@ -16,7 +16,7 @@
 			a.DFD0_START_TIME startTime,
 			a.DFD0_END_TIME endTime,
 			cast(TIMESTAMPDIFF(MINUTE,DFD0_START_TIME,DFD0_END_TIME) as char) 'time'
-        from 
+        from
         	dw_file_detail_00 a
 		where
 			1 = 1
@@ -39,7 +39,7 @@
 		select
 			cast(COUNT(1) as char) num,
 			DFD0_AREA area
-        from 
+        from
         	dw_file_detail_00 a
 		where
 			1 = 1
@@ -56,8 +56,10 @@
 			a.DFD0_ADDRESS_NUM addressNum,
 			a.DFD0_AREA area,
 			a.DFD0_ADDRESS_NAME addressName,
-			cast(count(1) as char) num
-        from 
+			cast(count(1) as char) num,
+			DFD0_START_TIME  startTime,
+			DFD0_END_TIME	endTime
+        from
         	dw_file_detail_00 a
 		where
 			1 = 1
@@ -84,8 +86,10 @@
 			a.DFD0_ADDRESS_NUM addressNum,
 			a.DFD0_AREA area,
 			a.DFD0_ADDRESS_NAME addressName,
-			cast(count(1) as char) num
-        from 
+			cast(count(1) as char) num,
+			DFD0_START_TIME  startTime,
+			DFD0_END_TIME	endTime
+        from
         	dw_file_detail_00 a
 		where
 			1 = 1
@@ -109,7 +113,7 @@
 	<select id="queryYesterdayDetail" resultType="hashmap" parameterType="java.util.Map">
 		select
 			a.DFD0_ADDRESS_NUM addressNum
-        from 
+        from
         	dw_file_detail_00 a
 		where
 			1 = 1
@@ -123,7 +127,7 @@
 			a.DFD0_AREA area,
 			cast(count(1) as char) count,
 			cast(SUM(TIMESTAMPDIFF(MINUTE,DFD0_START_TIME,DFD0_END_TIME)) as char) timeMinute
-        from 
+        from
         	dw_file_detail_00 a
 		where
 			1 = 1
@@ -136,12 +140,12 @@
 		group by a.DFD0_AREA
 	</select>
 	<select id="selectDetail00ByAddress" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 		  area,
 		  cast(COUNT(1) as char) num,
 		  cast(SUM(timeMinute) as char) time
 		FROM
-		  (SELECT 
+		  (SELECT
 		    a.DFD0_ADDRESS_NUM addressNum,
 		    a.DFD0_AREA AREA,
 		    CAST(COUNT(1) AS CHAR) num,
@@ -151,9 +155,9 @@
 		        DFD0_START_TIME,
 		        DFD0_END_TIME
 		      )
-		    ) timeMinute 
+		    ) timeMinute
 		  FROM
-		    dw_file_detail_00 a 
+		    dw_file_detail_00 a
 		  WHERE
 			1 = 1
 			<if test="beginTime != null  and beginTime != ''">
@@ -167,38 +171,38 @@
 		    <if test="countNum != null  and countNum != ''">
 		    	having num = #{countNum,jdbcType=VARCHAR}
 		    </if>
-		    ) a 
+		    ) a
 		GROUP BY AREA
 		order by COUNT(1) desc
 	</select>
 	<select id="selectReportType00FenDuan" resultType="java.lang.String" parameterType="java.util.Map">
-		SELECT 
-		  COUNT(1) 
+		SELECT
+		  COUNT(1)
 		FROM
-		  (SELECT 
+		  (SELECT
 		    SUM(
 		      TIMESTAMPDIFF(
 		        SECOND,
 		        DFD0_START_TIME,
 		        DFD0_END_TIME
 		      )
-		    ) timeMinute 
+		    ) timeMinute
 		  FROM
-		    dw_file_detail_00 a 
-		  WHERE 
+		    dw_file_detail_00 a
+		  WHERE
 		  	DFD0_END_TIME &gt; #{beginTime,jdbcType=VARCHAR}
 		    and DFD0_END_TIME &lt;= #{endTime,jdbcType=VARCHAR}
-		  GROUP BY a.DFD0_ADDRESS_NUM) b 
+		  GROUP BY a.DFD0_ADDRESS_NUM) b
 		WHERE 1=1
 			<if test="start != null  and start != ''">
-				and timeMinute &gt; #{start,jdbcType=VARCHAR} 
+				and timeMinute &gt; #{start,jdbcType=VARCHAR}
 			</if>
 			<if test="end != null  and end != ''">
-				AND timeMinute &lt;= #{end,jdbcType=VARCHAR} 
+				AND timeMinute &lt;= #{end,jdbcType=VARCHAR}
 			</if>
 	</select>
 	<select id="selectReportType00ZuichangTaiqu" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 		  cast(
 			  SUM(
 			    TIMESTAMPDIFF(
@@ -210,7 +214,7 @@
 		  ) timeMinute,
 		  DFD0_ADDRESS_NAME addressName
 		FROM
-		  dw_file_detail_00 a 
+		  dw_file_detail_00 a
 		WHERE DFD0_DATE &gt;= #{beginTime,jdbcType=VARCHAR}
 		  AND DFD0_DATE &lt;= #{endTime,jdbcType=VARCHAR}
 		GROUP BY a.DFD0_ADDRESS_NUM
@@ -220,8 +224,8 @@
 		      DFD0_START_TIME,
 		      DFD0_END_TIME
 		    )
-		  ) DESC 
-		LIMIT 0, 2  
+		  ) DESC
+		LIMIT 0, 2
 	</select>
 	<select id="selectDetail02ByGZQJPD" resultType="hashmap" parameterType="java.util.Map">
 		select
@@ -278,11 +282,11 @@
 				DFD3_XLMC 'xlmc',
 				DFD3_TQID 'tqid',
 				DFD3_BYQMC 'byqmc',
-				DFD3_YHID 'yhid', 
+				DFD3_YHID 'yhid',
 				cast(SUM(DFD3_DYSC) as char) 'dysc',
 				cast(SUM(DFD3_LJTS) as char)  'ljts'
-		FROM  dw_file_detail_03 
-		WHERE 
+		FROM  dw_file_detail_03
+		WHERE
 			1 = 1
 			<if test="beginTime != null  and beginTime != ''">
 				and substring(DFD3_SJRQ, 1, 8) &gt;= #{beginTime,jdbcType=VARCHAR}
@@ -308,12 +312,12 @@
 		FROM dw_file_detail_03
 		WHERE 1=1
 		<if test="area != null  and area != ''">
-			and DFD3_XGSMC LIKE concat(#{area,jdbcType=VARCHAR} ,'%') 
+			and DFD3_XGSMC LIKE concat(#{area,jdbcType=VARCHAR} ,'%')
 		</if>
 		<if test="beginTime != null  and beginTime != '' and endTime != null  and endTime != ''">
 			 AND DFD3_SJRQ &gt;= #{beginTime,jdbcType=VARCHAR} and DFD3_SJRQ &lt;= #{endTime,jdbcType=VARCHAR}
 		</if>
-		   
+
 		GROUP BY DFD3_YHID
 		HAVING dysc &gt;= 48
 	</select>
@@ -323,11 +327,11 @@
 				DFD4_XLMC 'xlmc',
 				DFD4_TQID 'tqid',
 				DFD4_BYQMC 'byqmc',
-				DFD4_YHID 'yhid', 
+				DFD4_YHID 'yhid',
 				SUM(DFD4_GDYSC) 'gdysc'
-				
-		FROM  dw_file_detail_04 
-		WHERE 
+
+		FROM  dw_file_detail_04
+		WHERE
 			1 = 1
 			<if test="beginTime != null  and beginTime != ''">
 				AND SUBSTRING(DFD4_SJRQ, 1, 8) &gt;= #{beginTime,jdbcType=VARCHAR}
@@ -338,31 +342,31 @@
 		GROUP BY DFD4_YHID
 		ORDER BY gdysc DESC
 	</select>
-	
+
 	<select id="selectDetail05ByType" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 		  typeTemp.type 'type',
 		  cast(COUNT(1) as char) 'num'
 		FROM
-		  dw_file_detail_05 d 
-		  LEFT JOIN 
-		    (SELECT 
+		  dw_file_detail_05 d
+		  LEFT JOIN
+		    (SELECT
 		      a.`D9G_TYPE` 'type',
 		      a.`D9G_NAME` 'node1',
 		      b.`D9G_NAME` 'node2',
-		      c.`D9G_NAME` 'node3' 
+		      c.`D9G_NAME` 'node3'
 		    FROM
-		      dw_95598_gdlx a 
-		      LEFT JOIN dw_95598_gdlx b 
-		        ON a.`D9G_PARENT_ID` = b.`D9G_ID` 
-		        AND b.D9G_LEVEL = '1' 
-		      LEFT JOIN dw_95598_gdlx c 
-		        ON b.`D9G_PARENT_ID` = c.`D9G_ID` 
-		        AND c.D9G_LEVEL = '0' 
-		    WHERE a.D9G_LEVEL = '2') typeTemp 
-		    ON typeTemp.node1 = d.DFD5_EJFL 
-		    AND typeTemp.node2 = d.DFD5_YJFL 
-		    AND typeTemp.node3 = d.DFD5_YWLX 
+		      dw_95598_gdlx a
+		      LEFT JOIN dw_95598_gdlx b
+		        ON a.`D9G_PARENT_ID` = b.`D9G_ID`
+		        AND b.D9G_LEVEL = '1'
+		      LEFT JOIN dw_95598_gdlx c
+		        ON b.`D9G_PARENT_ID` = c.`D9G_ID`
+		        AND c.D9G_LEVEL = '0'
+		    WHERE a.D9G_LEVEL = '2') typeTemp
+		    ON typeTemp.node1 = d.DFD5_EJFL
+		    AND typeTemp.node2 = d.DFD5_YJFL
+		    AND typeTemp.node3 = d.DFD5_YWLX
 		where 1 = 1
 			<if test="beginTime != null  and beginTime != ''">
 				AND SUBSTRING(replace(DFD5_SLSJ, '-', ''), 1, 8) &gt;= #{beginTime,jdbcType=VARCHAR}
@@ -373,9 +377,9 @@
 		GROUP BY typeTemp.type
 	</select>
 	<select id="selectDetail05GetArea" resultType="java.lang.String" parameterType="java.util.Map">
-		SELECT 
-			DFD5_GDDW 
-		FROM dw_file_detail_05 
+		SELECT
+			DFD5_GDDW
+		FROM dw_file_detail_05
 		WHERE (
 			SUBSTRING(replace(DFD5_SLSJ, '-', ''), 1, 8) &gt;= #{benyueBeginTime,jdbcType=VARCHAR}
 			AND SUBSTRING(replace(DFD5_SLSJ, '-', ''), 1, 8) &lt;= #{benyueEndTime,jdbcType=VARCHAR}
@@ -386,10 +390,10 @@
 			or (SUBSTRING(replace(DFD5_SLSJ, '-', ''), 1, 8) &gt;= #{qinianBeginTime,jdbcType=VARCHAR}
 			AND SUBSTRING(replace(DFD5_SLSJ, '-', ''), 1, 8) &lt;= #{qunianEndTime,jdbcType=VARCHAR}
 			)
-		GROUP BY DFD5_GDDW 
+		GROUP BY DFD5_GDDW
 	</select>
 	<select id="selectDetail05ByArea" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 		  typeTemp.type 'type',
 		  typeTemp.node3 ywlx,
 		  typeTemp.node2 yjfl,
@@ -398,25 +402,25 @@
 		  d.DFD5_GDDW gddw,
 		  COUNT(1) num
 		FROM
-		  dw_file_detail_05 d 
-		  LEFT JOIN 
-		    (SELECT 
+		  dw_file_detail_05 d
+		  LEFT JOIN
+		    (SELECT
 		      a.`D9G_TYPE` 'type',
 		      a.`D9G_NAME` 'node1',
 		      b.`D9G_NAME` 'node2',
-		      c.`D9G_NAME` 'node3' 
+		      c.`D9G_NAME` 'node3'
 		    FROM
-		      dw_95598_gdlx a 
-		      LEFT JOIN dw_95598_gdlx b 
-		        ON a.`D9G_PARENT_ID` = b.`D9G_ID` 
-		        AND b.D9G_LEVEL = '1' 
-		      LEFT JOIN dw_95598_gdlx c 
-		        ON b.`D9G_PARENT_ID` = c.`D9G_ID` 
-		        AND c.D9G_LEVEL = '0' 
-		    WHERE a.D9G_LEVEL = '2') typeTemp 
-		    ON typeTemp.node1 = d.DFD5_EJFL 
-		    AND typeTemp.node2 = d.DFD5_YJFL 
-		    AND typeTemp.node3 = d.DFD5_YWLX 
+		      dw_95598_gdlx a
+		      LEFT JOIN dw_95598_gdlx b
+		        ON a.`D9G_PARENT_ID` = b.`D9G_ID`
+		        AND b.D9G_LEVEL = '1'
+		      LEFT JOIN dw_95598_gdlx c
+		        ON b.`D9G_PARENT_ID` = c.`D9G_ID`
+		        AND c.D9G_LEVEL = '0'
+		    WHERE a.D9G_LEVEL = '2') typeTemp
+		    ON typeTemp.node1 = d.DFD5_EJFL
+		    AND typeTemp.node2 = d.DFD5_YJFL
+		    AND typeTemp.node3 = d.DFD5_YWLX
 		    where 1 = 1
 		    <if test="beginTime != null  and beginTime != ''">
 				AND SUBSTRING(replace(DFD5_SLSJ, '-', ''), 1, 8) &gt;= #{beginTime,jdbcType=VARCHAR}
@@ -489,21 +493,21 @@
 		DFD7_TYPE,
 		DFD7_TRIPTYPE
 	</select>
-	
+
 	<select id="selectDdyFxbByXgsmc" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
-			DDF_XGSMC 'area', 
-			cast(COUNT(1) as char) 'num' 
+		SELECT
+			DDF_XGSMC 'area',
+			cast(COUNT(1) as char) 'num'
 		FROM dw_ddy_fxb
 		where DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR}
 		GROUP BY DDF_XGSMC
 		order by COUNT(1) desc
 	</select>
 	<select id="selectDdyFxbByXgsmcAndZl" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 			DDF_XGSMC 'area',
 			DDF_SFZL 'sfzl',
-			cast(COUNT(1) as char) 'num' 
+			cast(COUNT(1) as char) 'num'
 		FROM dw_ddy_fxb
 		where DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR}
 		and DDF_DDYSJ &gt;= 48
@@ -514,10 +518,10 @@
 		order by COUNT(1) desc
 	</select>
 	<select id="selectDdyFxbByXgsmcYuJing" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 			DDF_XGSMC 'area',
 			DDF_SFXC 'sfxc',
-			cast(COUNT(1) as char) 'num' 
+			cast(COUNT(1) as char) 'num'
 		FROM dw_ddy_fxb
 		where DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR}
 		and DDF_DDYSJ &gt;= 15 and DDF_DDYSJ &lt; 48
@@ -531,14 +535,14 @@
 		SELECT DDF_DDYZYMC ddyzymc, cast(COUNT(0) as char) num FROM dw_ddy_fxb WHERE DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR} and DDF_DDYSJ >= 48 GROUP BY DDF_DDYZYMC order by COUNT(0) desc
 	</select>
 	<select id="selectDdyFxbByTQID" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 		  DDF_XGSMC 'area',
 		  cast(COUNT(1) as char) 'num'
 		FROM
-		  (SELECT 
+		  (SELECT
 		    DDF_XGSMC,
 		    DDF_TQID,
-		    COUNT(0) 
+		    COUNT(0)
 		  FROM
 		    dw_ddy_fxb
 		  where DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR}
@@ -546,65 +550,65 @@
 			and DDF_DDYSJ &gt;= 48
 		  </if>
 		  GROUP BY DDF_TQID,
-		    DDF_XGSMC) a 
+		    DDF_XGSMC) a
 		GROUP BY a.DDF_XGSMC
 		order by COUNT(1) desc
 	</select>
 	<!-- 	正在治理数据 -->
 	<select id = "selectDdyFxbZZZL" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 		  CAST(COUNT(1) AS CHAR) num
 		FROM
-		  dw_ddy_fxb 
+		  dw_ddy_fxb
 		WHERE
-		  DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR} 
-		  AND DDF_DDYSJ &gt;= 48 
-		  AND DDF_SFZL != '是' 
-		  AND (DDF_ZLWCSJ != '' 
+		  DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR}
+		  AND DDF_DDYSJ &gt;= 48
+		  AND DDF_SFZL != '是'
+		  AND (DDF_ZLWCSJ != ''
 		    or DDF_ZLCS != '')
 	</select>
 	<select id = "selectDdyFxbWKSZL" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 		  DDF_XGSMC area,
-		  CAST(COUNT(1) AS CHAR) num 
+		  CAST(COUNT(1) AS CHAR) num
 		FROM
-		  dw_ddy_fxb 
+		  dw_ddy_fxb
 		WHERE
-		  DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR} 
-		  AND DDF_DDYSJ &gt;= 48 
-		  AND DDF_SFZL != '是' 
-		  AND (DDF_ZLWCSJ = '' 
-		    AND DDF_ZLCS = '') 
-		GROUP BY DDF_XGSMC 
+		  DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR}
+		  AND DDF_DDYSJ &gt;= 48
+		  AND DDF_SFZL != '是'
+		  AND (DDF_ZLWCSJ = ''
+		    AND DDF_ZLCS = '')
+		GROUP BY DDF_XGSMC
 		order by COUNT(1) desc
 	</select>
-	
+
 	<select id="selectDdyFxbZlhzccx" resultType="hashmap" parameterType="java.util.Map">
-		SELECT 
+		SELECT
 			cast(COUNT(1) as char) num,
 			a.area area
 		from (
-			SELECT 
+			SELECT
 			  DDF_XGSMC area,
 			  DDF_ID,
 			  SUM(DDFD_SC)
 			FROM
-			  dw_ddy_fxb 
-			  LEFT JOIN dw_ddy_fxb_detail 
-			    ON DDFD_DATE > DDF_ZLWCSJ 
-			    AND DDF_ID = DDFD_FXB_ID 
-			WHERE 
-			  DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR} 
-			  AND DDF_DDYSJ 
-			  AND DDF_SFZL = '是' 
+			  dw_ddy_fxb
+			  LEFT JOIN dw_ddy_fxb_detail
+			    ON DDFD_DATE > DDF_ZLWCSJ
+			    AND DDF_ID = DDFD_FXB_ID
+			WHERE
+			  DDF_REPORT_ID = #{reportId,jdbcType=VARCHAR}
+			  AND DDF_DDYSJ
+			  AND DDF_SFZL = '是'
 			GROUP BY DDF_ID,
-			  DDF_XGSMC 
-			HAVING SUM(DDFD_SC) > 0 
+			  DDF_XGSMC
+			HAVING SUM(DDFD_SC) > 0
 			ORDER BY DDF_XGSMC
 		) a
 		group by a.area
 	</select>
-	
+
 	<select id="selectTqtdRbDetail" resultType="hashmap" parameterType="java.util.Map">
 		select
 			DFD0_ADDRESS_NUM addressNum,
@@ -614,10 +618,12 @@
 			DFD0_TERMINAL_NAME terminalName,
 			DFD0_TERMINAL_NUM terminalNum,
 			DFD0_TERMINAL_ADDRESS terminalAddress,
-			count(0) num
-		from 
+			count(0) num,
+			DFD0_START_TIME startTime,
+			DFD0_END_TIME endTime
+		from
 			dw_file_detail_00
-		where 
+		where
 			DFD0_END_TIME &gt;= #{beginDay,jdbcType=VARCHAR}
 			and DFD0_END_TIME &lt;= #{endDay,jdbcType=VARCHAR}
 			<if test = "addressNumList != null">
@@ -630,4 +636,4 @@
 		group by DFD0_ADDRESS_NUM
 		order by num desc
 	</select>
-</mapper>
+</mapper>

+ 20 - 14
src/main/webapp/admin/tqtd/reportManageDetailChuantou.html

@@ -20,7 +20,7 @@
 		var pageId = getQueryString("pageId");
 		var reportId = getQueryString("reportId");				//报告id
 		var chuantouType = getQueryString("chuantouType");		//穿透数据
-		
+
 		var cols = null;
 		if (chuantouType == "TQTD01") {
 			cols = [[ //表头
@@ -54,24 +54,28 @@
 			cols = [[ //表头
 						{field:'num', title: '序号', width:'5%', type:'numbers'}
 						,{field: 'addressNum', title: '台区编号', width:'8%'}
-						,{field: 'addressName', title: '台区名称', width:'10%'}
+						,{field: 'addressName', title: '台区名称', width:'8%'}
 						,{field: 'area', title: '单位', width: '8%'}
-						,{field: 'comonpanyName', title: '供电所名称', width: '10%'}
-						,{field: 'terminalName', title: '终端名称', width: '10%'}
+						,{field: 'comonpanyName', title: '供电所名称', width: '8%'}
+						,{field: 'terminalName', title: '终端名称', width: '8%'}
 						,{field: 'terminalNum', title: '终端编号', width: '8%'}
 						,{field: 'terminalAddress', title: '终端地址码', width: '10%'}
 						,{field: 'num', title: '停电次数', width: '10%'}
+                ,{field: 'startTime', title: '停电时间', width: '10%'}
+                ,{field: 'endTime', title: '来电时间', width: '10%'}
 					]];
 		} else if (chuantouType == "TQTD04") {
 			cols = [[ //表头
 						{field:'num', title: '序号', width:'5%', type:'numbers'}
 						,{field: 'addressNum', title: '台区编号', width:'8%'}
-						,{field: 'addressName', title: '台区名称', width:'10%'}
+						,{field: 'addressName', title: '台区名称', width:'8%'}
 						,{field: 'area', title: '单位', width: '8%'}
-						,{field: 'comonpanyName', title: '供电所名称', width: '10%'}
-						,{field: 'terminalName', title: '终端名称', width: '10%'}
+						,{field: 'comonpanyName', title: '供电所名称', width: '8%'}
+						,{field: 'terminalName', title: '终端名称', width: '8%'}
 						,{field: 'terminalNum', title: '终端编号', width: '8%'}
-						,{field: 'terminalAddress', title: '终端地址码', width: '10%'}
+						,{field: 'terminalAddress', title: '终端地址码', width: '8%'}
+                        ,{field: 'startTime', title: '停电时间', width: '10%'}
+                        ,{field: 'endTime', title: '来电时间', width: '10%'}
 					]];
 		} else if (chuantouType == "TQTD05") {
 			cols = [[ //表头
@@ -94,15 +98,17 @@
 			cols = [[ //表头
 						{field:'num', title: '序号', width:'5%', type:'numbers'}
 						,{field: 'addressNum', title: '台区编号', width:'8%'}
-						,{field: 'addressName', title: '台区名称', width:'10%'}
+						,{field: 'addressName', title: '台区名称', width:'8%'}
 						,{field: 'area', title: '单位', width: '8%'}
-						,{field: 'comonpanyName', title: '供电所名称', width: '10%'}
-						,{field: 'terminalName', title: '终端名称', width: '10%'}
+						,{field: 'comonpanyName', title: '供电所名称', width: '8%'}
+						,{field: 'terminalName', title: '终端名称', width: '8%'}
 						,{field: 'terminalNum', title: '终端编号', width: '8%'}
-						,{field: 'terminalAddress', title: '终端地址码', width: '10%'}
+						,{field: 'terminalAddress', title: '终端地址码', width: '8%'}
+                        ,{field: 'startTime', title: '停电时间', width: '8%'}
+                        ,{field: 'endTime', title: '来电时间', width: '8%'}
 					]];
 		}
-		
+
 	    layui.use('table', function(){
 	    	var table = layui.table;
 			  // 加载数据
@@ -129,4 +135,4 @@
     </script>
 </body>
 
-</html>
+</html>