tangzy
2022-07-21 a98b1db4392c357304036e8b3cdd01646920300d
src/main/java/org/springblade/modules/mountainrain/controller/MountainrainController.java
@@ -2090,5 +2090,82 @@
      }
      return c.getTime();
   }
   private static String ss(int i, int j, boolean b) {
      Calendar calendar = Calendar.getInstance();
      if (b) {
         calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + i);
      } else {
         calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - i);
      }
      calendar.add(Calendar.DATE, -j);
      Date today = calendar.getTime();
      SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd 08:00:00");
      String result = format.format(today);
      return result;
   }
   @GetMapping("/cs")
   public R cs() {
      for (int c = 2; c < 25; c++) {
         Calendar calendar = Calendar.getInstance();
         calendar.add(Calendar.DATE, -c); //得到前一天
         Date date = calendar.getTime();
         DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
         String dateNow = df.format(df.format(date));
         int intervals = 31;
         ArrayList passDaysList = new ArrayList<>();
         for (int i = 0; i < intervals; i++) {
            passDaysList.add(ss(i, c, false));
         }
         Collections.sort(passDaysList);
         //String s = mountainrainService.selectCode();
         String s = regionWeightService.selectCode();
         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);
         for (int i = 0; i < split.length; i++) {
            Integer num = 30;
            double v1 = 0;
            String stcd = null;
            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 || i > map.size() - 1) {
                  //stcd=split[i];
                  break;
               }
               BigDecimal w = (BigDecimal) map.get(i).get("drp");
               double drp = w.doubleValue();
               stcd = map.get(i).get("STCD").toString();
               //计算湿度
               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 (stcd != null) {
               if (v1 > 60) {
                  mountainrainService.soleInster(stcd, "60", dateNow);
               } else {
                  String a = String.valueOf(v1);
                  mountainrainService.soleInster(stcd, a, dateNow);
               }
            }
         }
      }
      return R.data("成功");
   }
}