From cbe5c665174e41fb5f0f9660c8914c26848746fb Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Mon, 11 Dec 2023 18:23:22 +0800
Subject: [PATCH] 资料整编导出优化

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/word/service/impl/SjztmdServiceImpl.java |  222 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 120 insertions(+), 102 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/word/service/impl/SjztmdServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/word/service/impl/SjztmdServiceImpl.java
index 8d32a43..687462e 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/word/service/impl/SjztmdServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/word/service/impl/SjztmdServiceImpl.java
@@ -161,8 +161,8 @@
 		tableMap.put("waterStorageTm", wst);
 
 
-		tableMap.put("reinforceTm", tbAttResSafetyMonitor.getReinforceTm() != null? new SimpleDateFormat("YYYY年M月dd日").format(tbAttResSafetyMonitor.getReinforceTm()) : "");
-		tableMap.put("completionTime", tbAttResSafetyMonitor.getCompletionTime() != null? new SimpleDateFormat("YYYY年M月dd日").format(tbAttResSafetyMonitor.getCompletionTime()) : "");
+		tableMap.put("reinforceTm", tbAttResSafetyMonitor == null ? "":tbAttResSafetyMonitor.getReinforceTm() != null? new SimpleDateFormat("YYYY年M月dd日").format(tbAttResSafetyMonitor.getReinforceTm()) : "");
+		tableMap.put("completionTime", tbAttResSafetyMonitor == null ? "":tbAttResSafetyMonitor.getCompletionTime() != null? new SimpleDateFormat("YYYY年M月dd日").format(tbAttResSafetyMonitor.getCompletionTime()) : "");
 
 		String resFunc = tbAttResBase.getResFunc();
 		if (StringUtil.isNotBlank(resFunc)) {
@@ -177,51 +177,51 @@
 		}
 		tableMap.put("resFunc", resFunc);
 		//水文特征
-		tableMap.put("conArea", tbAttResStagChar.getConArea());
-		tableMap.put("moyearRainAvg", tbAttResStagChar.getMoyearRainAvg());
-		tableMap.put("moyearFlAvg", tbAttResStagChar.getMoyearFlAvg());
-		tableMap.put("downWacoSafeDisc", tbAttResStagChar.getDownWacoSafeDisc());
-		tableMap.put("desFlSta", tbAttResStagChar.getDesFlSta());
-		tableMap.put("desFlFlow", tbAttResStagChar.getDesFlFlow());
-		tableMap.put("desFl1dayCap", tbAttResStagChar.getDesFl1dayCap());
-		tableMap.put("desFl3dayCap", tbAttResStagChar.getDesFl3dayCap());
-		tableMap.put("checFlSta", tbAttResStagChar.getChecFlSta());
-		tableMap.put("checFlFlow", tbAttResStagChar.getChecFlFlow());
-		tableMap.put("checFl1dayCap", tbAttResStagChar.getChecFl1dayCap());
-		tableMap.put("checFl3dayCap", tbAttResStagChar.getChecFl3dayCap());
+		tableMap.put("conArea", tbAttResStagChar==null?"":tbAttResStagChar.getConArea());
+		tableMap.put("moyearRainAvg", tbAttResStagChar==null?"":tbAttResStagChar.getMoyearRainAvg());
+		tableMap.put("moyearFlAvg", tbAttResStagChar==null?"":tbAttResStagChar.getMoyearFlAvg());
+		tableMap.put("downWacoSafeDisc", tbAttResStagChar==null?"":tbAttResStagChar.getDownWacoSafeDisc());
+		tableMap.put("desFlSta", tbAttResStagChar==null?"":tbAttResStagChar.getDesFlSta());
+		tableMap.put("desFlFlow", tbAttResStagChar==null?"":tbAttResStagChar.getDesFlFlow());
+		tableMap.put("desFl1dayCap", tbAttResStagChar==null?"":tbAttResStagChar.getDesFl1dayCap());
+		tableMap.put("desFl3dayCap", tbAttResStagChar==null?"":tbAttResStagChar.getDesFl3dayCap());
+		tableMap.put("checFlSta", tbAttResStagChar==null?"":tbAttResStagChar.getChecFlSta());
+		tableMap.put("checFlFlow", tbAttResStagChar==null?"":tbAttResStagChar.getChecFlFlow());
+		tableMap.put("checFl1dayCap", tbAttResStagChar==null?"":tbAttResStagChar.getChecFl1dayCap());
+		tableMap.put("checFl3dayCap", tbAttResStagChar==null?"":tbAttResStagChar.getChecFl3dayCap());
 
 		//水库特征
-		tableMap.put("adjustProp", AdjustPropEnum.find(tbAttResStagChar.getAdjustProp()).getLabel());
-		tableMap.put("checFlStag", tbAttResStagChar.getChecFlStag());
-		tableMap.put("totalCap", tbAttResStagChar.getTotalCap());
-		tableMap.put("desFlStag", tbAttResStagChar.getDesFlStag());
-		tableMap.put("flprCap", tbAttResStagChar.getFlprCap());
-		tableMap.put("flConTopStag", tbAttResStagChar.getFlConTopStag());
-		tableMap.put("flSortCap", tbAttResStagChar.getFlStorCap());
-		tableMap.put("corNormStag", tbAttResStagChar.getCorNormStag());
-		tableMap.put("adjustStorCap", tbAttResStagChar.getAdjustStorCap());
-		tableMap.put("deadStag", tbAttResStagChar.getDeadStag());
-		tableMap.put("deadCap", tbAttResStagChar.getDeadCap());
-		tableMap.put("beforeFloodStag", tbAttResStagChar.getBeforeFloodStag());
-		tableMap.put("midFloodStag", tbAttResStagChar.getMidFloodStag());
-		tableMap.put("afterFloodStag", tbAttResStagChar.getAfterFloodStag());
+		tableMap.put("adjustProp", tbAttResStagChar==null?"":AdjustPropEnum.find(tbAttResStagChar.getAdjustProp()).getLabel());
+		tableMap.put("checFlStag", tbAttResStagChar==null?"":tbAttResStagChar.getChecFlStag());
+		tableMap.put("totalCap", tbAttResStagChar==null?"":tbAttResStagChar.getTotalCap());
+		tableMap.put("desFlStag", tbAttResStagChar==null?"":tbAttResStagChar.getDesFlStag());
+		tableMap.put("flprCap", tbAttResStagChar==null?"":tbAttResStagChar.getFlprCap());
+		tableMap.put("flConTopStag", tbAttResStagChar==null?"":tbAttResStagChar.getFlConTopStag());
+		tableMap.put("flSortCap", tbAttResStagChar==null?"":tbAttResStagChar.getFlStorCap());
+		tableMap.put("corNormStag", tbAttResStagChar==null?"":tbAttResStagChar.getCorNormStag());
+		tableMap.put("adjustStorCap", tbAttResStagChar==null?"":tbAttResStagChar.getAdjustStorCap());
+		tableMap.put("deadStag", tbAttResStagChar==null?"":tbAttResStagChar.getDeadStag());
+		tableMap.put("deadCap", tbAttResStagChar==null?"":tbAttResStagChar.getDeadCap());
+		tableMap.put("beforeFloodStag", tbAttResStagChar==null?"":tbAttResStagChar.getBeforeFloodStag());
+		tableMap.put("midFloodStag", tbAttResStagChar==null?"":tbAttResStagChar.getMidFloodStag());
+		tableMap.put("afterFloodStag", tbAttResStagChar==null?"":tbAttResStagChar.getAfterFloodStag());
 
 		//new SimpleDateFormat("yyyy年MM月").format(tbAttResBase.getStartTime());
 
-		String bfs = tbAttResStagChar.getBeforeFloodStart() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getBeforeFloodStart()) : "";
-		String bfe = tbAttResStagChar.getBeforeFloodEnd() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getBeforeFloodEnd()) : "";
-		String mfs = tbAttResStagChar.getMidFloodStart() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getMidFloodStart()) : "";
-		String mfe = tbAttResStagChar.getMidFloodEnd() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getMidFloodEnd()) : "";
-		String afs = tbAttResStagChar.getAfterFloodStart() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getAfterFloodStart()) : "";
-		String afe = tbAttResStagChar.getAfterFloodEnd() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getAfterFloodEnd()) : "";
+		String bfs = tbAttResStagChar==null?"":tbAttResStagChar.getBeforeFloodStart() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getBeforeFloodStart()) : "";
+		String bfe = tbAttResStagChar==null?"":tbAttResStagChar.getBeforeFloodEnd() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getBeforeFloodEnd()) : "";
+		String mfs = tbAttResStagChar==null?"":tbAttResStagChar.getMidFloodStart() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getMidFloodStart()) : "";
+		String mfe = tbAttResStagChar==null?"":tbAttResStagChar.getMidFloodEnd() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getMidFloodEnd()) : "";
+		String afs = tbAttResStagChar==null?"":tbAttResStagChar.getAfterFloodStart() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getAfterFloodStart()) : "";
+		String afe = tbAttResStagChar==null?"":tbAttResStagChar.getAfterFloodEnd() != null ? new SimpleDateFormat("M月dd日").format(tbAttResStagChar.getAfterFloodEnd()) : "";
 		tableMap.put("beforeFloodStart", bfs);
 		tableMap.put("beforeFloodEnd", bfe);
 		tableMap.put("midFloodStart", mfs);
 		tableMap.put("midFloodEnd", mfe);
 		tableMap.put("afterFloodStart", afs);
 		tableMap.put("afterFloodEnd", afe);
-		tableMap.put("desFloodFlow", tbAttResStagChar.getDesFloodFlowMax());
-		tableMap.put("checFloodFlowMax", tbAttResStagChar.getChecFloodFlowMax());
+		tableMap.put("desFloodFlow", tbAttResStagChar==null?"":tbAttResStagChar.getDesFloodFlowMax());
+		tableMap.put("checFloodFlowMax", tbAttResStagChar==null?"":tbAttResStagChar.getChecFloodFlowMax());
 
 		String mainDamType = "";
 		String mainDamMainFoundation = "";
@@ -302,7 +302,7 @@
 		String disEnergyType = "";
 		String norOc = "";
 
-		if (tbAttResRsbNorspiList != null && tbAttResRsbNorspiList.size() > 0 && tbAttResRsbNorspiList.get(0).getNum() > 0) {
+		if (tbAttResRsbNorspiList != null && tbAttResRsbNorspiList.size() > 0 && tbAttResRsbNorspiList.get(0).getNum() != null && tbAttResRsbNorspiList.get(0).getNum() > 0) {
 			TbAttResRsbNorspi tbAttResRsbNorspi = tbAttResRsbNorspiList.get(0);
 
 			norSpillwayType = SpillwayTypeEnum.find(tbAttResRsbNorspi.getSpillwayType()).getLabel();
@@ -354,7 +354,7 @@
 		String enableStandar = "";
 		String checkingFloodDischarge = "";
 
-		if (tbAttResRsbVerspiList != null && tbAttResRsbVerspiList.size() > 0 && tbAttResRsbVerspiList.get(0).getNum() > 0) {
+		if (tbAttResRsbVerspiList != null && tbAttResRsbVerspiList.size() > 0 && tbAttResRsbVerspiList.get(0).getNum() !=null && tbAttResRsbVerspiList.get(0).getNum() > 0) {
 			TbAttResRsbVerspi tbAttResRsbVerspi = tbAttResRsbVerspiList.get(0);
 
 			verSpillwayType = VerSpillwayTypeEnum.find(tbAttResRsbVerspi.getSpillwayType()).getLabel();
@@ -422,7 +422,16 @@
 
 		if (tbAttResWaterDeliveryList != null && tbAttResWaterDeliveryList.size() > 0 && tbAttResWaterDeliveryList.get(0).getNum() > 0) {
 			//取设计流量大的进行描述
-			List<TbAttResWaterDelivery> sortList = tbAttResWaterDeliveryList.stream().sorted((a, b) -> b.getDesignFlow().compareTo(a.getDesignFlow())).collect(Collectors.toList());
+//			List<TbAttResWaterDelivery> sortList = tbAttResWaterDeliveryList.stream().sorted((a, b) -> b.getDesignFlow().compareTo(a.getDesignFlow())).collect(Collectors.toList());
+			List<TbAttResWaterDelivery> sortList =
+				tbAttResWaterDeliveryList.stream()
+					.sorted((a, b) -> {
+						Optional<Double> flowA = Optional.ofNullable(a.getDesignFlow());
+						Optional<Double> flowB = Optional.ofNullable(b.getDesignFlow());
+						return flowA.isPresent() && flowB.isPresent() ? flowA.get().compareTo(flowB.get()) : (flowA.isPresent() ? 1 : (flowB.isPresent() ? -1 : 0));
+					})
+					.collect(Collectors.toList());
+
 			TbAttResWaterDelivery tbAttResWaterDelivery = sortList.get(0);
 
 			aqueductType = convertType(tbAttResWaterDelivery.getAqueductType(), "AqueductTypeEnum");
@@ -452,7 +461,7 @@
 		String installedCapacity = "";
 		String yearAvgHour = "";
 		//当电站列表不为空 且 电站列表数量大于0 且num大于0
-		if (tbAttResPowerStationList != null && tbAttResPowerStationList.size() > 0 && tbAttResPowerStationList.get(0).getNum() > 0) {
+		if (tbAttResPowerStationList != null && tbAttResPowerStationList.size() > 0 && tbAttResPowerStationList.get(0).getNum()!=null && tbAttResPowerStationList.get(0).getNum() > 0) {
 			TbAttResPowerStation tbAttResPowerStation = tbAttResPowerStationList.get(0);
 
 			//取第一个电站
@@ -467,30 +476,34 @@
 		//水库效益
 		List<String> protectList = new ArrayList<>();
 
-		if (!tbAttResEngBene.getCity().equals("无") ) {
+		if (null != tbAttResEngBene) {
+
+		}
+
+		if (tbAttResEngBene!=null &&!tbAttResEngBene.getCity().equals("无") ) {
 			protectList.add(tbAttResEngBene.getCity());
 
 		}
-		if (!tbAttResEngBene.getTown().equals("无")) {
+		if (tbAttResEngBene!=null &&!tbAttResEngBene.getTown().equals("无")) {
 			protectList.add(tbAttResEngBene.getTown());
 		}
-		if (!tbAttResEngBene.getRailway().equals("无")) {
+		if (tbAttResEngBene!=null &&!tbAttResEngBene.getRailway().equals("无")) {
 			protectList.add(tbAttResEngBene.getRailway());
 		}
 
-		if (!tbAttResEngBene.getHighway().equals("无")) {
+		if (tbAttResEngBene!=null &&!tbAttResEngBene.getHighway().equals("无")) {
 			protectList.add(tbAttResEngBene.getHighway());
 		}
 
-		if (!tbAttResEngBene.getImportCommunication().equals("无")) {
+		if (tbAttResEngBene!=null &&!tbAttResEngBene.getImportCommunication().equals("无")) {
 			protectList.add(tbAttResEngBene.getImportCommunication());
 		}
 
-		if (!tbAttResEngBene.getImportFactory().equals("无")) {
+		if (tbAttResEngBene!=null &&!tbAttResEngBene.getImportFactory().equals("无")) {
 			protectList.add(tbAttResEngBene.getImportFactory());
 		}
 
-		if (!tbAttResEngBene.getImportOtherFac().equals("无")) {
+		if (tbAttResEngBene!=null &&!tbAttResEngBene.getImportOtherFac().equals("无")) {
 			protectList.add(tbAttResEngBene.getImportOtherFac());
 		}
 		//只留前四个
@@ -502,50 +515,51 @@
 			tableMap.put("protect", String.join("、", protectList));
 		}
 		double person = 0;
-		if (tbAttResEngBene.getFlControlPerson() != null) {
+		if (tbAttResEngBene !=null && tbAttResEngBene.getFlControlPerson() != null) {
 			person = tbAttResEngBene.getFlControlPerson() / 10000.0;
+			tableMap.put("flControlPerson", String.format("%.2f", person));
+		} else {
+			tableMap.put("flControlPerson", "");
 		}
-
-		tableMap.put("flControlPerson", String.format("%.2f", person));
-		tableMap.put("flControlLand", String.format("%.2f", tbAttResEngBene.getFlControlLand() / 10000));
-		tableMap.put("irrObject", tbAttResEngBene.getIrrObject());
-		tableMap.put("moyearIrrAvg", tbAttResEngBene.getMoyearIrrAvg());
-		tableMap.put("desIrrArea", String.format("%.2f", tbAttResEngBene.getDesIrrArea() / 10000));
-		tableMap.put("checIrrArea", String.format("%.2f", tbAttResEngBene.getChecIrrArea() / 10000));
-		tableMap.put("supplyObject", tbAttResEngBene.getSupplyObject());
+		tableMap.put("flControlLand", tbAttResEngBene==null?"":tbAttResEngBene.getFlControlLand()==null?"":String.format("%.2f", tbAttResEngBene.getFlControlLand() / 10000));
+		tableMap.put("irrObject", tbAttResEngBene==null?"":tbAttResEngBene.getIrrObject()==null?"":tbAttResEngBene.getIrrObject());
+		tableMap.put("moyearIrrAvg", tbAttResEngBene==null?"":tbAttResEngBene.getMoyearIrrAvg() == null?"":tbAttResEngBene.getMoyearIrrAvg());
+		tableMap.put("desIrrArea", tbAttResEngBene==null?"":tbAttResEngBene.getDesIrrArea() == null ?"":String.format("%.2f", tbAttResEngBene.getDesIrrArea() / 10000));
+		tableMap.put("checIrrArea", tbAttResEngBene==null?"":tbAttResEngBene.getChecIrrArea()==null?"":String.format("%.2f", tbAttResEngBene.getChecIrrArea() / 10000));
+		tableMap.put("supplyObject", tbAttResEngBene==null?"":tbAttResEngBene.getSupplyObject()==null?"":tbAttResEngBene.getSupplyObject());
 
 		Double sup = 0.0;
 		String supS = "";
-		if (StringUtil.isNotBlank(tbAttResEngBene.getSupplyPopulation())) {
+		if (tbAttResEngBene!=null && StringUtil.isNotBlank(tbAttResEngBene.getSupplyPopulation())) {
 			sup = Double.parseDouble(tbAttResEngBene.getSupplyPopulation()) / 10000;
 			supS = String.format("%.2f", sup);
 		}
 
 
 		tableMap.put("supplyPopulation", supS);
-		tableMap.put("moyearSupplyAvg", tbAttResEngBene.getMoyearSupplyAvg());
-		tableMap.put("moyearPowerAvg", tbAttResEngBene.getMoyearPowerAvg());
-		tableMap.put("ecologicalFlow", tbAttResEngBene.getEcologicalFlow());
+		tableMap.put("moyearSupplyAvg", tbAttResEngBene==null?"":tbAttResEngBene.getMoyearSupplyAvg()==null?"":tbAttResEngBene.getMoyearSupplyAvg());
+		tableMap.put("moyearPowerAvg", tbAttResEngBene==null?"":tbAttResEngBene.getMoyearPowerAvg()==null?"":tbAttResEngBene.getMoyearPowerAvg());
+		tableMap.put("ecologicalFlow", tbAttResEngBene==null?"":tbAttResEngBene.getEcologicalFlow()==null?"":tbAttResEngBene.getEcologicalFlow());
 
 		//工程管理
-		tableMap.put("munitName", tbAttResMgrSysB.getMUnitName());
-		tableMap.put("cunitName", tbAttResMgrSysB.getCUnitName());
-		tableMap.put("mUnitNature", tbAttResMgrSysB.getMUnitNature());
-		tableMap.put("mUnitPersonNumber", tbAttResMgrSysB.getMUnitPersonNumber());
-		tableMap.put("personEconomicSource", tbAttResMgrSysB.getPersonEconomicSource());
-		tableMap.put("maintenanceEconomicSource", tbAttResMgrSysB.getMaintenanceEconomicSource());
+		tableMap.put("munitName", tbAttResMgrSysB==null?"":tbAttResMgrSysB.getMUnitName()==null?"":tbAttResMgrSysB.getMUnitName());
+		tableMap.put("cunitName", tbAttResMgrSysB==null?"":tbAttResMgrSysB.getCUnitName()==null?"":tbAttResMgrSysB.getCUnitName());
+		tableMap.put("mUnitNature", tbAttResMgrSysB==null?"":tbAttResMgrSysB.getMUnitNature()==null?"":tbAttResMgrSysB.getMUnitNature());
+		tableMap.put("mUnitPersonNumber", tbAttResMgrSysB==null?"":tbAttResMgrSysB.getMUnitPersonNumber()==null?"":tbAttResMgrSysB.getMUnitPersonNumber());
+		tableMap.put("personEconomicSource", tbAttResMgrSysB==null?"":tbAttResMgrSysB.getPersonEconomicSource()==null?"":tbAttResMgrSysB.getPersonEconomicSource());
+		tableMap.put("maintenanceEconomicSource", tbAttResMgrSysB==null?"":tbAttResMgrSysB.getMaintenanceEconomicSource()==null?"":tbAttResMgrSysB.getMaintenanceEconomicSource());
 
 		//工程运用
-		tableMap.put("resMaxStag", tbAttResProjectUtilize.getResMaxStag());
-		tableMap.put("resMinStag", tbAttResProjectUtilize.getResMinStag());
-		tableMap.put("resMaxInFlow", tbAttResProjectUtilize.getResMaxInFlow());
-		tableMap.put("resMaxOutFlow", tbAttResProjectUtilize.getResMaxOutFlow());
+		tableMap.put("resMaxStag", tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMaxStag());
+		tableMap.put("resMinStag", tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMinStag());
+		tableMap.put("resMaxInFlow", tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMaxInFlow());
+		tableMap.put("resMaxOutFlow", tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMaxOutFlow());
 		//new SimpleDateFormat("yyyy-MM-dd").format(tbAttResProjectUtilize.getResMaxStagDate())
 
-		String resMaxStagDate = tbAttResProjectUtilize.getResMaxStagDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMaxStagDate()) : "";
-		String resMinStagDate = tbAttResProjectUtilize.getResMinStagDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMinStagDate()) : "";
-		String resMaxInFlowDate = tbAttResProjectUtilize.getResMaxInFlowDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMaxInFlowDate()) : "";
-		String resMaxOutFlowDate = tbAttResProjectUtilize.getResMaxOutFlowDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMaxOutFlowDate()) : "";
+		String resMaxStagDate = tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMaxStagDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMaxStagDate()) : "";
+		String resMinStagDate = tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMinStagDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMinStagDate()) : "";
+		String resMaxInFlowDate = tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMaxInFlowDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMaxInFlowDate()) : "";
+		String resMaxOutFlowDate = tbAttResProjectUtilize == null? "" :tbAttResProjectUtilize.getResMaxOutFlowDate() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResProjectUtilize.getResMaxOutFlowDate()) : "";
 		tableMap.put("resMaxStagDate", resMaxStagDate);
 		tableMap.put("resMinStagDate", resMinStagDate);
 		tableMap.put("resMaxInFlowDate", resMaxInFlowDate);
@@ -560,9 +574,9 @@
 		tableMap.put("isWmst", InfoBuildingEnum.find(tbAttResInformationProject.getIsWmst()).getLabel());
 		tableMap.put("isTermites", InfoBuildingEnum.find(tbAttResInformationProject.getIsTermites()).getLabel());
 		//
-		String tm = tbAttResSafetyMonitor.getSafetyAppraisalTime() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResSafetyMonitor.getSafetyAppraisalTime()) : "";
+		String tm = tbAttResSafetyMonitor==null?"":tbAttResSafetyMonitor.getSafetyAppraisalTime() != null ? new SimpleDateFormat("yyyy年MM月dd日").format(tbAttResSafetyMonitor.getSafetyAppraisalTime()) : "";
 		tableMap.put("safetyAppraisalTime", tm);
-		tableMap.put("safetyAppraisalResult", tbAttResSafetyMonitor.getSafetyAppraisalResult()
+		tableMap.put("safetyAppraisalResult", tbAttResSafetyMonitor==null?"":tbAttResSafetyMonitor.getSafetyAppraisalResult()==null?"":tbAttResSafetyMonitor.getSafetyAppraisalResult()
 			.replace("1","一类坝").replace("2","二类坝").replace("3","三类坝"));
 
 
@@ -1061,35 +1075,39 @@
 		String text = "";
 
 		List<String> typeList = Arrays.asList(type.split(","));
-		String typeKey = typeList.get(0);
-		String explain = "";
-		if (typeList.size() > 1) {
-			explain = typeList.get(1);
-		}
-
-		//key值表示其他
-		if (typeKey.equals("9") || typeKey.equals("其他")) {
-			text = explain;
-		} else {
-			switch (enumName) {
-				case "AqueductTypeEnum":
-					text = AqueductTypeEnum.find(typeKey).getLabel();
-					break;
-				case "RsbWorkingGateEnum":
-					text = RsbWorkingGateEnum.find(typeKey).getLabel();
-					break;
-				case "OcTypeEnum":
-					text = OcTypeEnum.find(typeKey).getLabel();
-					break;
-				case "SpillwayHoleType":
-					text = typeKey;
-					break;
-				case "Explain":
-					text = typeKey;
-					break;
+		if (typeList.size() >0) {
+			String typeKey = typeList.get(0);
+			String explain = "";
+			if (typeList.size() > 1) {
+				explain = typeList.get(1);
+			}
+			//key值表示其他
+			if (typeKey.equals("9") || typeKey.equals("其他")) {
+				text = explain;
+			} else {
+				switch (enumName) {
+					case "AqueductTypeEnum":
+						text = AqueductTypeEnum.find(typeKey).getLabel();
+						break;
+					case "RsbWorkingGateEnum":
+						text = RsbWorkingGateEnum.find(typeKey).getLabel();
+						break;
+					case "OcTypeEnum":
+						text = OcTypeEnum.find(typeKey).getLabel();
+						break;
+					case "SpillwayHoleType":
+						text = typeKey;
+						break;
+					case "Explain":
+						text = typeKey;
+						break;
+				}
 			}
 		}
 
+
+
+
 		return text;
 	}
 

--
Gitblit v1.9.3