浏览代码

功能优化

ZHGYL_GKPT 4 年之前
父节点
当前提交
3209f0e966

+ 16 - 393
src/main/java/com/minpay/common/service/impl/ReportServiceImpl.java

@@ -324,7 +324,7 @@ public class ReportServiceImpl implements IReportService {
 						}
 						jo.remove("DFD10_GZSC");
 						jo.remove("DFD10_FZL");
-						Map<String,String> str = this.getXlgzzTjByParam(DDYZLFXBList,key);
+						Map<String,String> str = AuxiliaryTools.getXlgzzTjByParam(DDYZLFXBList,key);
 						jo.put("sum",str.get("sc"));
 						jo.put("avg",ArithUtils.div(str.get("pjfzl"),str.get("xlts")));
 						ja.add(jo);
@@ -357,7 +357,7 @@ public class ReportServiceImpl implements IReportService {
 						}
 						jo2.remove("DFD10_GZSC");
 						jo2.remove("DFD10_FZL");
-						Map<String,String> str = this.getXlgzzTjByParam(DDYZLFXBList,key);
+						Map<String,String> str = AuxiliaryTools.getXlgzzTjByParam(DDYZLFXBList,key);
 						jo2.put("sum",str.get("sc"));
 						jo2.put("avg",ArithUtils.div(str.get("pjfzl"),str.get("xlts")));
 						ja2.add(jo2);
@@ -385,7 +385,7 @@ public class ReportServiceImpl implements IReportService {
 						}else{
 							jo3 = JSONObject.fromObject(temp);
 							pbTemp.put(key,"1");
-							Map<String,String> str = this.getXlPbgzzTjByParam(pbgzzList,key,"1");
+							Map<String,String> str = AuxiliaryTools.getXlPbgzzTjByParam(pbgzzList,key,"1");
 							jo3.put("sum",str.get("sc"));
 							jo3.put("avg",ArithUtils.div(str.get("pjfzl"),str.get("xlts")));
 							ja3.add(jo3);
@@ -396,7 +396,7 @@ public class ReportServiceImpl implements IReportService {
 						}else{
 							jo4 = JSONObject.fromObject(temp);
 							pbTemp2.put(key,"1");
-							Map<String,String> str = this.getXlPbgzzTjByParam(pbgzzList,key,"2");
+							Map<String,String> str = AuxiliaryTools.getXlPbgzzTjByParam(pbgzzList,key,"2");
 							jo4.put("sum",str.get("sc"));
 							jo4.put("avg",ArithUtils.div(str.get("pjfzl"),str.get("xlts")));
 							ja4.add(jo4);
@@ -408,19 +408,18 @@ public class ReportServiceImpl implements IReportService {
 			List<Map<String, String>>  qxlgdbbbList = db.getMybatisMapper(IReportBatchMapper.class).selectQxlgdbbData(map);
 			JSONArray jagd = new JSONArray();
 			if (qxlgdbbbList != null && !qxlgdbbbList.isEmpty()){
-				int size = qxlgdbbbList.size();
 				Map<String,Object> gdTemp = new HashMap<String,Object>();
 				Map<String,String> temp = null;
 				String unit = "";
-				for (int i = 0; i < size; i++) {
+				for (int i = 0; i < qxlgdbbbList.size(); i++) {
 					temp = qxlgdbbbList.get(i);
 					unit = temp.get("DFD11_GDDW");//单位
-					if (unit ==null || "".equals(unit) ||gdTemp.containsKey(unit)){
+					if (unit ==null || "".equals(unit) || gdTemp.containsKey(unit)){
 						continue;
 					} else {
 						gdTemp.put(unit,"1");
 						JSONObject tempjo = JSONObject.fromObject(temp);
-						this.getQxgdByParam(qxlgdbbbList,unit,tempjo);
+						AuxiliaryTools.getQxgdByParam(qxlgdbbbList,unit,tempjo);
 						jagd.add(tempjo);
 					}
 				}
@@ -441,12 +440,12 @@ public class ReportServiceImpl implements IReportService {
 			temp2.put("GZLS-D","");
 			for (int i = 0; i < jagd.size(); i++) {
 				temp1 = jagd.getJSONObject(i);
-				temp2.put("KHZS",ArithUtils.add(temp2.getString("KHZS"),temp1.getString("KHZS")));
+				temp2.put("KHZS",ArithUtils.addToInt(temp2.getString("KHZS"),temp1.getString("KHZS")));
 				temp2.put("DDXCSJ",ArithUtils.add(temp2.getString("DDXCSJ"),temp1.getString("DDXCSJ")));
-				temp2.put("GDCLSJ",ArithUtils.add(temp2.getString("KHZS"),temp1.getString("KHZS")));
-				temp2.put("DDXCCSS",ArithUtils.add(temp2.getString("DDXCCSS"),temp1.getString("DDXCCSS")));
+				temp2.put("GDCLSJ",ArithUtils.add(temp2.getString("GDCLSJ"),temp1.getString("GDCLSJ")));
+				temp2.put("DDXCCSS",ArithUtils.addToInt(temp2.getString("DDXCCSS"),temp1.getString("DDXCCSS")));
 				temp2.put("GDCSZS",ArithUtils.add(temp2.getString("GDCSZS"),temp1.getString("GDCSZS")));
-				temp2.put("GDZS",ArithUtils.add(temp2.getString("GDZS"),temp1.getString("GDZS")));
+				temp2.put("GDZS",ArithUtils.addToInt(temp2.getString("GDZS"),temp1.getString("GDZS")));
 				temp2.put("YSXJHD",ArithUtils.add(temp2.getString("YSXJHD"),temp1.getString("YSXJHD")));
 				temp2.put("GZLS-A",ArithUtils.add(temp2.getString("GZLS-A"),temp1.getString("GZLS-A")));
 				temp2.put("GZLS-B",ArithUtils.add(temp2.getString("GZLS-B"),temp1.getString("GZLS-B")));
@@ -464,401 +463,25 @@ public class ReportServiceImpl implements IReportService {
 			rstMap.put("result2",ja2);//线路过载
 			rstMap.put("result3",ja3);//配变过载
 			rstMap.put("result4",ja4);//配变重载
-			rstMap.put("result5",jagd);//配变重载
+			rstMap.put("result5",jagd);//抢修工单
 
 			Map<String,Object> param = new HashMap<String,Object>();
 			param.put("maxZzsc",maxZzsc);
 			param.put("maxXlName",maxXlName);
-
 			param.put("maxZzsc2",maxZzsc2);
 			param.put("maxXlName2",maxXlName2);
 			//获取配变过载数据最大值
-			this.getMaxPbByParam(pbgzzList,param);
+			AuxiliaryTools.getMaxPbByParam(pbgzzList,param);
 			//获取配变重载数据最大值
-			rstMap.put("descStr",this.getXlgzzDesc(ja,ja2,param));
-			rstMap.put("descStr2",this.getXlPbgzzDesc(ja3,ja4,param));
-		}
-		return rstMap;
-	}
-
-	private Map<String, String> getQxgdByParam(List<Map<String, String>> list, String unit, JSONObject tempjo) {
-		String id = "";
-		try {
-			id = tempjo.getString("DFD11_ID");
-		} catch (Exception e){
-			id = "";
-		}
-		if(list != null && !list.isEmpty()){
-			int size = list.size();
-			JSONObject temp;
-			String tempId = "",tempUnit = "",gzlx = "";
-			JSONObject ddd , ddd2;
-			for (int i = 0; i < size; i++) {
-				temp = JSONObject.fromObject(list.get(i));
-					tempUnit = temp.getString("DFD11_GDDW");
-					if(unit.equals(tempUnit)){
-						gzlx = temp.getString("GZLX");
-						switch (gzlx){
-							case "A":
-								tempjo.put("GZLS-A",ArithUtils.add(tempjo.getString("GZLS-A"),String.valueOf(1)));
-								break;
-							case "B":
-								tempjo.put("GZLS-B",ArithUtils.add(tempjo.getString("GZLS-B"),String.valueOf(1)));
-								break;
-							case "C":
-								tempjo.put("GZLS-C",ArithUtils.add(tempjo.getString("GZLS-C"),String.valueOf(1)));
-								break;
-							case "D":
-								tempjo.put("GZLS-D",ArithUtils.add(tempjo.getString("GZLS-D"),String.valueOf(1)));
-								break;
-							default:
-								break;
-						}
-						tempjo.put("GDZS",ArithUtils.add(tempjo.getString("GDZS"),String.valueOf(1)));//工单总数 累加
-						tempjo.put("DFD11_QXZSC",ArithUtils.add(tempjo.getString("DFD11_QXZSC"),temp.getString("DFD11_QXZSC")));//抢修总时长累加
-						ddd = JSONObject.fromObject(temp.get("DFD11_TJSHSJ"));
-						ddd2 = JSONObject.fromObject(temp.get("DFD11_GDSJ"));
-						tempjo.put("GDCLSJ",ArithUtils.add(tempjo.getString("GDCLSJ"),StringUtil.ObjectToString(StringUtil.dateCalculate2((Long)ddd.get("time"),(Long)ddd2.get("time")))));
-						ddd = JSONObject.fromObject(temp.get("DFD11_SCPFQXDSJ"));
-						ddd2 = JSONObject.fromObject(temp.get("DFD11_DWXCSJ"));
-						tempjo.put("DDXCSJ",ArithUtils.add(tempjo.getString("DDXCSJ"),StringUtil.ObjectToString(StringUtil.dateCalculate2((Long)ddd.get("time"),(Long)ddd2.get("time")))));
-						tempjo.remove("DFD11_TJSHSJ");
-						tempjo.remove("DFD11_GDSJ");
-						tempjo.remove("DFD11_SCPFQXDSJ");
-						tempjo.remove("DFD11_DWXCSJ");
-					}
-//				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * 获取配变描述信息
-	 * @param ja3 过载
-	 * @param ja4 重载
-	 * @param param
-	 * @return
-	 */
-	private List<String> getXlPbgzzDesc(JSONArray ja3, JSONArray ja4, Map<String, Object> param) {
-		List<String> list = new ArrayList<String>();
-		StringBuffer descStr = new StringBuffer();
-		//过载
-		String maxGb = StringUtil.ObjectToString(param.get("maxPbName1"));
-		String avg = "";
-		if(ja3 != null && !ja3.isEmpty()){
-			descStr.append("监测发现公变过载")
-					.append(ja3.size())
-					.append("个,");
-			int size = ja3.size();
-			Map<String,Object> temp = new HashMap<String,Object>();
-			for (int i = 0; i < size; i++) {
-				JSONObject jo = ja3.getJSONObject(i);
-				String key = jo.getString("KEYSS");
-				if(key.equals(maxGb)){
-					avg = jo.getString("avg");
-					maxGb = jo.getString("DFD9_GBMC");
-				}
-				String unit = jo.getString("DFD9_UNIT");
-				if(temp.containsKey(unit)){
-					temp.put(unit,Integer.valueOf(String.valueOf(temp.get(unit))) + 1);
-				}else{
-					temp.put(unit,1);
-				}
-			}
-			if(!temp.isEmpty()){
-				descStr.append("分别为");
-			}
-			for (Map.Entry<String, Object> entry : temp.entrySet()) {
-				descStr.append(entry.getKey())
-						.append(entry.getValue())
-						.append("个,");
-			}
-			descStr.append("其中").append(maxGb).append(",");
-			descStr.append("过载时长最长" + StringUtil.ObjToFloat(param.get("maxPb1")) + "小时,平均负载率为" + avg + "%。")
-			.append("原因为:")
-			.append(param.get("reason1"))
-			.append("。")
-			.append("措施为:")
-			.append(param.get("cs1"))
-			.append("。");
-			descStr.append("不涉及电采暖线路。");
-		}else{
-			descStr.append("监测发现公变过载。");
-		}
-		//重载
-		StringBuffer descStr2 = new StringBuffer();
-		String maxGb2 = StringUtil.ObjectToString(param.get("maxPbName2"));
-		String avg2 = "";
-		if(ja4 != null && !ja4.isEmpty()){
-			descStr2.append("监测发现公变重载")
-					.append(ja4.size())
-					.append("个,");
-			int size = ja4.size();
-			Map<String,Object> temp = new HashMap<String,Object>();
-			for (int i = 0; i < size; i++) {
-				JSONObject jo = ja4.getJSONObject(i);
-				String key = jo.getString("KEYSS");
-				if(key.equals(maxGb2)){
-					avg2 = jo.getString("avg");
-					maxGb2 = jo.getString("DFD9_GBMC");
-				}
-				String unit = jo.getString("DFD9_UNIT");
-				if(temp.containsKey(unit)){
-					temp.put(unit,Integer.valueOf(String.valueOf(temp.get(unit))) + 1);
-				}else{
-					temp.put(unit,1);
-				}
-			}
-			if(!temp.isEmpty()){
-				descStr2.append("分别为");
-				for (Map.Entry<String, Object> entry : temp.entrySet()) {
-					descStr2.append(entry.getKey())
-							.append(entry.getValue())
-							.append("个,");
-				}
-			}
-
-			descStr2.append("其中").append(maxGb2).append(",");
-			descStr2.append("重载时长最长" + StringUtil.ObjToFloat(param.get("maxPb2")) + "小时,平均负载率为" + avg2 + "%。")
-					.append("原因为:")
-					.append(param.get("reason1"))
-					.append("。")
-					.append("措施为:")
-					.append(param.get("cs1"))
-					.append("。");
-			descStr2.append("不涉及电采暖线路。");
-		}else{
-			descStr2.append("监测发现公变过载。");
-		}
-		list.add(descStr.toString());
-		list.add(descStr2.toString());
-		return list;
-	}
+			rstMap.put("descStr",AuxiliaryTools.getXlgzzDesc(ja,ja2,param));
+			rstMap.put("descStr2",AuxiliaryTools.getXlPbgzzDesc(ja3,ja4,param));
+			rstMap.put("descStr3",AuxiliaryTools.getQxgdDesc(jagd,param));
 
-	/**
-	 * 查找最大值详情
-	 * @param list
-	 * @param param
-	 */
-	private void getMaxPbByParam(List<Map<String, String>> list, Map<String, Object> param) {
-		List<Map<String, String>> tempList1 = new ArrayList<Map<String, String>>();
-		List<Map<String, String>> tempList2 = new ArrayList<Map<String, String>>();
-		if(list != null && !list.isEmpty()){
-			for (int i = 0; i < list.size(); i++) {
-				Map<String, String> temp = list.get(i);
-				Object fzl = temp.get("DFD9_FZL");
-				if(StringUtil.ObjToFloat(fzl) > 100){
-					tempList1.add(temp);
-				}else if(StringUtil.ObjToFloat(fzl) <= 100 && StringUtil.ObjToFloat(fzl) >= 80){
-					tempList2.add(temp);
-				}
-			}
-		}
-		//获取配变数据最大值
-		float maxPb1 = 0f;
-		float maxPb2 = 0f;
-		//过载
-		if(tempList1 != null && !tempList1.isEmpty()){
-			int size = tempList1.size();
-			for (int i = 0; i < size; i++) {
-				Map<String, String> temp = tempList1.get(i);
-				float fzl = StringUtil.ObjToFloat(temp.get("DFD9_GZSC"));
-				if(maxPb1 < fzl){
-					maxPb1 = fzl;
-					param.put("gbmc1",temp.get("DFD9_GBMC"));//公变名称
-					param.put("reason1",temp.get("DFD9_JTYY"));//具体原因
-					param.put("cs1",temp.get("DFD9_JTJJCS"));//具体解决措施
-					param.put("maxPbName1",temp.get("KEYSS"));
-				}
-			}
-			param.put("maxPb1",maxPb1);
-		}
-		//重载
-		if(tempList2 != null && !tempList2.isEmpty()){
-			int size = tempList2.size();
-			for (int i = 0; i < size; i++) {
-				Map<String, String> temp = tempList2.get(i);
-				float fzl = StringUtil.ObjToFloat(temp.get("DFD9_ZZSC"));
-				if(maxPb2 < fzl){
-					maxPb2 = fzl;
-					param.put("gbmc2",temp.get("DFD9_GBMC"));//公变名称
-					param.put("reason2",temp.get("DFD9_JTYY"));//具体原因
-					param.put("cs2",temp.get("DFD9_JTJJCS"));//具体解决措施
-					param.put("maxPbName2",temp.get("KEYSS"));
-				}
-			}
-			param.put("maxPb2",maxPb2);
-		}
-	}
-
-	/**
-	 * 获取线路配变重过载数据
-	 * @param pbgzzList
-	 * @param key
-	 * @return
-	 */
-	private Map<String, String> getXlPbgzzTjByParam(List<Map<String, String>> pbgzzList, String key,String type) {
-		Map<String,String> rstMap = new HashMap<String,String>();
-		rstMap.put("sc","");
-		rstMap.put("pjfzl","");
-		rstMap.put("xlts","");
-		if(pbgzzList == null || pbgzzList.isEmpty()){
-			return rstMap;
-		}else{
-			int size = pbgzzList.size();
-			float sum = 0f;
-			float avg = 0f;
-			int index = 0;
-			for (int i = 0; i < size; i++) {
-				Map<String,String> temp = pbgzzList.get(i);
-				Object fzl = temp.get("DFD9_FZL");
-				if("1".equals(type) && StringUtil.ObjToFloat(fzl) > 100){//过载
-					String tempkey = temp.get("KEYSS");//单位
-					if(tempkey.equals(key)){
-						sum =  ArithUtils.add(String.valueOf(sum),String.valueOf(temp.get("DFD9_GZSC")));
-						avg = ArithUtils.add(String.valueOf(avg),String.valueOf(temp.get("DFD9_FZL")));
-						index ++;
-					}
-				}else if("2".equals(type) && StringUtil.ObjToFloat(fzl) <= 100 && StringUtil.ObjToFloat(fzl) >= 80) {//重载
-					String tempkey = temp.get("KEYSS");//单位
-					if(tempkey.equals(key)){
-						sum =  ArithUtils.add(String.valueOf(sum),String.valueOf(temp.get("DFD9_ZZSC")));
-						avg = ArithUtils.add(String.valueOf(avg),String.valueOf(temp.get("DFD9_FZL")));
-						index ++;
-					}
-				}
-
-			}
-			rstMap.put("sc",StringUtil.ObjectToString(sum));
-			rstMap.put("pjfzl",StringUtil.ObjectToString(avg));
-			rstMap.put("xlts",StringUtil.ObjectToString(index));
 		}
 		return rstMap;
 	}
 
-	/**
-	 * 获取线路描述信息
-	 * @param ja 重载
-	 * @param ja2 过载
-	 * @param param 附加参数
-	 * @return
-	 */
-	private List<String> getXlgzzDesc(JSONArray ja,JSONArray ja2,Map<String,Object> param) {
-		String maxXlName = StringUtil.ObjectToString(param.get("maxXlName"));
-		List<String> list = new ArrayList<String>();
-		StringBuffer rst = new StringBuffer();
-		if(ja == null || ja.size() <= 0){
-			rst.append("监测未发现线路重载。");
-		}else{
-			rst.append("监测发现线路重载")
-				.append(ja.size() )
-				.append("条。");
-			Map<String,Object> map = new HashMap<String,Object>();
-			String xlmc = "";
-			for (int i = 0; i < ja.size(); i++) {
-				JSONObject jo = ja.getJSONObject(i);
-				String key = StringUtil.ObjectToString(jo.get("DFD10_XGSMC"));//县公司名称
-				String keys = StringUtil.ObjectToString(jo.get("KEYSS"));
-				if(maxXlName.equals(keys)){
-					maxXlName = jo.getString("avg");
-					xlmc = jo.getString("DFD10_XLMC");
-				}
-				if(map.containsKey(key)){
-					map.put(key,Integer.valueOf(String.valueOf(map.get(key))) + 1);
-				}else{
-					map.put(key,1);
-				}
-			}
-			if(!map.isEmpty()){
-				rst.append("分别为");
-			}
-			for (Map.Entry<String, Object> entry : map.entrySet()) {
-				rst.append(entry.getKey())
-					.append(entry.getValue())
-					.append("条,");
-			}
-			rst.append("其中").append(xlmc).append(",");
-			rst.append("重载时长最长" + StringUtil.ObjToFloat(param.get("maxZzsc")) + "小时,平均负载率为" + maxXlName + "%。");
-			rst.append("不涉及电采暖线路。");
-		}
-
-		//******************************过载***************************************//
-		StringBuffer rst2 = new StringBuffer();
-		maxXlName = StringUtil.ObjectToString(param.get("maxXlName2"));
-		if(ja2 == null || ja2.size() <= 0){
-			rst2.append("监测未发现线路过载。");
-		}else{
-			rst2.append("监测发现线路过载");
-			rst2.append(ja2.size() )
-					.append("条。");
-			Map<String,Object> map = new HashMap<String,Object>();
-			String xlmc = "";
-			for (int i = 0; i < ja2.size(); i++) {
-				JSONObject jo = ja2.getJSONObject(i);
-				String key = StringUtil.ObjectToString(jo.get("DFD10_XGSMC"));//县公司名称
-				String keys = StringUtil.ObjectToString(jo.get("KEYSS"));
-
-				if(maxXlName.equals(keys)){
-					maxXlName = jo.getString("avg");
-					xlmc = jo.getString("DFD10_XLMC");
-				}
-				if(map.containsKey(key)){
-					map.put(key,Integer.valueOf(String.valueOf(map.get(key))) + 1);
-				}else{
-					map.put(key,1);
-				}
-			}
-			if(!map.isEmpty()){
-				rst2.append("分别为");
-			}
-			for (Map.Entry<String, Object> entry : map.entrySet()) {
-				rst2.append(entry.getKey())
-						.append(entry.getValue())
-						.append("条,");
-			}
-			rst2.append("其中").append(xlmc).append(",");
-			rst2.append("过载时长最长" + StringUtil.ObjToFloat(param.get("maxZzsc")) + "小时,平均负载率为" + maxXlName + "%。");
-			rst2.append("不涉及电采暖线路。");
-		}
-		list.add(rst.toString());
-		list.add(rst2.toString());
-		return list;
-	}
 
-	/**
-	 * 获取线路统计信息
-	 * @param ddyzlfxbList
-	 * @param key
-	 * @return
-	 */
-	private Map<String, String> getXlgzzTjByParam(List<Map<String, String>> ddyzlfxbList,String key) {
-		Map<String,String> map = new HashMap<String,String>();
-		if(ddyzlfxbList == null || ddyzlfxbList.isEmpty()){
-			map.put("sc","");
-			map.put("pjfzl","");
-			map.put("xlts","");
-			return map;
-		}else{
-			Map<String,String> temp = new HashMap<String,String>();
-			float sum = 0f;
-			int index = 0;
-			float avg = 0f;
-			for (int i = 0; i < ddyzlfxbList.size(); i++) {
-				temp = ddyzlfxbList.get(i);
-				String tempkey = temp.get("KEYSS");//单位
-				if(key.equals(tempkey)){
-					sum =  ArithUtils.add(String.valueOf(sum),String.valueOf(temp.get("DFD10_GZSC")));
-					avg = ArithUtils.add(String.valueOf(avg),String.valueOf(temp.get("DFD10_FZL")));
-					index ++;
-				}
-			}
-			map.put("sc",sum + "");
-			map.put("pjfzl",avg + "");
-			map.put("xlts",index + "");
-		}
-		return map;
-	}
 
 	/**
 	 * 台区停电日报

+ 469 - 0
src/main/java/com/minpay/common/util/AuxiliaryTools.java

@@ -0,0 +1,469 @@
+package com.minpay.common.util;
+
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 辅助工具
+ */
+public class AuxiliaryTools {
+    /**
+     * 解析抢修工单描述
+     * @param jagd
+     * @param param
+     * @return
+     */
+    public static Object getQxgdDesc(JSONArray jagd, Map<String, Object> param) {
+        int sum = 0,sumYear = 0,xj = 0,pm = -1,pmYear = -1,cs = 0,maxCs = 0,ddxccss = 0;
+        float wh = 0f,whYear = 0f,tempWh = 0f,minWh = 0f,maxWh = 0f;
+        String min = "",max = "",maxcs = "",tempDW = "";
+        if(jagd != null ){
+            JSONObject tempJo;
+            for (int i = 0; i < jagd.size(); i++) {
+                tempJo = jagd.getJSONObject(i);
+                tempDW = tempJo.getString("DFD11_GDDW");
+                tempWh = StringUtil.ObjToFloat(tempJo.getString("WH"));
+                cs = StringUtil.ObjToInt(tempJo.getString("GDCSZS"));
+                if("公司累计".equals(tempDW)){
+                    sum = StringUtil.ObjToInt(tempJo.getString("GDZS"));//累计
+                    wh = StringUtil.ObjToFloat(tempJo.getString("WH"));//
+                    xj = StringUtil.ObjToInt(tempJo.getString("YSXJHD"));
+                }else{
+                    ddxccss = ArithUtils.addToInt(ddxccss,tempJo.getString("DDXCCSS"));//到达现场超时数
+                    if(tempWh <= minWh){
+                        minWh = tempWh;
+                        min = tempDW;
+                    }
+                    if(tempWh >= maxWh){
+                        maxWh = tempWh;
+                        max = tempDW;
+                    }
+                    if(maxCs >= cs){
+                        maxcs = tempDW;
+                    }
+                }
+            }
+        }
+        StringBuffer descStr = new StringBuffer();
+        descStr.append("受理抢修类工单")
+                .append(sum)
+                .append("件,万户报修率")
+                .append(wh)
+                .append(",全省排名第")
+                .append(pm)
+                .append(",")
+                .append("报修率较低的为")
+                .append(min)
+                .append(",较高的为")
+                .append(max)
+                .append("。抢修到达现场及时率");
+                if(sum == 0){
+                    descStr.append(100);
+                }else{
+                    descStr.append((sum - ddxccss)/sum*100);
+                }
+        descStr.append("%;");
+                if("".equals(maxcs)){
+                    descStr.append(maxcs)
+                            .append("超70分钟工单")
+                            .append(maxCs).append("件。");
+                }
+        descStr.append("疑似虚假回单")
+                .append(xj)
+                .append("件。")
+                .append("无因报修引发的诉求升级工单。全年累计受理抢修类工单")
+                .append(sumYear)
+                .append("件,万户报修率")
+                .append(whYear)
+                .append(",全省排名第")
+                .append(pmYear)
+                .append("。不涉及电采暖用户");
+        return descStr.toString();
+    }
+    /**
+     * 解析抢修工单数据
+     * @param list
+     * @param unit
+     * @param tempjo
+     * @return
+     */
+    public static Map<String, String> getQxgdByParam(List<Map<String, String>> list, String unit, JSONObject tempjo) {
+        if(list != null && !list.isEmpty()){
+            JSONObject temp;
+            String tempUnit = "",gzlx = "";
+            JSONObject ddd , ddd2;
+            for (int i = 0; i < list.size(); i++) {
+                temp = JSONObject.fromObject(list.get(i));
+                tempUnit = temp.getString("DFD11_GDDW");
+                if(unit.equals(tempUnit)){
+                    gzlx = temp.getString("GZLX");
+                    switch (gzlx){
+                        case "A":
+                            tempjo.put("GZLS-A",ArithUtils.add(tempjo.getString("GZLS-A"),String.valueOf(1)));
+                            break;
+                        case "B":
+                            tempjo.put("GZLS-B",ArithUtils.add(tempjo.getString("GZLS-B"),String.valueOf(1)));
+                            break;
+                        case "C":
+                            tempjo.put("GZLS-C",ArithUtils.add(tempjo.getString("GZLS-C"),String.valueOf(1)));
+                            break;
+                        case "D":
+                            tempjo.put("GZLS-D",ArithUtils.add(tempjo.getString("GZLS-D"),String.valueOf(1)));
+                            break;
+                        default:
+                            break;
+                    }
+                    tempjo.put("GDZS",ArithUtils.addToInt(tempjo.getString("GDZS"),String.valueOf(1)));//工单总数 累加
+                    tempjo.put("DFD11_QXZSC",ArithUtils.add(tempjo.getString("DFD11_QXZSC"),temp.getString("DFD11_QXZSC")));//抢修总时长累加
+                    ddd = JSONObject.fromObject(temp.get("DFD11_TJSHSJ"));
+                    ddd2 = JSONObject.fromObject(temp.get("DFD11_GDSJ"));
+                    tempjo.put("GDCLSJ",ArithUtils.add(tempjo.getString("GDCLSJ"),StringUtil.ObjectToString(StringUtil.dateCalculate2((Long)ddd.get("time"),(Long)ddd2.get("time")))));
+                    ddd = JSONObject.fromObject(temp.get("DFD11_SCPFQXDSJ"));
+                    ddd2 = JSONObject.fromObject(temp.get("DFD11_DWXCSJ"));
+                    tempjo.put("DDXCSJ",ArithUtils.add(tempjo.getString("DDXCSJ"),StringUtil.ObjectToString(StringUtil.dateCalculate2((Long)ddd.get("time"),(Long)ddd2.get("time")))));
+                    tempjo.remove("DFD11_TJSHSJ");
+                    tempjo.remove("DFD11_GDSJ");
+                    tempjo.remove("DFD11_SCPFQXDSJ");
+                    tempjo.remove("DFD11_DWXCSJ");
+                    list.remove(i);
+                    i--;
+                }
+            }
+        }
+        return null;
+    }
+
+    /**
+     * 获取配变描述信息
+     * @param ja3 过载
+     * @param ja4 重载
+     * @param param
+     * @return
+     */
+    public static  List<String> getXlPbgzzDesc(JSONArray ja3, JSONArray ja4, Map<String, Object> param) {
+        List<String> list = new ArrayList<String>();
+        StringBuffer descStr = new StringBuffer();
+        //过载
+        String maxGb = StringUtil.ObjectToString(param.get("maxPbName1"));
+        String avg = "";
+        if(ja3 != null && !ja3.isEmpty()){
+            descStr.append("监测发现公变过载")
+                    .append(ja3.size())
+                    .append("个,");
+            int size = ja3.size();
+            Map<String,Object> temp = new HashMap<String,Object>();
+            for (int i = 0; i < size; i++) {
+                JSONObject jo = ja3.getJSONObject(i);
+                String key = jo.getString("KEYSS");
+                if(key.equals(maxGb)){
+                    avg = jo.getString("avg");
+                    maxGb = jo.getString("DFD9_GBMC");
+                }
+                String unit = jo.getString("DFD9_UNIT");
+                if(temp.containsKey(unit)){
+                    temp.put(unit,Integer.valueOf(String.valueOf(temp.get(unit))) + 1);
+                }else{
+                    temp.put(unit,1);
+                }
+            }
+            if(!temp.isEmpty()){
+                descStr.append("分别为");
+            }
+            for (Map.Entry<String, Object> entry : temp.entrySet()) {
+                descStr.append(entry.getKey())
+                        .append(entry.getValue())
+                        .append("个,");
+            }
+            descStr.append("其中").append(maxGb).append(",");
+            descStr.append("过载时长最长" + StringUtil.ObjToFloat(param.get("maxPb1")) + "小时,平均负载率为" + avg + "%。")
+                    .append("原因为:")
+                    .append(param.get("reason1"))
+                    .append("。")
+                    .append("措施为:")
+                    .append(param.get("cs1"))
+                    .append("。");
+            descStr.append("不涉及电采暖线路。");
+        }else{
+            descStr.append("监测发现公变过载。");
+        }
+        //重载
+        StringBuffer descStr2 = new StringBuffer();
+        String maxGb2 = StringUtil.ObjectToString(param.get("maxPbName2"));
+        String avg2 = "";
+        if(ja4 != null && !ja4.isEmpty()){
+            descStr2.append("监测发现公变重载")
+                    .append(ja4.size())
+                    .append("个,");
+            int size = ja4.size();
+            Map<String,Object> temp = new HashMap<String,Object>();
+            for (int i = 0; i < size; i++) {
+                JSONObject jo = ja4.getJSONObject(i);
+                String key = jo.getString("KEYSS");
+                if(key.equals(maxGb2)){
+                    avg2 = jo.getString("avg");
+                    maxGb2 = jo.getString("DFD9_GBMC");
+                }
+                String unit = jo.getString("DFD9_UNIT");
+                if(temp.containsKey(unit)){
+                    temp.put(unit,Integer.valueOf(String.valueOf(temp.get(unit))) + 1);
+                }else{
+                    temp.put(unit,1);
+                }
+            }
+            if(!temp.isEmpty()){
+                descStr2.append("分别为");
+                for (Map.Entry<String, Object> entry : temp.entrySet()) {
+                    descStr2.append(entry.getKey())
+                            .append(entry.getValue())
+                            .append("个,");
+                }
+            }
+
+            descStr2.append("其中").append(maxGb2).append(",");
+            descStr2.append("重载时长最长" + StringUtil.ObjToFloat(param.get("maxPb2")) + "小时,平均负载率为" + avg2 + "%。")
+                    .append("原因为:")
+                    .append(param.get("reason1"))
+                    .append("。")
+                    .append("措施为:")
+                    .append(param.get("cs1"))
+                    .append("。");
+            descStr2.append("不涉及电采暖线路。");
+        }else{
+            descStr2.append("监测发现公变过载。");
+        }
+        list.add(descStr.toString());
+        list.add(descStr2.toString());
+        return list;
+    }
+
+    /**
+     * 查找最大值详情
+     * @param list
+     * @param param
+     */
+    public static  void getMaxPbByParam(List<Map<String, String>> list, Map<String, Object> param) {
+        List<Map<String, String>> tempList1 = new ArrayList<Map<String, String>>();
+        List<Map<String, String>> tempList2 = new ArrayList<Map<String, String>>();
+        if(list != null && !list.isEmpty()){
+            for (int i = 0; i < list.size(); i++) {
+                Map<String, String> temp = list.get(i);
+                Object fzl = temp.get("DFD9_FZL");
+                if(StringUtil.ObjToFloat(fzl) > 100){
+                    tempList1.add(temp);
+                }else if(StringUtil.ObjToFloat(fzl) <= 100 && StringUtil.ObjToFloat(fzl) >= 80){
+                    tempList2.add(temp);
+                }
+            }
+        }
+        //获取配变数据最大值
+        float maxPb1 = 0f;
+        float maxPb2 = 0f;
+        //过载
+        if(tempList1 != null && !tempList1.isEmpty()){
+            int size = tempList1.size();
+            for (int i = 0; i < size; i++) {
+                Map<String, String> temp = tempList1.get(i);
+                float fzl = StringUtil.ObjToFloat(temp.get("DFD9_GZSC"));
+                if(maxPb1 < fzl){
+                    maxPb1 = fzl;
+                    param.put("gbmc1",temp.get("DFD9_GBMC"));//公变名称
+                    param.put("reason1",temp.get("DFD9_JTYY"));//具体原因
+                    param.put("cs1",temp.get("DFD9_JTJJCS"));//具体解决措施
+                    param.put("maxPbName1",temp.get("KEYSS"));
+                }
+            }
+            param.put("maxPb1",maxPb1);
+        }
+        //重载
+        if(tempList2 != null && !tempList2.isEmpty()){
+            int size = tempList2.size();
+            for (int i = 0; i < size; i++) {
+                Map<String, String> temp = tempList2.get(i);
+                float fzl = StringUtil.ObjToFloat(temp.get("DFD9_ZZSC"));
+                if(maxPb2 < fzl){
+                    maxPb2 = fzl;
+                    param.put("gbmc2",temp.get("DFD9_GBMC"));//公变名称
+                    param.put("reason2",temp.get("DFD9_JTYY"));//具体原因
+                    param.put("cs2",temp.get("DFD9_JTJJCS"));//具体解决措施
+                    param.put("maxPbName2",temp.get("KEYSS"));
+                }
+            }
+            param.put("maxPb2",maxPb2);
+        }
+    }
+
+    /**
+     * 获取线路配变重过载数据
+     * @param pbgzzList
+     * @param key
+     * @return
+     */
+    public static  Map<String, String> getXlPbgzzTjByParam(List<Map<String, String>> pbgzzList, String key, String type) {
+        Map<String,String> rstMap = new HashMap<String,String>();
+        rstMap.put("sc","");
+        rstMap.put("pjfzl","");
+        rstMap.put("xlts","");
+        if(pbgzzList == null || pbgzzList.isEmpty()){
+            return rstMap;
+        }else{
+            int size = pbgzzList.size();
+            float sum = 0f;
+            float avg = 0f;
+            int index = 0;
+            for (int i = 0; i < size; i++) {
+                Map<String,String> temp = pbgzzList.get(i);
+                Object fzl = temp.get("DFD9_FZL");
+                if("1".equals(type) && StringUtil.ObjToFloat(fzl) > 100){//过载
+                    String tempkey = temp.get("KEYSS");//单位
+                    if(tempkey.equals(key)){
+                        sum =  ArithUtils.add(String.valueOf(sum),String.valueOf(temp.get("DFD9_GZSC")));
+                        avg = ArithUtils.add(String.valueOf(avg),String.valueOf(temp.get("DFD9_FZL")));
+                        index ++;
+                    }
+                }else if("2".equals(type) && StringUtil.ObjToFloat(fzl) <= 100 && StringUtil.ObjToFloat(fzl) >= 80) {//重载
+                    String tempkey = temp.get("KEYSS");//单位
+                    if(tempkey.equals(key)){
+                        sum =  ArithUtils.add(String.valueOf(sum),String.valueOf(temp.get("DFD9_ZZSC")));
+                        avg = ArithUtils.add(String.valueOf(avg),String.valueOf(temp.get("DFD9_FZL")));
+                        index ++;
+                    }
+                }
+
+            }
+            rstMap.put("sc",StringUtil.ObjectToString(sum));
+            rstMap.put("pjfzl",StringUtil.ObjectToString(avg));
+            rstMap.put("xlts",StringUtil.ObjectToString(index));
+        }
+        return rstMap;
+    }
+
+    /**
+     * 获取线路描述信息
+     * @param ja 重载
+     * @param ja2 过载
+     * @param param 附加参数
+     * @return
+     */
+    public static  List<String> getXlgzzDesc(JSONArray ja, JSONArray ja2, Map<String, Object> param) {
+        String maxXlName = StringUtil.ObjectToString(param.get("maxXlName"));
+        List<String> list = new ArrayList<String>();
+        StringBuffer rst = new StringBuffer();
+        if(ja == null || ja.size() <= 0){
+            rst.append("监测未发现线路重载。");
+        }else{
+            rst.append("监测发现线路重载")
+                    .append(ja.size() )
+                    .append("条。");
+            Map<String,Object> map = new HashMap<String,Object>();
+            String xlmc = "";
+            for (int i = 0; i < ja.size(); i++) {
+                JSONObject jo = ja.getJSONObject(i);
+                String key = StringUtil.ObjectToString(jo.get("DFD10_XGSMC"));//县公司名称
+                String keys = StringUtil.ObjectToString(jo.get("KEYSS"));
+                if(maxXlName.equals(keys)){
+                    maxXlName = jo.getString("avg");
+                    xlmc = jo.getString("DFD10_XLMC");
+                }
+                if(map.containsKey(key)){
+                    map.put(key,Integer.valueOf(String.valueOf(map.get(key))) + 1);
+                }else{
+                    map.put(key,1);
+                }
+            }
+            if(!map.isEmpty()){
+                rst.append("分别为");
+            }
+            for (Map.Entry<String, Object> entry : map.entrySet()) {
+                rst.append(entry.getKey())
+                        .append(entry.getValue())
+                        .append("条,");
+            }
+            rst.append("其中").append(xlmc).append(",");
+            rst.append("重载时长最长" + StringUtil.ObjToFloat(param.get("maxZzsc")) + "小时,平均负载率为" + maxXlName + "%。");
+            rst.append("不涉及电采暖线路。");
+        }
+
+        //******************************过载***************************************//
+        StringBuffer rst2 = new StringBuffer();
+        maxXlName = StringUtil.ObjectToString(param.get("maxXlName2"));
+        if(ja2 == null || ja2.size() <= 0){
+            rst2.append("监测未发现线路过载。");
+        }else{
+            rst2.append("监测发现线路过载");
+            rst2.append(ja2.size() )
+                    .append("条。");
+            Map<String,Object> map = new HashMap<String,Object>();
+            String xlmc = "";
+            for (int i = 0; i < ja2.size(); i++) {
+                JSONObject jo = ja2.getJSONObject(i);
+                String key = StringUtil.ObjectToString(jo.get("DFD10_XGSMC"));//县公司名称
+                String keys = StringUtil.ObjectToString(jo.get("KEYSS"));
+
+                if(maxXlName.equals(keys)){
+                    maxXlName = jo.getString("avg");
+                    xlmc = jo.getString("DFD10_XLMC");
+                }
+                if(map.containsKey(key)){
+                    map.put(key,Integer.valueOf(String.valueOf(map.get(key))) + 1);
+                }else{
+                    map.put(key,1);
+                }
+            }
+            if(!map.isEmpty()){
+                rst2.append("分别为");
+            }
+            for (Map.Entry<String, Object> entry : map.entrySet()) {
+                rst2.append(entry.getKey())
+                        .append(entry.getValue())
+                        .append("条,");
+            }
+            rst2.append("其中").append(xlmc).append(",");
+            rst2.append("过载时长最长" + StringUtil.ObjToFloat(param.get("maxZzsc")) + "小时,平均负载率为" + maxXlName + "%。");
+            rst2.append("不涉及电采暖线路。");
+        }
+        list.add(rst.toString());
+        list.add(rst2.toString());
+        return list;
+    }
+
+    /**
+     * 获取线路统计信息
+     * @param ddyzlfxbList
+     * @param key
+     * @return
+     */
+    public static  Map<String, String> getXlgzzTjByParam(List<Map<String, String>> ddyzlfxbList, String key) {
+        Map<String,String> map = new HashMap<String,String>();
+        if(ddyzlfxbList == null || ddyzlfxbList.isEmpty()){
+            map.put("sc","");
+            map.put("pjfzl","");
+            map.put("xlts","");
+            return map;
+        }else{
+            Map<String,String> temp = new HashMap<String,String>();
+            float sum = 0f;
+            int index = 0;
+            float avg = 0f;
+            for (int i = 0; i < ddyzlfxbList.size(); i++) {
+                temp = ddyzlfxbList.get(i);
+                String tempkey = temp.get("KEYSS");//单位
+                if(key.equals(tempkey)){
+                    sum =  ArithUtils.add(String.valueOf(sum),String.valueOf(temp.get("DFD10_GZSC")));
+                    avg = ArithUtils.add(String.valueOf(avg),String.valueOf(temp.get("DFD10_FZL")));
+                    index ++;
+                }
+            }
+            map.put("sc",sum + "");
+            map.put("pjfzl",avg + "");
+            map.put("xlts",index + "");
+        }
+        return map;
+    }
+
+
+}

+ 1 - 1
src/main/java/com/minpay/common/util/StringUtil.java

@@ -59,7 +59,7 @@ public class StringUtil extends StringUtils {
             return Float.valueOf(String.valueOf(obj));
         }else{
             try {
-                return Float.valueOf(String.valueOf(obj.toString().replaceAll("%","")));
+                return Float.valueOf(obj.toString().replaceAll("%",""));
             }catch (Exception e){
                 return 0f;
             }

+ 2 - 2
src/main/java/com/minpay/db/table/model/DwFileDetail11Example.java

@@ -36,7 +36,7 @@ public class DwFileDetail11Example {
      * @mbg.generated
      */
     public DwFileDetail11Example() {
-        oredCriteria = new ArrayList<>();
+        oredCriteria = new ArrayList();
     }
 
     /**
@@ -159,7 +159,7 @@ public class DwFileDetail11Example {
 
         protected GeneratedCriteria() {
             super();
-            criteria = new ArrayList<>();
+            criteria = new ArrayList();
         }
 
         public boolean isValid() {

+ 10 - 16
src/main/java/com/minpay/reportManage/action/XlgzzReportAction.java

@@ -6,15 +6,11 @@ import com.minpay.common.format.IFormatService;
 import com.minpay.common.service.IReportService;
 import com.minpay.common.util.DateUtil;
 import com.minpay.common.util.ExportUtils;
-import com.minpay.common.util.StringUtil;
-import com.minpay.db.table.mapper.DwReportDataMapper;
 import com.minpay.db.table.mapper.DwReportInfMapper;
-import com.minpay.db.table.model.DwReportData;
 import com.minpay.db.table.model.DwReportInf;
 import com.minpay.db.table.own.mapper.IReportBatchMapper;
 import com.minpay.db.table.own.mapper.ReportManageMapper;
 import com.minpay.db.table.own.mapper.SequenceMapper;
-import com.mongodb.util.StringBuilderPool;
 import com.startup.minpay.frame.business.IMINAction;
 import com.startup.minpay.frame.business.res.MINActionResult;
 import com.startup.minpay.frame.constant.IMINBusinessConstant;
@@ -27,12 +23,7 @@ import com.startup.minpay.frame.session.MINSession;
 import com.startup.minpay.frame.target.MINAction;
 import com.startup.minpay.frame.target.MINComponent;
 import com.startup.minpay.frame.target.MINParam;
-import org.apache.poi.hssf.usermodel.*;
 import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
-import org.apache.poi.ss.usermodel.CellStyle;
-import org.apache.poi.ss.usermodel.Font;
-import org.apache.poi.ss.usermodel.IndexedColors;
-import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.xssf.usermodel.*;
 
 import javax.servlet.http.HttpServletResponse;
@@ -63,6 +54,7 @@ public class XlgzzReportAction implements IMINAction {
 
     /** 报告修改 */
     public final static String REPORT_INF_UPDATE = "reportInfUpdate";
+
     @MINAction(value = REPORT_INF_QUERY)
     public MINActionResult reportInfQuery(
             @MINParam(key = "page", defaultValue = "1") int page,
@@ -227,6 +219,8 @@ public class XlgzzReportAction implements IMINAction {
     @MINAction(value = REPORT_DOWN_LOAD)
     public MINActionResult reportDownLoad(
             @MINParam(key = "reportId") String reportId,
+            @MINParam(key = "timeType") String timeType,
+            @MINParam(key = "reportType") String reportType,
             HttpServletResponse response
     ) throws Exception {
         MINActionResult res = new MINActionResult();
@@ -234,7 +228,8 @@ public class XlgzzReportAction implements IMINAction {
         // 报表类型id
         Map<String, Object> param = new HashMap<String, Object>();
         param.put("reportId", reportId);
-        param.put("reportTypeId","XLGZZRB");
+        param.put("reportTypeId",reportType);
+        param.put("timeType",timeType);
         List<Map<String,String>> list = db.getMybatisMapper(IReportBatchMapper.class).selectReportInfo(param);
         String fileName = "";
         if(list != null && !list.isEmpty()){
@@ -295,9 +290,6 @@ public class XlgzzReportAction implements IMINAction {
                 .append("  ")
                 .append("注:线路负载率持续1小时在70%-100%为重载,持续1小时在100%以上为过载。");
         List<Map<String,String>> dataList = (List<Map<String, String>>) temp.get("result");
-//        for (int i = 0; i < 1000000; i++) {
-//            dataList.add(dataList.get(0));
-//        }
         int index = 0;
         ExportUtils.XlzgzCreateSheet(wb,index,"线路重载明细",titleArray,fieldArray,descxl.toString(),dataList,new HashMap<String,String>());
 
@@ -330,10 +322,12 @@ public class XlgzzReportAction implements IMINAction {
         index = ExportUtils.XlzgzCreateSheet(wb,index,"公变过载明细",titleArray2,fieldArray2,"",dataList3,new HashMap<String,String>());
 
         //******************************************抢修类工单明细******************************************//
-        String[] titleArray3 = new String[]{"客户总量(户)","平均到达现场时间(分)","工单处理平均时长(分)","到达现场超时数",
+        String[] titleArray3 = new String[]{"单位","客户总量(户)","平均到达现场时间(分)","工单处理平均时长(分)","到达现场超时数",
                 "工单时长超70分钟数","故障类型#客户内部故障","故障类型#低压故障","故障类型#非电力故障","故障类型#电能质量等故障","疑似虚假回单","工单总数","万户报修率"};
-        String[] fieldArray3 = new String[]{"1","2","3","4","5","6","7","8","9","10","11","12","13","","","",""};
-        ExportUtils.XlzgzCreateSheet(wb,index,"抢修类工单报表明细",titleArray3,fieldArray3,"",new ArrayList<>(),new HashMap<String,String>());
+        String[] fieldArray3 = new String[]{"DFD11_GDDW","KHZS","DDXCSJ","GDCLSJ","DDXCCSS","GDCSZS","GZLS-A","GZLS-B","GZLS-C","GZLS-D","YSXJHD","GDZS","WH","","","",""};
+        List<Map<String,String>> dataList5 = (List<Map<String, String>>) temp.get("result5");
+        String tempList3 =  String.valueOf(temp.get("descStr3"));
+        ExportUtils.XlzgzCreateSheet(wb,index,"抢修类工单报表明细",titleArray3,fieldArray3,tempList3,dataList5,new HashMap<String,String>());
         return wb;
     }
 }

+ 1 - 3
src/main/resources/com/minpay/db/table/own/mapper/ReportBatchMapper.xml

@@ -249,9 +249,7 @@
             '0' WHBXL,
             '0' GDCLSJ,
             '0' DDXCSJ,
-        CASE
-
-                WHEN T.DFD11_YJFL = '客户内部故障' THEN
+        CASE  WHEN T.DFD11_YJFL = '客户内部故障' THEN
                 'A'
                 WHEN T.DFD11_YJFL = '非电力故障' THEN
                 'C'

+ 152 - 88
src/main/webapp/admin/xlgzz/reportManageDetailXlgzz.html

@@ -5,6 +5,7 @@
     <meta charset="utf-8">
     <title>报告详情</title>
     <script src="../../js/min-loader-next.js"></script>
+    <script src="../../js/customcomm.js"></script>
     <style>
         .desc_label{
             font-size: 2rem;
@@ -50,14 +51,12 @@
                 </div>
                 <!--配变过载-->
                 <div class="layui-tab-item">
-
                     <table id="demo2x" lay-filter="test"></table>
                 </div>
+                <!--抢修类工单-->
                 <div class="layui-tab-item">
                     <p  id ="desc3"  class="desc_label"></p>
                     <br>
-                    <p  class="desc_label"  style="color: #ff0000;">注:台区停电数据来源于供服系统</p>
-                    <br>
                     <table id="demo3" lay-filter="test"></table>
                 </div>
 
@@ -65,42 +64,58 @@
         </div>
     </div>
     <script>
-        var pageId = getQueryString("pageId");
-        var reportId = getQueryString("reportId");		//报告id---100000150
-        var fileName = chineseUrlDecodeURI(getQueryString("fileName"));	//报告名称
-        var type = getQueryString("type");				//报告类型00:excel 01:word
-        var typeId = getQueryString("typeId");			//报告类型id XLGZZRB
-        var reportType = getQueryString("reportType");	//报告类型 XLGZZRB
-        var $element,$table;
-        $("#fileName").text(fileName);
-        layui.use(['element','table'], function(){
-            $element= layui.element;
-            $table = layui.table;
-        });
-        tableYulan();
-        // 预览
-        function tableYulan() {
-            console.log("reportId:"+reportId+",reportType:" + reportType)
-            // 查询符合条件的明细数据,生成预览数据
-            $.request({
-                action : 'XlgzzReportAction/reportNeedDataDetail2',
-                data : {
-                    reportId : reportId,
-                    reportType:reportType//日报 or  周报
-                },
-                success : function(data) {
-                    if (data.code == 0) {//查询结果集成功
+        $(function(){
+            var pageId = getQueryString("pageId");
+            var reportId = getQueryString("reportId");		//报告id---100000150
+            var fileName = chineseUrlDecodeURI(getQueryString("fileName"));	//报告名称
+            var type = getQueryString("type");				//报告类型00:excel 01:word
+            var typeId = getQueryString("typeId");			//报告类型id XLGZZRB
+            var reportType = getQueryString("reportType");	//报告类型 XLGZZRB
+            var $element,$table;
+            $("#fileName").text(fileName);
+            layui.use(['element','table'], function(){
+                $element= layui.element;
+                $table = layui.table;
+            });
+            tableYulan();
+            // 预览
+            function tableYulan() {
+                // 查询符合条件的明细数据,生成预览数据
+                $.request({
+                    action : 'XlgzzReportAction/reportNeedDataDetail2',
+                    data : {
+                        reportId : reportId,
+                        reportType:reportType//日报 or  周报
+                    },
+                    success : function(data) {
+                        if (data.code == 0) {//查询结果集成功
                             // $element.tabDelete('demo', '22');
                             //渲染表格
                             $table.render({
                                 elem: '#demo1'
                                 ,limit:100
                                 ,cols: [[ //表头
-                                    {field: 'DFD10_XGSMC', title: '单位', width:120}
-                                    ,{field: 'DFD10_BZMC', title: '供电所', width:120}
-                                    ,{field: 'DFD10_XLMC', title: '线路名称', width:120}
-                                    ,{field: 'sum', title: '重载时长(h)', width:120}
-                                    ,{field: 'avg', title: '平均负载率(%)', width: 120}
+                                    {field: 'SEQU',title:'序号',type:'numbers',width:60}
+                                    ,{field: 'DFD10_XGSMC', title: '单位',templet:function(d){
+                                            return appData.formattercenter(d.DFD10_XGSMC);
+                                        }
+                                    }
+                                    ,{field: 'DFD10_BZMC', title: '供电所',templet:function(d){
+                                            return appData.formatterleft(d.DFD10_BZMC);
+                                        }
+                                    }
+                                    ,{field: 'DFD10_XLMC', title: '线路名称',templet:function(d){
+                                            return appData.formatterleft(d.DFD10_XLMC);
+                                        }
+                                    }
+                                    ,{field: 'sum', title: '重载时长(h)',templet:function(d){
+                                            return appData.formatterright(d.sum);
+                                        }
+                                    }
+                                    ,{field: 'avg', title: '平均负载率(%)',templet:function(d){
+                                            return appData.formatterright(d.avg);
+                                        }
+                                    }
                                 ]],
                                 data:data.data.resList.result
                             });
@@ -108,11 +123,12 @@
                                 elem: '#demo1x'
                                 ,limit:100
                                 ,cols: [[ //表头
-                                    {field: 'DFD10_XGSMC', title: '单位', width:120}
-                                    ,{field: 'DFD10_BZMC', title: '供电所', width:120}
-                                    ,{field: 'DFD10_XLMC', title: '线路名称', width:120}
-                                    ,{field: 'sum', title: '过载时长(h)', width:120}
-                                    ,{field: 'avg', title: '平均负载率(%)', width: 120}
+                                    {field: 'SEQU',title:'序号',type:'numbers',width:60}
+                                    ,{field: 'DFD10_XGSMC', title: '单位'}
+                                    ,{field: 'DFD10_BZMC', title: '供电所'}
+                                    ,{field: 'DFD10_XLMC', title: '线路名称'}
+                                    ,{field: 'sum', title: '过载时长(h)'}
+                                    ,{field: 'avg', title: '平均负载率(%)'}
                                 ]],
                                 data:data.data.resList.result2
                             });
@@ -120,13 +136,32 @@
                                 elem: '#demo2'
                                 ,limit:100
                                 ,cols: [[ //表头
-                                    {field: 'DFD9_UNIT', title: '单位', width:120}
-                                    ,{field: 'DFD9_BZMC', title: '供电所', width:120}
-                                    ,{field: 'DFD9_GBMC', title: '公变名称', width:120}
-                                    ,{field: 'DFD9_ZZSC', title: '重载时长(h)', width:120}
-                                    ,{field: 'avg', title: '平均负载率(%)', width: 120}
-                                    ,{field: 'DFD9_JTYY', title: '原因', width: 120}
-                                    ,{field: 'DFD9_JTJJCS', title: '解决措施', width: 120}
+                                    {field: 'SEQU',title:'序号',type:'numbers',width:60}
+                                    ,{field: 'DFD9_UNIT', title: '单位'}
+                                    ,{field: 'DFD9_BZMC', title: '供电所',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_BZMC);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_GBMC', title: '公变名称',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_GBMC);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_ZZSC', title: '重载时长(h)',templet:function(d){
+                                            return appData.formatterright(d.DFD9_ZZSC);
+                                        }
+                                    }
+                                    ,{field: 'avg', title: '平均负载率(%)',templet:function(d){
+                                            return appData.formatterright(d.avg);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_JTYY', title: '原因',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_JTYY);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_JTJJCS', title: '解决措施',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_JTJJCS);
+                                        }
+                                    }
                                 ]],
                                 data:data.data.resList.result4
                             });
@@ -134,13 +169,32 @@
                                 elem: '#demo2x'
                                 ,limit:100
                                 ,cols: [[ //表头
-                                    {field: 'DFD9_UNIT', title: '单位', width:120}
-                                    ,{field: 'DFD9_BZMC', title: '供电所', width:120}
-                                    ,{field: 'DFD9_GBMC', title: '公变名称', width:120}
-                                    ,{field: 'DFD9_GZSC', title: '过载时长(h)', width:120}
-                                    ,{field: 'avg', title: '平均负载率(%)', width: 120}
-                                    ,{field: 'DFD9_JTYY', title: '原因', width: 120}
-                                    ,{field: 'DFD9_JTJJCS', title: '解决措施', width: 120}
+                                    {field: 'SEQU',title:'序号',type:'numbers',width:60}
+                                    ,{field: 'DFD9_UNIT', title: '单位'}
+                                    ,{field: 'DFD9_BZMC', title: '供电所',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_BZMC);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_GBMC', title: '公变名称',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_GBMC);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_GZSC', title: '过载时长(h)',templet:function(d){
+                                            return appData.formatterright(d.DFD9_GZSC);
+                                        }
+                                    }
+                                    ,{field: 'avg', title: '平均负载率(%)',templet:function(d){
+                                            return appData.formatterright(d.avg);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_JTYY', title: '原因',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_JTYY);
+                                        }
+                                    }
+                                    ,{field: 'DFD9_JTJJCS', title: '解决措施',templet:function(d){
+                                            return appData.formatterleft(d.DFD9_JTJJCS);
+                                        }
+                                    }
                                 ]],
                                 data:data.data.resList.result3
                             });
@@ -149,43 +203,53 @@
                             $("#desc11").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr[1]);
                             $("#desc2").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[0]);
                             $("#desc22").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[1]);
-
-                        $table.render({
-                            elem: '#demo3'
-                            ,limit:100
-                            ,cols: [[ //表头
-                            {field: 'DFD11_GDDW', title: '单位\\分类', width:150,rowspan:2}
-                            ,{field: 'KHZS', title: '客户总量(户)', width:150,rowspan:2}
-                            ,{field: 'DDXCSJ', title: '平均到达现场时间(分)', width:150,rowspan:2}
-                            ,{field: 'GDCLSJ', title: '工单处理平均时长(分)', width:150,rowspan:2}
-                            ,{field: 'DDXCCSS', title: '到达现场超时数', width:150,rowspan:2}
-                            ,{field: 'GDCSZS', title: '工单时长超70分钟数', width:150,rowspan:2}
-                            ,{field: '', title: '故障类型',colspan:4}
-                            ,{field: 'YSXJHD', title: '疑似虚假回单', width:150,rowspan:2}
-                            ,{field: 'GDZS', title: '工单总数', width:150,rowspan:2}
-                            ,{field: 'WH', title: '万户报修率', width:150,rowspan:2}
-                        ],
-                            [
-                                {field: 'GZLS-A', title: '客户内部故障', width:150}
-                                ,{field: 'GZLS-B', title: '低压故障', width:150}
-                                ,{field: 'GZLS-C', title: '非电力故障', width:150}
-                                ,{field: 'GZLS-D', title: '电能质量等故障', width:150}
-                            ]],
-                            data:data.data.resList.result5,
-                            done:function(res, curr, count){
-                                count || this.elem.next('.layui-table-view').find('.layui-table-header').css('display', 'inline-block');
-                                count || this.elem.next('.layui-table-view').find('.layui-table-box').css('overflow-x', 'auto');
-                            }
-                        });
-                    } else {
-                        $.ErrorAlert(res.MINErrorMessage);
+                            $("#desc3").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr3);
+                            $table.render({
+                                elem: '#demo3'
+                                ,limit:100
+                                ,cols: [[ //表头
+                                    {field: 'SEQU',title:'序号',type:'numbers',rowspan:2,width:60,fixed:'left'}
+                                    ,{field: 'DFD11_GDDW', title: '单位\\分类', width:160,rowspan:2,fixed:'left'}
+                                    ,{field: 'KHZS', title: '客户总量(户)', width:160,rowspan:2}
+                                    ,{field: 'DDXCSJ', title: '平均到达现场时间(分)', width:160,rowspan:2}
+                                    ,{field: 'GDCLSJ', title: '工单处理平均时长(分)', width:160,rowspan:2}
+                                    ,{field: 'DDXCCSS', title: '到达现场超时数', width:160,rowspan:2}
+                                    ,{field: 'GDCSZS', title: '工单时长超70分钟数', width:160,rowspan:2}
+                                    ,{field: '', title: '故障类型',colspan:4}
+                                    ,{field: 'YSXJHD', title: '疑似虚假回单', width:160,rowspan:2}
+                                    ,{field: 'GDZS', title: '工单总数', width:160,rowspan:2}
+                                    ,{field: 'WH', title: '万户报修率', width:160,rowspan:2}
+                                ],
+                                    [
+                                        {field: 'GZLS-A', title: '客户内部故障', width:160}
+                                        ,{field: 'GZLS-B', title: '低压故障', width:160}
+                                        ,{field: 'GZLS-C', title: '非电力故障', width:160}
+                                        ,{field: 'GZLS-D', title: '电能质量等故障', width:160}
+                                    ]],
+                                data:data.data.resList.result5,
+                                done:function(res, curr, count){
+                                    count || this.elem.next('.layui-table-view').find('.layui-table-header').css('display', 'inline-block');
+                                    count || this.elem.next('.layui-table-view').find('.layui-table-box').css('overflow-x', 'auto');
+                                    var that = this.elem.next();
+                                    res.data.forEach(function (item, index)  {
+                                        if (item.DFD11_GDDW === "公司累计") {
+                                            var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']");
+                                            tr.css("background-color", "Gainsboro");
+                                        }
+                                    });
+                                }
+                            });
+                        } else {
+                            $.ErrorAlert(res.MINErrorMessage);
+                        }
+                    },
+                    error : function(data2) {
+                        $.ErrorAlert(data2.MINErrorMessage);
                     }
-                },
-                error : function(data2) {
-                    $.ErrorAlert(data2.MINErrorMessage);
-                }
-            });
-        }
+                });
+            }
+        })
+
     </script>
 </body>
 

+ 1 - 2
src/main/webapp/admin/xlgzz/reportManageXlgzz.html

@@ -106,7 +106,7 @@
 				if (layEvent === 'detail'){ //查看算法
 					showDetail(data);
 				} else if(layEvent === 'downLoad'){
-					window.open("../../XlgzzReportAction/reportDownLoad?reportId=" + data.id);
+					window.open("../../XlgzzReportAction/reportDownLoad?reportId=" + data.id+"&timeType="+timeType+"&reportType="+reportType);
 				} else if(layEvent === 'delete'){
 					layer.confirm('确认删除?', function(index){
 						layer.close(index);
@@ -133,7 +133,6 @@
 		 });
 
 		  function reloadSearch (t) {
-			    console.log("1111111111111111111111111111111111111111111111111")
 				var fileName = $("#fileName").val();
 				var date = $("#date").val();
 				//执行重载

+ 103 - 135
src/main/webapp/admin/xlgzz/reportProduceXlgzz.html

@@ -110,14 +110,12 @@
 				</div>
 				<!--配变过载-->
 				<div class="layui-tab-item">
-
 					<table id="demo2x" lay-filter="test"></table>
 				</div>
+				<!--抢修类工单-->
 				<div class="layui-tab-item">
 					<p  id ="desc3"  class="desc_label"></p>
 					<br>
-					<p  class="desc_label"  style="color: #ff0000;">注:台区停电数据来源于供服系统</p>
-					<br>
 					<table id="demo3" lay-filter="test"></table>
 				</div>
 
@@ -155,7 +153,7 @@
 			$("#dayRange").hide();
 			$("#dateRange").show();
 		}
-		
+
 		var $step;
 		layui.config({
 	        base: '../../plugins/layui/lay/modules/steps/'
@@ -197,7 +195,7 @@
 				}
 			});
 			//时间范围
-			laydate.render({ 
+			laydate.render({
 			  elem : '#timeRange'
 			  ,type : 'time'
 			  ,format : 'HHmmss'
@@ -237,9 +235,9 @@
 				var value = data.value;
 				if (!isEmpty(value)) {
 					var reportTypeId = value.split("_")[0];
-					
+
 					$("#fileName").html(data.elem.selectedOptions[0].text);
-					
+
 					if (!isEmpty(reportTypeId)) {
 						  $.request({
 								action : 'BranchReportTypeAction/fileTypeOfReportType',
@@ -249,7 +247,7 @@
 								success : function(data) {
 									fileType = data.data;
 									setTempVal("fileType", fileType);
-									
+
 									var utilDataInf = data.utilDataInf;
 									if (!isEmpty(utilDataInf)) {
 										$("#utilName").html(utilDataInf.fileName);
@@ -268,12 +266,12 @@
 				    	  });
 					  }
 				}
-			});      
+			});
 		})
-		
+
 		function goStep (step) {
 			var reportInf = $("#reportTypeDiv").find("select option:selected").val();
-			
+
 			var dayRange = $("#dayRange").val();
 			var dateRange = $("#dateRange").val();
 			var timeRange = $("#timeRange").val();
@@ -325,7 +323,7 @@
 	    	  	});
 				return;
 			}
-			
+
 			$step.goStep(step);
 			var stepDiv = $("div[name = 'step']");
 			for (var i = 0; i < stepDiv.length; i ++) {
@@ -336,11 +334,11 @@
 				}
 			}
 		}
-		
+
 		function finish() {
-			deleteTabPageParent(pageId); 
+			deleteTabPageParent(pageId);
 		}
-		
+
 
 		// 报表返回数据
 		var resJsonStr = null;
@@ -383,149 +381,119 @@
 				},
 				success : function(data) {
 					if (data.code == 0) {//查询结果集成功
-
 						//渲染表格
 						$table.render({
 							elem: '#demo1'
 							,limit:100
+							,cellMinWidth: 120
 							,cols: [[ //表头
-								{field: 'DFD10_XGSMC', title: '单位', width:120}
-								,{field: 'DFD10_BZMC', title: '供电所', width:120}
-								,{field: 'DFD10_XLMC', title: '线路名称', width:120}
-								,{field: 'sum', title: '重载时长(h)', width:120}
-								,{field: 'avg', title: '平均负载率(%)', width: 120}
+								{field: 'SEQU',title:'序号',type:'numbers',width:60}
+								,{field: 'DFD10_XGSMC', title: '单位'}
+								,{field: 'DFD10_BZMC', title: '供电所'}
+								,{field: 'DFD10_XLMC', title: '线路名称'}
+								,{field: 'sum', title: '重载时长(h)'}
+								,{field: 'avg', title: '平均负载率(%)'}
 							]],
 							data:data.data.resList.result
 						});
-
-						if (timeType == '00') {// 日报
-							$("#gongjubiao").hide();
-							// $("#reportTable").show();
-							// $element.tabDelete('demo', '22');
-							$table.render({
-								elem: '#demo1x'
-								,limit:100
-								,cols: [[ //表头
-									{field: 'DFD10_XGSMC', title: '单位', width:120}
-									,{field: 'DFD10_BZMC', title: '供电所', width:120}
-									,{field: 'DFD10_XLMC', title: '线路名称', width:120}
-									,{field: 'sum', title: '过载时长(h)', width:120}
-									,{field: 'avg', title: '平均负载率(%)', width: 120}
-								]],
-								data:data.data.resList.result2
-							});
-							$table.render({
-								elem: '#demo2'
-								,limit:100
-								,cols: [[ //表头
-									{field: 'DFD9_UNIT', title: '单位', width:120}
-									,{field: 'DFD9_BZMC', title: '供电所', width:120}
-									,{field: 'DFD9_GBMC', title: '公变名称', width:120}
-									,{field: 'DFD9_ZZSC', title: '重载时长(h)', width:120}
-									,{field: 'avg', title: '平均负载率(%)', width: 120}
-									,{field: 'DFD9_JTYY', title: '原因', width: 120}
-									,{field: 'DFD9_JTJJCS', title: '解决措施', width: 120}
-								]],
-								data:data.data.resList.result4
-							});
-							$table.render({
-								elem: '#demo2x'
-								,limit:100
-								,cols: [[ //表头
-									{field: 'DFD9_UNIT', title: '单位', width:120}
-									,{field: 'DFD9_BZMC', title: '供电所', width:120}
-									,{field: 'DFD9_GBMC', title: '公变名称', width:120}
-									,{field: 'DFD9_GZSC', title: '过载时长(h)', width:120}
-									,{field: 'avg', title: '平均负载率(%)', width: 120}
-									,{field: 'DFD9_JTYY', title: '原因', width: 120}
-									,{field: 'DFD9_JTJJCS', title: '解决措施', width: 120}
-								]],
-								data:data.data.resList.result3
-							});
-							//描述
-							$("#desc1").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr[0]);
-							$("#desc11").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr[1]);
-							$("#desc2").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[0]);
-							$("#desc22").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[1]);
-							goStep(3);
-						} else if (timeType == '02' || timeType == '01') {// 月报 或 周报
-							$("#gongjubiao").hide();
-							// $("#reportTable").show();
-							$table.render({
-								elem: '#demo1x'
-								,limit:100
-								,cols: [[ //表头
-									{field: 'DFD10_XGSMC', title: '单位', width:120}
-									,{field: 'DFD10_BZMC', title: '供电所', width:120}
-									,{field: 'DFD10_XLMC', title: '线路名称', width:120}
-									,{field: 'sum', title: '过载时长(h)', width:120}
-									,{field: 'avg', title: '平均负载率(%)', width: 120}
-								]],
-								data:data.data.resList.result2
-							});
-							$table.render({
-								elem: '#demo2'
-								,limit:100
-								,cols: [[ //表头
-									{field: 'DFD9_UNIT', title: '单位', width:120}
-									,{field: 'DFD9_BZMC', title: '供电所', width:120}
-									,{field: 'DFD9_GBMC', title: '公变名称', width:120}
-									,{field: 'DFD9_ZZSC', title: '重载时长(h)', width:120}
-									,{field: 'avg', title: '平均负载率(%)', width: 120}
-									,{field: 'DFD9_JTYY', title: '原因', width: 120}
-									,{field: 'DFD9_JTJJCS', title: '解决措施', width: 120}
-								]],
-								data:data.data.resList.result4
-							});
-							$table.render({
-								elem: '#demo2x'
-								,limit:100
-								,cols: [[ //表头
-									{field: 'DFD9_UNIT', title: '单位', width:120}
-									,{field: 'DFD9_BZMC', title: '供电所', width:120}
-									,{field: 'DFD9_GBMC', title: '公变名称', width:120}
-									,{field: 'DFD9_GZSC', title: '过载时长(h)', width:120}
-									,{field: 'avg', title: '平均负载率(%)', width: 120}
-									,{field: 'DFD9_JTYY', title: '原因', width: 120}
-									,{field: 'DFD9_JTJJCS', title: '解决措施', width: 120}
-								]],
-								data:data.data.resList.result3
-							});
-							//描述
-							$("#desc1").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr[0]);
-							$("#desc11").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr[1]);
-							$("#desc2").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[0]);
-							$("#desc22").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[1]);
-							goStep(3);
-						}
+						$table.render({
+							elem: '#demo1x'
+							,limit:100
+							,cellMinWidth: 120
+							,cols: [[ //表头
+								{field: 'SEQU',title:'序号',type:'numbers',width:60}
+								,{field: 'DFD10_XGSMC', title: '单位'}
+								,{field: 'DFD10_BZMC', title: '供电所'}
+								,{field: 'DFD10_XLMC', title: '线路名称'}
+								,{field: 'sum', title: '过载时长(h)'}
+								,{field: 'avg', title: '平均负载率(%)'}
+							]],
+							data:data.data.resList.result2
+						});
+						$table.render({
+							elem: '#demo2'
+							,limit:100
+							,cellMinWidth: 120
+							,cols: [[ //表头
+								{field: 'SEQU',title:'序号',type:'numbers',width:60}
+								,{field: 'DFD9_UNIT', title: '单位'}
+								,{field: 'DFD9_BZMC', title: '供电所'}
+								,{field: 'DFD9_GBMC', title: '公变名称'}
+								,{field: 'DFD9_ZZSC', title: '重载时长(h)'}
+								,{field: 'avg', title: '平均负载率(%)'}
+								,{field: 'DFD9_JTYY', title: '原因'}
+								,{field: 'DFD9_JTJJCS', title: '解决措施'}
+							]],
+							data:data.data.resList.result4
+						});
+						$table.render({
+							elem: '#demo2x'
+							,limit:100
+							,cellMinWidth: 120
+							,cols: [[ //表头
+								{field: 'SEQU',title:'序号',type:'numbers',width:60}
+								,{field: 'DFD9_UNIT', title: '单位'}
+								,{field: 'DFD9_BZMC', title: '供电所'}
+								,{field: 'DFD9_GBMC', title: '公变名称'}
+								,{field: 'DFD9_GZSC', title: '过载时长(h)'}
+								,{field: 'avg', title: '平均负载率(%)'}
+								,{field: 'DFD9_JTYY', title: '原因'}
+								,{field: 'DFD9_JTJJCS', title: '解决措施'}
+							]],
+							data:data.data.resList.result3
+						});
 						//抢修类工单报表
 						$table.render({
 							elem: '#demo3'
 							,limit:100
+							,totalRow:true
 							,cols: [[ //表头
-								{field: 'DFD11_GDDW', title: '单位\\分类', width:150,rowspan:2}
-								,{field: 'KHZS', title: '客户总量(户)', width:150,rowspan:2}
-								,{field: 'DDXCSJ', title: '平均到达现场时间(分)', width:150,rowspan:2}
-								,{field: 'GDCLSJ', title: '工单处理平均时长(分)', width:150,rowspan:2}
-								,{field: 'DDXCCSS', title: '到达现场超时数', width:150,rowspan:2}
-								,{field: 'GDCSZS', title: '工单时长超70分钟数', width:150,rowspan:2}
+								{field: 'SEQU',title:'序号',type:'numbers',rowspan:2,width:60,fixed:'left'}
+								,{field: 'DFD11_GDDW', title: '单位\\分类', width:160,rowspan:2,fixed:'left'}
+								,{field: 'KHZS', title: '客户总量(户)', width:160,rowspan:2}
+								,{field: 'DDXCSJ', title: '平均到达现场时间(分)', width:160,rowspan:2}
+								,{field: 'GDCLSJ', title: '工单处理平均时长(分)', width:160,rowspan:2}
+								,{field: 'DDXCCSS', title: '到达现场超时数', width:160,rowspan:2}
+								,{field: 'GDCSZS', title: '工单时长超70分钟数', width:160,rowspan:2}
 								,{field: '', title: '故障类型',colspan:4}
-								,{field: 'YSXJHD', title: '疑似虚假回单', width:150,rowspan:2}
-								,{field: 'GDZS', title: '工单总数', width:150,rowspan:2}
-								,{field: 'WH', title: '万户报修率', width:150,rowspan:2}
+								,{field: 'YSXJHD', title: '疑似虚假回单', width:160,rowspan:2}
+								,{field: 'GDZS', title: '工单总数', width:160,rowspan:2}
+								,{field: 'WH', title: '万户报修率', width:160,rowspan:2}
 							],
 								[
-									{field: 'GZLS-A', title: '客户内部故障', width:150}
-									,{field: 'GZLS-B', title: '低压故障', width:150}
-									,{field: 'GZLS-C', title: '非电力故障', width:150}
-									,{field: 'GZLS-D', title: '电能质量等故障', width:150}
+									{field: 'GZLS-A', title: '客户内部故障', width:160}
+									,{field: 'GZLS-B', title: '低压故障', width:160}
+									,{field: 'GZLS-C', title: '非电力故障', width:160}
+									,{field: 'GZLS-D', title: '电能质量等故障', width:160}
 								]],
 							data:data.data.resList.result5,
 							done:function(res, curr, count){
 								count || this.elem.next('.layui-table-view').find('.layui-table-header').css('display', 'inline-block');
 								count || this.elem.next('.layui-table-view').find('.layui-table-box').css('overflow-x', 'auto');
+								var that = this.elem.next();
+								res.data.forEach(function (item, index) {
+									if (item.DFD11_GDDW === "公司累计") {
+										var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']");
+										tr.css("background-color", "darkgray");
+									}
+								});
 							}
 						});
+						//描述
+						$("#desc1").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr[0]);
+						$("#desc11").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr[1]);
+						$("#desc2").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[0]);
+						$("#desc22").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr2[1]);
+						$("#desc3").html("&nbsp;&nbsp;&nbsp;"+data.data.resList.descStr3);
+
+						if (timeType == '00') {// 日报
+							$("#gongjubiao").hide();
+							// $element.tabDelete('demo', '22');
+						} else if (timeType == '02' || timeType == '01') {// 月报 或 周报
+							$("#gongjubiao").hide();
+
+						}
+						goStep(3);
 			    	} else {
 			    		$.ErrorAlert(res.MINErrorMessage);
 			    	}

+ 19 - 0
src/main/webapp/js/customcomm.js

@@ -0,0 +1,19 @@
+(function(exports,$){
+   function baseUtils(){
+       var self = this;
+       self.formatterleft = function(val){
+            return "<div style='text-align: left'>" + val + "</div>"
+       }
+       self.formatterright = function(val){
+           return "<div style='text-align: right'>" + val + "</div>"
+       }
+       self.formattercenter = function(val){
+           return "<div style='text-align: center'>" + val + "</div>"
+       }
+       //导出至全局变量
+       exports.appData = self;
+   }
+   $(function(){
+      new  baseUtils();
+   });
+})(window,jQuery)