guoshilong
2024-02-27 0bdd1bda41e6fa8436d070b1f4e5b1f19f86d9d8
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/word/service/impl/SjztmdServiceImpl.java
@@ -18,6 +18,7 @@
import com.alibaba.fastjson.parser.Feature;
import com.baomidou.dynamic.datasource.annotation.DS;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.tool.utils.ObjectUtil;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
@@ -37,14 +38,19 @@
@Service
@AllArgsConstructor
@DS("zt")
@Slf4j
public class SjztmdServiceImpl implements ISjztmdService {
   //总计
   private final String RIBAO_SHEET1_TOTAL_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao_sheet1/api?small_start_stag=0&small_end_stag=2&mid_start_stag=0&mid_end_stag=2&big_start_stag=0&big_end_stag=2";
//   private final String RIBAO_SHEET1_TOTAL_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao_sheet1/api?small_start_stag=0&small_end_stag=2&mid_start_stag=0&mid_end_stag=2&big_start_stag=0&big_end_stag=2";
   private final String RIBAO_SHEET1_TOTAL_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao_sheet1/api?small_start_stag=0&mid_start_stag=0&big_start_stag=0";
   private final String RIBAO_SHEET1_OVER_NORM_POOL_STAG = "/services/1234567890ABCDEFGHIJKLMN/ribao/sheet1_over_norm_pool_stag/api?";
   //中大型水库
   private final String RIBAO_SHEET2_ZDX_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao/sheet2_zdx/api?mid_start_stag=0&mid_end_stag=2&big_start_stag=0&big_end_stag=2";
//   private final String RIBAO_SHEET2_ZDX_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao/sheet2_zdx/api?mid_start_stag=0&mid_end_stag=2&big_start_stag=0&big_end_stag=2";
   private final String RIBAO_SHEET2_ZDX_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao/sheet2_zdx/api?mid_start_stag=0&big_start_stag=0";
   //超汛明细
   private final String RIBAO_SHEET3_OVER_STAG_LIST_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao/sheet3_over_stag_list/api?small_start_stag=0&small_end_stag=2&mid_start_stag=0&mid_end_stag=2&big_start_stag=0&big_end_stag=2";
//   private final String RIBAO_SHEET3_OVER_STAG_LIST_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao/sheet3_over_stag_list/api?small_start_stag=0&small_end_stag=2&mid_start_stag=0&mid_end_stag=2&big_start_stag=0&big_end_stag=2";
   private final String RIBAO_SHEET3_OVER_STAG_LIST_URL = "/services/1234567890ABCDEFGHIJKLMN/ribao/sheet3_over_stag_list/api?small_start_stag=0&mid_start_stag=0&big_start_stag=0";
   //省直管
   private final String SZ_INFO = "/services/1234567890ABCDEFGHIJKLMN/ribao/shengzh_new_rz/api";
@@ -150,7 +156,7 @@
      tableMap.put("engGrad", tbAttResBase.getEngGrad());
      tableMap.put("longitude", tbAttResBase.getLgtd());
      tableMap.put("latitude", tbAttResBase.getLttd());
      tableMap.put("elevationSystem", tbAttResBase.getElevationSystem().replace(",","").replace("其它",""));
      tableMap.put("elevationSystem",tbAttResBase.getElevationSystem()==null?"": tbAttResBase.getElevationSystem().replace(",","").replace("其它",""));
      tableMap.put("region", tbAttResBase.getBuildAddress());
      tableMap.put("basName", BasCodeEnum.find(tbAttResBase.getBasCode()).getLabel());
      tableMap.put("locRvName", tbAttResBase.getLocRvName());
@@ -161,8 +167,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 +183,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 +308,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 +360,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 +428,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 +467,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 +482,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 +521,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 +580,10 @@
      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","三类坝"));
      return tableMap;
@@ -570,32 +591,54 @@
   @Override
   public List<TotalInfo> getTotalInfo() {
      JSONObject ztData = this.getZtData(null, RIBAO_SHEET1_TOTAL_URL);
   public List<TotalInfo> getTotalInfo(String isShow) {
      JSONObject ztData = this.getZtData("&is_show="+isShow, RIBAO_SHEET1_TOTAL_URL);
      JSONArray data = ztData.getJSONArray("data");
      List<TotalInfo> list = data.toJavaList(TotalInfo.class);
      return list;
   }
   @Override
   public List<DzkInfo> getDzkInfo() {
      JSONObject ztData = this.getZtData(null, RIBAO_SHEET2_ZDX_URL);
   public List<TotalInfo> getTotalOverInfo(String isShow, HashMap<String, String> map) {
      String params = "&is_show=" + isShow;
      if (map != null){
         for (Map.Entry<String, String> entry : map.entrySet()){
            String key=entry.getKey();
            String vlaue = entry.getValue();
            String p = StringUtil.format("&{}={}",key,vlaue);
            params +=p;
         }
      }
      JSONObject ztData = this.getZtData(params, RIBAO_SHEET1_OVER_NORM_POOL_STAG);
      JSONArray data = ztData.getJSONArray("data");
      List<TotalInfo> list = data.toJavaList(TotalInfo.class);
      return list;
   }
   @Override
   public List<DzkInfo> getDzkInfo(String isShow) {
      JSONObject ztData = this.getZtData("&is_show="+isShow, RIBAO_SHEET2_ZDX_URL);
      JSONArray data = ztData.getJSONArray("data");
      List<DzkInfo> list = data.toJavaList(DzkInfo.class);
      return list;
   }
   @Override
   public List<OverDetail> getOverDetailInfo() {
      JSONObject ztData = this.getZtData(null, RIBAO_SHEET3_OVER_STAG_LIST_URL);
   public List<OverDetail> getOverDetailInfo(String isShow) {
      JSONObject ztData = this.getZtData("&is_show="+isShow, RIBAO_SHEET3_OVER_STAG_LIST_URL);
      JSONArray data = ztData.getJSONArray("data");
      List<OverDetail> list = data.toJavaList(OverDetail.class);
      return list;
   }
   @Override
   public List<SzInfo> getSzInfo() {
      JSONObject ztData = this.getZtData(null, SZ_INFO);
   public List<SzInfo> getSzInfo(String isShow) {
      JSONObject ztData = this.getZtData("?is_show="+isShow, SZ_INFO);
      JSONArray data = ztData.getJSONArray("data");
      List<SzInfo> list = data.toJavaList(SzInfo.class);
      return list;
@@ -1060,34 +1103,38 @@
      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;
   }
@@ -1100,14 +1147,16 @@
      // 获取环境
      String activeProfile = SpringContextUtil.getActiveProfile();
      if (activeProfile.equals("dev")) {
         url = ZtApiUrlConstant.url_prefix_dev + url;
         url = ZtApiUrlConstant.url_prefix_dev + url + params;
      }
      if (activeProfile.equals("prod")) {
         url = ZtApiUrlConstant.url_prefix_prod + url;
         url = ZtApiUrlConstant.url_prefix_prod + url + params;
      }
      if (activeProfile.equals("test")) {
         url = ZtApiUrlConstant.url_prefix_test + url;
         url = ZtApiUrlConstant.url_prefix_test + url + params;
      }
      log.info("请求url地址:{}", url);
      //设置请求头
      HttpHeaders headers = new HttpHeaders();
      headers.add(ZtConfigConstant.header_key, ZtConfigConstant.header_value);