| | |
| | | } |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | if (mountainrainsCVOS.get(i).getSoilval() > 30) { |
| | | int Max = mountainrainService.Max(mountainrainsCVOS.get(i).getDrp1(), mountainrainsCVOS.get(i).getDrp3(), |
| | | mountainrainsCVOS.get(i).getGohours(), mountainrainsCVOS.get(i).getGthours()); |
| | | // int Max = mountainrainService.Max(mountainrainsCVOS.get(i).getDrp1(), mountainrainsCVOS.get(i).getDrp3(), |
| | | // mountainrainsCVOS.get(i).getGohours(), mountainrainsCVOS.get(i).getGthours()); |
| | | // map.put("List", mountainrainsCVOS.get(i)); |
| | | // map.put("Max", Max); |
| | | // lists.add(map); |
| | | //0.8雨量湿度 |
| | | if (mountainrainsCVOS.get(i).getDrp1() > mountainrainsCVOS.get(i).getGohours()) { |
| | | map.put("List", mountainrainsCVOS.get(i)); |
| | | map.put("Max", Max); |
| | | map.put("flage1", "true"); |
| | | map.put("flage3", "false"); |
| | | map.put("status", 2); |
| | | lists.add(map); |
| | | } else if (mountainrainsCVOS.get(i).getDrp3() > mountainrainsCVOS.get(i).getGthours()) { |
| | | map.put("List", mountainrainsCVOS.get(i)); |
| | | map.put("flage1", "false"); |
| | | map.put("flage3", "true"); |
| | | map.put("status", 2); |
| | | lists.add(map); |
| | | } else { |
| | | map.put("List", mountainrainsCVOS.get(i)); |
| | | map.put("flage1", "false"); |
| | | map.put("flage3", "false"); |
| | | map.put("status", 2); |
| | | lists.add(map); |
| | | } |
| | | } else { |
| | | //0.5雨量湿度 |
| | | int Max = mountainrainService.Max(mountainrainsCVOS.get(i).getDrp1(), mountainrainsCVOS.get(i).getDrp3(), |
| | | mountainrainsCVOS.get(i).getGohour(), mountainrainsCVOS.get(i).getGthour()); |
| | | // map.put("List", mountainrainsCVOS.get(i)); |
| | | // map.put("Max", Max); |
| | | // lists.add(map); |
| | | if (mountainrainsCVOS.get(i).getDrp1() > mountainrainsCVOS.get(i).getGohour()) { |
| | | map.put("List", mountainrainsCVOS.get(i)); |
| | | map.put("Max", Max); |
| | | map.put("flage1", "true"); |
| | | map.put("flage3", "false"); |
| | | map.put("status", 1); |
| | | lists.add(map); |
| | | } else if (mountainrainsCVOS.get(i).getDrp3() > mountainrainsCVOS.get(i).getGthour()) { |
| | | map.put("List", mountainrainsCVOS.get(i)); |
| | | map.put("flage1", "false"); |
| | | map.put("flage3", "true"); |
| | | map.put("status", 1); |
| | | lists.add(map); |
| | | } else { |
| | | map.put("List", mountainrainsCVOS.get(i)); |
| | | map.put("flage1", "false"); |
| | | map.put("flage3", "false"); |
| | | map.put("status", 1); |
| | | lists.add(map); |
| | | } |
| | | } |
| | | |
| | | } |
| | |
| | | String dateEnd3 = dateEnds3; |
| | | |
| | | String s = regionWeightService.selectCode(); |
| | | //String s = "62334490"; |
| | | String[] split = s.split(","); |
| | | String strArrays = ""; |
| | | for (int i = 0; i < split.length; i++) { |
| | | strArrays += "'" + split[i] + "',"; |
| | | } |
| | | String code = strArrays.substring(0, strArrays.length() - 1); |
| | | List<Map<String, Integer>> list = mountainrainService.selecMone(times, dateEnd1, dateEnd2, dateEnd3, code); |
| | | List<Map<String, Object>> list = mountainrainService.selecMone(times, dateEnd1, dateEnd2, dateEnd3, code); |
| | | List<Map<String, Object>> lists = new ArrayList<>(); |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | for (int i = 0; i < list.size(); i++) { |
| | | if (list.get(i).get("drp1") >= 30) { |
| | | BigDecimal w1 = (BigDecimal) list.get(i).get("drp1"); |
| | | double drp1 = w1.doubleValue(); |
| | | BigDecimal w2 = (BigDecimal) list.get(i).get("drp2"); |
| | | double drp2 = w2.doubleValue(); |
| | | BigDecimal w3 = (BigDecimal) list.get(i).get("drp3"); |
| | | double drp3 = w3.doubleValue(); |
| | | if (drp1 > 30) { |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | map.put("List", list.get(i)); |
| | | map.put("Max", 1); |
| | | map.put("flage1", "true"); |
| | | map.put("flage2", "false"); |
| | | map.put("flage3", "false"); |
| | | lists.add(map); |
| | | } |
| | | if (list.get(i).get("drp2") >= 50) { |
| | | if (drp2 > 50) { |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | map.put("List", list.get(i)); |
| | | map.put("Max", 2); |
| | | map.put("flage1", "false"); |
| | | map.put("flage2", "true"); |
| | | map.put("flage3", "false"); |
| | | lists.add(map); |
| | | } |
| | | if (list.get(i).get("drp3") >= 80) { |
| | | if (drp3 > 80) { |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | map.put("List", list.get(i)); |
| | | map.put("Max", 3); |
| | | map.put("flage1", "false"); |
| | | map.put("flage2", "false"); |
| | | map.put("flage3", "true"); |
| | | lists.add(map); |
| | | } else { |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | map.put("List", list.get(i)); |
| | | map.put("flage1", "false"); |
| | | map.put("flage2", "false"); |
| | | map.put("flage3", "false"); |
| | | lists.add(map); |
| | | } |
| | | |
| | | } |
| | | lists.add(map); |
| | | return R.data(lists); |
| | | } |
| | | |
| | |
| | | * |
| | | * @return |
| | | */ |
| | | //@Scheduled(cron = "0 0 8 * * ?") |
| | | @Scheduled(cron = "0 0 8 * * ?") |
| | | @GetMapping("/soleval") |
| | | public R soleval() { |
| | | mountainrainService.soildel(); |
| | |
| | | } |
| | | Collections.sort(passDaysList); |
| | | String s = mountainrainService.selectCode(); |
| | | //String s = "62310356,62310305"; |
| | | String[] split = s.split(","); |
| | | String strArrays = ""; |
| | | for (int i = 0; i < split.length; i++) { |
| | |
| | | Integer num = 30; |
| | | double v1 = 0; |
| | | String stcd = null; |
| | | for (int j = 0; j < passDaysList.size() - 1; j++) { |
| | | for (int j = 0; j < passDaysList.size() - 2; j++) { |
| | | List<Map<String, Object>> map = mountainrainService.selectMtwo(passDaysList.get(j).toString(), passDaysList.get(j + 1).toString(), code); |
| | | if (map.size()==0){ |
| | | continue; |
| | | if (map.size() == 0 || i > map.size() - 1) { |
| | | break; |
| | | } |
| | | BigDecimal w = (BigDecimal) map.get(i).get("drp"); |
| | | double drp = w.doubleValue(); |
| | | stcd = map.get(i).get("STCD").toString(); |
| | | //计算湿度 |
| | | if (i == 0) { |
| | | if (j == 0) { |
| | | v1 = formatDouble1((num + drp) * 0.85); |
| | | if (v1 > 60) { |
| | | v1 = 60; |
| | | } |
| | | } else { |
| | | v1 += drp; |
| | | v1 = formatDouble1(v1 * 0.85); |
| | | if (v1 > 60) { |
| | | v1 = 60; |
| | | } |
| | | } |
| | | } |
| | | if (v1 > 60) { |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | |
| | | |
| | | Integer selectCount(String beginTime,String endTime); |
| | | String selectCode(); |
| | | List<Map<String, Integer>> selecMone(String times,String dateEnd1,String dateEnd2,String dateEnd3,String code); |
| | | List<Map<String, Object>> selecMone(String times,String dateEnd1,String dateEnd2,String dateEnd3,String code); |
| | | List<Map<String, Object>> selectMtwo(String time3,String time,String code); |
| | | void soleInster(String stcd,String soilval); |
| | | void soildel(); |
| | |
| | | <select id="selectCode" resultType="java.lang.String"> |
| | | SELECT stuff(( |
| | | SELECT ',' + CONVERT(VARCHAR (25), m.cenconding) |
| | | FROM dbo.blade_mountain m INNER JOIN ST_STBPRP_B s ON s.STCD=m.cenconding GROUP BY m.cenconding FOR XML PATH ('')), |
| | | FROM dbo.blade_mountain m |
| | | INNER JOIN ST_STBPRP_B s ON s.STCD = m.cenconding |
| | | GROUP BY m.cenconding FOR XML PATH ('')), |
| | | 1, |
| | | 1, |
| | | '' |
| | |
| | | SELECT ISNULL(SUM(s.DRP), 0) AS drp2, |
| | | STCD |
| | | FROM dbo.ST_PPTN_R s |
| | | WHERE s.TM > #{dateEnd3} |
| | | WHERE s.TM > #{dateEnd2} |
| | | AND s.TM <= #{times} |
| | | AND s.STCD IN (${code}) |
| | | GROUP BY s.STCD |
| | |
| | | SELECT ISNULL(SUM(strs.DRP), 0) AS drp3, |
| | | STCD |
| | | FROM dbo.ST_PPTN_R strs |
| | | WHERE strs.TM > #{dateEnd6} |
| | | WHERE strs.TM > #{dateEnd3} |
| | | AND strs.TM <= #{times} |
| | | AND strs.STCD IN (${code}) |
| | | GROUP BY STCD |
| | |
| | | gthours |
| | | FROM blade_mountain |
| | | ) cs ON cs.cenconding = a.STCD |
| | | LEFT JOIN ( |
| | | SELECT stcd, soilval |
| | | FROM sys_soleval |
| | | ) so ON so.stcd = a.STCD |
| | | </select> |
| | | |
| | | <!--第一种预警--> |
| | |
| | | cs.HNNM, |
| | | cs.LTTD, |
| | | cs.LGTD, |
| | | isnull(a.drp1, 0) as drp1 |
| | | isnull(b.drp2,0) as drp2 |
| | | isnull(a.drp1, 0) as drp1, |
| | | isnull(b.drp2,0) as drp2, |
| | | isnull(c.drp3,0) as drp3 |
| | | FROM ( |
| | | SELECT ISNULL(SUM(str.DRP), 0) AS drp1, |
| | | SELECT SUM(str.DRP) AS drp1, |
| | | STCD |
| | | FROM dbo.ST_PPTN_R str |
| | | WHERE str.TM > #{dateEnd1} |
| | |
| | | GROUP BY str.STCD |
| | | ) a |
| | | FULL JOIN ( |
| | | SELECT ISNULL(SUM(s.DRP), 0) AS drp2, |
| | | SELECT SUM(s.DRP) AS drp2, |
| | | STCD |
| | | FROM dbo.ST_PPTN_R s |
| | | WHERE s.TM > #{dateEnd2} |
| | |
| | | GROUP BY s.STCD |
| | | ) b ON a.STCD = b.STCD |
| | | FULL JOIN ( |
| | | SELECT ISNULL(SUM(strs.DRP), 0) AS drp3, |
| | | SELECT SUM(strs.DRP) AS drp3, |
| | | STCD |
| | | FROM dbo.ST_PPTN_R strs |
| | | WHERE strs.TM > #{dateEnd3} |
| | |
| | | FROM dbo.ST_STBPRP_B st |
| | | INNER JOIN dbo.ST_ADDVCD_D ad ON ad.ADDVCD = st.ADDVCD |
| | | ) cs ON cs.STCD = a.STCD |
| | | LEFT JOIN ( |
| | | SELECT stcd, soilval |
| | | FROM sys_soleval |
| | | ) so ON so.stcd = a.STCD |
| | | </select> |
| | | |
| | | <!--土壤湿度计算--> |
| | | <select id="selectMtwo" resultType="java.util.Map"> |
| | | SELECT SUM |
| | | (DRP) AS drp, |
| | | SELECT ISNULL(SUM(DRP), 0) AS drp, |
| | | STCD |
| | | FROM dbo.ST_PPTN_R |
| | | WHERE TM > #{time3} |
| | |
| | | */ |
| | | int rainOne(int number,Integer gohour); |
| | | List<MountainrainsCVO> Mountains(String times,String dateEnd1,String dateEnd2,String dateEnd3,String code); |
| | | List<Map<String, Integer>> selecMone(String times,String dateEnd1,String dateEnd2,String dateEnd3,String code); |
| | | List<Map<String, Object>> selecMone(String times,String dateEnd1,String dateEnd2,String dateEnd3,String code); |
| | | List<Map<String, Object>> selectMtwo(String time3,String time,String code); |
| | | /** |
| | | *三小时 |
| | |
| | | if (number<=gohour){ |
| | | return 0;//正常 |
| | | }else if(number>gohour){ |
| | | return 1;//准备转移 |
| | | return 1;//1小时 |
| | | } |
| | | else { |
| | | return 3;//立即转移 |
| | | return 3;//3小时 |
| | | } |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Integer>> selecMone(String times, String dateEnd1, String dateEnd2, String dateEnd3, String code) { |
| | | public List<Map<String, Object>> selecMone(String times, String dateEnd1, String dateEnd2, String dateEnd3, String code) { |
| | | return baseMapper.selecMone(times, dateEnd1, dateEnd2, dateEnd3, code); |
| | | } |
| | | |
| | |
| | | String years = strss[1].toString(); |
| | | //日 |
| | | String days = strss[2].toString(); |
| | | String yday = year + "月" + day + "日" + r + "时-" + years + "月" + days + "日" + rs + "时。"; |
| | | String yday = year + "月" + day + "日" + r + "时-" + years + "月" + days + "日" + rs + "时"; |
| | | //最新雨量值 |
| | | List<Map<String, Object>> map = regionWeightService.selectReM(beginTime, endTime); |
| | | List<Map<String, Object>> mapAll = regionWeightService.selectAll(); |
| | |
| | | }); |
| | | //拼接前3位降雨最大的区域 |
| | | double v3 = (double) Math.round(num * 10) / 10; |
| | | String text = "全市日平均降雨量:" + v3 + "(毫米)。 "; |
| | | String text = "全市日平均降雨量:" + v3 + "毫米。 "; |
| | | String text1 = "县市区平均降雨量前3位为: "; |
| | | String tx = ""; |
| | | for (int i = 0; i < entryList2.size(); i++) { |
| | |
| | | mapa.put("dyp", as); |
| | | listc.add(mapa); |
| | | if (i < 3) { |
| | | tx += station_name + "降雨量为:" + as + "(毫米),"; |
| | | tx += station_name + "降雨量为:" + as + "毫米,"; |
| | | } |
| | | } |
| | | |
| | |
| | | }); |
| | | for (int c = 0; c < listc.size(); c++) { |
| | | if (c < 3) { |
| | | text += listc.get(c).get("region").toString() + ":" + listc.get(c).get("dyp") + "(毫米),"; |
| | | text += listc.get(c).get("region").toString() + ":" + listc.get(c).get("dyp") + "毫米,"; |
| | | } |
| | | } |
| | | String a = "流域前三的为:" + text.substring(0, text.length() - 1) + "。"; |
| | |
| | | List<Map<String, Object>> lists = new ArrayList<>(); |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | String text = ""; |
| | | String yday = year + "月" + day + "日" + r + "时-" + years + "月" + days + "日" + rs + "时。"; |
| | | String yday = year + "月" + day + "日" + r + "时-" + years + "月" + days + "日" + rs + "时"; |
| | | //0-10降雨量范围 |
| | | List lista = new ArrayList<>(); |
| | | //10-25降雨量范围 |
| | |
| | | } else if (dyp > 250) { |
| | | listf.add(maps.get(i)); |
| | | } |
| | | text += stnm + "站" + dyp + "毫米,"; |
| | | if (i==0){ |
| | | text += addvnm+stnm + "站" + dyp + "毫米,"; |
| | | } |
| | | if (i==1){ |
| | | text += addvnm+stnm + "站" + dyp + "毫米次之,"; |
| | | } |
| | | if (i==2){ |
| | | text += addvnm+stnm + "站" + dyp + "毫米第三,"; |
| | | } |
| | | } else { |
| | | BigDecimal bigDecimaldyp = (BigDecimal) maps.get(i).get("dyp");//日雨量 |
| | | double dyp = bigDecimaldyp.doubleValue(); |
| | |
| | | if (maps.size() == 0) { |
| | | a = yday + "暂无降雨信息。"; |
| | | } else { |
| | | a = yday + "点降雨量前三为:" + text.substring(0, text.length() - 1) + "。"; |
| | | a = yday + "点最大降雨量为" + text.substring(0, text.length() - 1) + "。"; |
| | | } |
| | | map.put("text", a); |
| | | lists.add(map); |
| | |
| | | String years = strss[1].toString(); |
| | | //日 |
| | | String days = strss[2].toString(); |
| | | String yday = year + "月" + day + "日" + r + "时-" + years + "月" + days + "日" + rs + "时。"; |
| | | String yday = year + "月" + day + "日" + r + "时-" + years + "月" + days + "日" + rs + "时"; |
| | | String ss = regionWeightService.selectCodeM(); |
| | | String[] split = ss.split(","); |
| | | String strArrays = ""; |
| | |
| | | }); |
| | | //拼接前3位降雨最大的区域 |
| | | double v3 = (double) Math.round(num * 10) / 10; |
| | | String text = "全市日平均降雨量:" + v3 + "(毫米)。 "; |
| | | String text = "全市日平均降雨量:" + v3 + "毫米。 "; |
| | | String text1 = "县市区平均降雨量前3位为: "; |
| | | String tx = ""; |
| | | for (int i = 0; i < entryList2.size(); i++) { |
| | |
| | | mapa.put("dyp", as); |
| | | listc.add(mapa); |
| | | if (i < 3) { |
| | | tx += station_name + "降雨量为:" + as + "(毫米),"; |
| | | tx += station_name + "降雨量为:" + as + "毫米,"; |
| | | } |
| | | } |
| | | |
| | |
| | | int number = 0; |
| | | //河道超警信息 |
| | | List<Map<String, Object>> selecthd = riverRService.selecthd(beginTime, endTime); |
| | | Map<String, Object> sel = riverRService.sel(); |
| | | selecthd.add(sel); |
| | | //Map<String, Object> sel = riverRService.sel(); |
| | | //selecthd.add(sel); |
| | | //基本站信息 |
| | | List<Map<String, Object>> list1 = riverRService.selectP(); |
| | | //用来判断是否重复统计超警信息 |
| | |
| | | } |
| | | //不为空遍历数据计算是否超出预警值 |
| | | else { |
| | | int c = 0; |
| | | for (int i = 0; i < selecthd.size(); i++) { |
| | | //实时河道水位值 |
| | | BigDecimal z = (BigDecimal) selecthd.get(i).get("Z"); |
| | |
| | | texta += stnm.replaceAll(" ", "") + "水位" + df.format(Z) + "米,"; |
| | | if (selecthd.get(i).get("Q") == null) { |
| | | texta += "流量暂无数据"; |
| | | } else {DecimalFormat dfs = new DecimalFormat("#0.000"); |
| | | } else { |
| | | DecimalFormat dfs = new DecimalFormat("#0.000"); |
| | | texta += "流量" + Q + "立方米每秒;"; |
| | | } |
| | | } |
| | |
| | | SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | Date sd1 = df.parse(maxTM); |
| | | Date sd2 = df.parse(minTM); |
| | | //如果最大时间大于最小时间就是涨幅 |
| | | if (sd1.after(sd2)) { |
| | | //创建一个map集合保存涨幅数据 |
| | | double v = maxZ.doubleValue(); |
| | | double v1 = minZ.doubleValue(); |
| | | //涨幅值 |
| | | double v2 = v - v1; |
| | | double v3 = (double) Math.round(v2 * 100) / 100; |
| | | m1.put(Math.abs(v3), stnm.replaceAll(" ", "") + "站"); |
| | | c.put(stcd,Math.abs(v3)); |
| | | |
| | | |
| | | } |
| | | //跌幅 |
| | | else { |
| | | //创建一个map集合保存跌幅数据 |
| | | double v = maxZ.doubleValue(); |
| | | double v1 = minZ.doubleValue(); |
| | | //涨幅值 |
| | | double v2 = v1 - v; |
| | | double v3 = (double) Math.round(v2 * 100) / 100; |
| | | m2.put(Math.abs(v3), stnm.replaceAll(" ", "") + "站"); |
| | | m1.put(v3, stnm.replaceAll(" ", "") + "站"); |
| | | c.put(stcd,v3); |
| | | |
| | | } |
| | | } |
| | | if (m1.size()==0){ |
| | | text += "暂无涨幅信息。"; |
| | | } |
| | | else { |
| | | //获取涨幅最大的信息 |
| | | if (m1.size() != 0) { |
| | | Object maxKey = getMaxKey(m1); |
| | | String s1 = m1.get(maxKey).toString(); |
| | | text += "涨幅最大的是:" + s1 + "(涨" + maxKey + "米)。"; |
| | | } |
| | | if (m2.size()==0){ |
| | | text += "暂无跌幅信息。"; |
| | | } |
| | | else { |
| | | //获取跌幅最大的信息 |
| | | Object maxKey2 = getMaxKey(m2); |
| | | String s2 = m2.get(maxKey2).toString(); |
| | | text += "跌幅最大的是:" + s2 + "(跌" + maxKey2 + "米)。"; |
| | | } |
| | | // //如果最大时间大于最小时间就是涨幅 |
| | | // if (sd1.after(sd2)) { |
| | | // //创建一个map集合保存涨幅数据 |
| | | // double v = maxZ.doubleValue(); |
| | | // double v1 = minZ.doubleValue(); |
| | | // //涨幅值 |
| | | // double v2 = v - v1; |
| | | // double v3 = (double) Math.round(v2 * 100) / 100; |
| | | // m1.put(Math.abs(v3), stnm.replaceAll(" ", "") + "站"); |
| | | // c.put(stcd,Math.abs(v3)); |
| | | // |
| | | // |
| | | // } |
| | | // //跌幅 |
| | | // else { |
| | | // //创建一个map集合保存跌幅数据 |
| | | // double v = maxZ.doubleValue(); |
| | | // double v1 = minZ.doubleValue(); |
| | | // //涨幅值 |
| | | // double v2 = v1 - v; |
| | | // double v3 = (double) Math.round(v2 * 100) / 100; |
| | | // m2.put(Math.abs(v3), stnm.replaceAll(" ", "") + "站"); |
| | | // c.put(stcd,v3); |
| | | // |
| | | // } |
| | | // } |
| | | // if (m1.size()==0){ |
| | | // text += "暂无涨幅信息。"; |
| | | // } |
| | | // else { |
| | | // //获取涨幅最大的信息 |
| | | // Object maxKey = getMaxKey(m1); |
| | | // String s1 = m1.get(maxKey).toString(); |
| | | // text += "涨幅最大的是:" + s1 + "(涨" + maxKey + "米)。"; |
| | | // } |
| | | // if (m2.size()==0){ |
| | | // text += "暂无跌幅信息。"; |
| | | // } |
| | | // else { |
| | | // //获取跌幅最大的信息 |
| | | // Object maxKey2 = getMaxKey(m2); |
| | | // String s2 = m2.get(maxKey2).toString(); |
| | | // text += "跌幅最大的是:" + s2 + "(跌" + maxKey2 + "米)。"; |
| | | // } |
| | | m.put("text", text); |
| | | m.put("number", number); |
| | | m.put("Yjlist", ylist); |
| | |
| | | List blist = new ArrayList(); |
| | | //河道超警信息 |
| | | List<Map<String, Object>> selecthd = riverRService.selecthdt(dateBegin24,time); |
| | | Map<String, Object> sel = riverRService.sel(); |
| | | selecthd.add(sel); |
| | | //Map<String, Object> sel = riverRService.sel(); |
| | | //selecthd.add(sel); |
| | | List<Map<String, Object>> list1 = riverRService.selectP(); |
| | | //用来判断是否重复统计超警信息 |
| | | Map mnum = new HashMap(); |
| | |
| | | texta +=stnm.replaceAll(" ", "") + "水位" + dfc.format(Z) + "米、"; |
| | | if (v<0){ |
| | | texta+="比昨日8时下跌"+Math.abs(v)+"米、"; |
| | | } |
| | | else { |
| | | } else { |
| | | texta+="比昨日8时上涨"+Math.abs(v)+"米、"; |
| | | } |
| | | if (selecthd.get(i).get("Q")==null){ |
| | |
| | | texta +=stnm.replaceAll(" ", "") + "水位" + dfc.format(Z) + "米、"; |
| | | if (v<0){ |
| | | texta+="比昨日8时下跌"+Math.abs(v)+"米、"; |
| | | } |
| | | else { |
| | | } else { |
| | | texta+="比昨日8时上涨"+Math.abs(v)+"米、"; |
| | | } |
| | | if (selecthd.get(i).get("Q")==null){ |
| | | texta+="流量暂无数据;"; |
| | | } |
| | | else { |
| | | } else { |
| | | //DecimalFormat dfl = new DecimalFormat("#0.000"); |
| | | texta+="流量"+Q+"立方米每秒;"; |
| | | } |
| | |
| | | texta += "。" + stnm.replaceAll(" ", "") + "站超出警戒水位" + dfc.format(v3) + "米、"+ "水位" + dfc.format(Z) + "米、"; |
| | | if (v<0){ |
| | | texta+="比昨日8时下跌"+Math.abs(v)+"米、"; |
| | | } |
| | | else { |
| | | } else { |
| | | texta+="比昨日8时上涨"+Math.abs(v)+"米、"; |
| | | } |
| | | if (selecthd.get(i).get("Q")==null){ |
| | | texta+="流量暂无数据、"; |
| | | } |
| | | else { |
| | | } else { |
| | | DecimalFormat dfl = new DecimalFormat("#0.000"); |
| | | texta+="流量"+Q+"立方米每秒;"; |
| | | } |
| | |
| | | list.add(m); |
| | | return R.data(list); |
| | | } |
| | | |
| | | /** |
| | | * 河道实时预警 |
| | | * |
| | | * @return |
| | | */ |
| | | @ApiLog("河道实时预警") |
| | |
| | | List<Map<String, Object>> list; |
| | | if(k==13){ |
| | | list= riverRService.selecthdyj(times,dateEnd); |
| | | } |
| | | else { |
| | | } else { |
| | | list= riverRService.selecthdyj(times,dateEnd); |
| | | } |
| | | List<Map<String, Object>> lists = new ArrayList<>(); |
| | |
| | | int i1 = b.intValue(); |
| | | if(i1==0){ |
| | | list.get(i).put("yuc","无预警"); |
| | | } |
| | | else { |
| | | } else { |
| | | BigDecimal bigDecimalz = (BigDecimal) list.get(i).get("Z");//实时水位 |
| | | BigDecimal bigDecimalw = (BigDecimal) list.get(i).get("WRZ");//警戒水位 |
| | | double wrz = bigDecimalw.doubleValue();//警戒水位 |
| | |
| | | Double ty= (Double) list.get(i).get("ty"); |
| | | if(z<wrz || wrz==0){ |
| | | list.get(i).put("yuc","无预警"); |
| | | } |
| | | else if(z>=wrz && z<fy){ |
| | | } else if (z >= wrz && z < fy) { |
| | | list.get(i).put("yuc","蓝色预警"); |
| | | } |
| | | else if(z>=fy && z<oy){ |
| | | } else if (z >= fy && z < oy) { |
| | | list.get(i).put("yuc","黄色预警"); |
| | | } |
| | | else if(z>=oy && z<ty){ |
| | | } else if (z >= oy && z < ty) { |
| | | list.get(i).put("yuc","橙色预警"); |
| | | } |
| | | else { |
| | | } else { |
| | | list.get(i).put("yuc","红色预警"); |
| | | } |
| | | } |
| | |
| | | } |
| | | return R.data(lists); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | |
| | | m1.put(v3, stnm.replaceAll(" ", "") + "站"); |
| | | c.put(stcd, v3); |
| | | //获取涨幅最大的信息 |
| | | } |
| | | if (m1.size()!=0) { |
| | | Object maxKey = getMaxKey(m1); |
| | | String s1 = m1.get(maxKey).toString(); |
| | | text += " 涨幅最大的是:" + s1 + "(涨" + maxKey + "米)。"; |
| | | } |
| | | } |
| | | // //如果最大时间大于最小时间就是涨幅 |
| | | // if (sd1.after(sd2)) { |