DataHandleByHand.java 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package com.slibra.web.controller.business;
  2. import cn.hutool.http.HttpRequest;
  3. import com.alibaba.fastjson2.JSON;
  4. import com.alibaba.fastjson2.JSONArray;
  5. import java.math.BigDecimal;
  6. import java.time.LocalDateTime;
  7. import java.time.format.DateTimeFormatter;
  8. import java.util.*;
  9. import static com.slibra.common.constant.MyConstants.INDUSTRY_INTERFACE_ADDR;
  10. /***
  11. *
  12. * 手动处处理一些数据
  13. *
  14. */
  15. public class DataHandleByHand {
  16. public static void main(String[] args) {
  17. testExistsGYKField();
  18. }
  19. /**
  20. * 查看工业库的某个值是否存在
  21. * 或者某个时间段是否存在
  22. */
  23. public static void testExistsGYKField() {
  24. String[] queryTags = {"信义污水厂_除磷P04预测值_"};
  25. // 给定时间段的起始时间和结束时间
  26. LocalDateTime startTime = LocalDateTime.parse("2024-04-25T00:09:25");
  27. LocalDateTime endTime = LocalDateTime.parse("2024-04-25T09:30:00");
  28. // 每个小时的时间格式
  29. DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
  30. // 循环按小时分割
  31. LocalDateTime currentHour = startTime;
  32. while (currentHour.isBefore(endTime)) {
  33. String begin = currentHour.format(formatter);
  34. String end = currentHour.plusMinutes(10).format(formatter);
  35. // 输出当前小时的起始时间和结束时间
  36. System.out.println("起始时间:" + begin);
  37. System.out.println("结束时间:" + end);
  38. // 当前小时加一小时,作为下一个小时的起始时间
  39. currentHour = currentHour.plusMinutes(10);
  40. //每个小时查询一次数据
  41. HashMap<String, Object> req = new HashMap<>();
  42. req.put("tagNames", queryTags);
  43. req.put("startTime", begin);
  44. req.put("endTime", end);
  45. req.put("recordNumbers", 100000);
  46. String body = HttpRequest.post(INDUSTRY_INTERFACE_ADDR).header("Authorization", "c2E6c2E=").header("clientName", "hongshan").body(JSON.toJSONString(req)).execute().body();
  47. System.out.println("body = " + body);
  48. //行转列数据处理
  49. for (String queryTag : queryTags) {
  50. JSONArray array = JSON.parseObject(body).getJSONArray(queryTag);
  51. System.out.println(JSON.toJSONString(array));
  52. }
  53. }
  54. }
  55. }