WaterAndElectricity.java 51 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976
  1. package com.huimv.env.admin.timer;
  2. import cn.hutool.http.HttpRequest;
  3. import com.alibaba.fastjson.JSONArray;
  4. import com.alibaba.fastjson.JSONObject;
  5. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  6. import com.huimv.env.common.entity.EnergyElectricity;
  7. import com.huimv.env.common.entity.EnergyEnvDevice;
  8. import com.huimv.env.common.entity.EnergyWater;
  9. import com.huimv.env.common.mapper.EnergyElectricityMapper;
  10. import com.huimv.env.common.mapper.EnergyEnvDeviceMapper;
  11. import com.huimv.env.common.mapper.EnergyWaterMapper;
  12. import com.huimv.env.common.service.IEnergyElectricityService;
  13. import com.huimv.env.common.service.IEnergyWaterService;
  14. import com.mysql.cj.xdevapi.JsonArray;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.context.annotation.Configuration;
  17. import org.springframework.http.HttpEntity;
  18. import org.springframework.http.HttpHeaders;
  19. import org.springframework.http.MediaType;
  20. import org.springframework.http.ResponseEntity;
  21. import org.springframework.scheduling.annotation.EnableScheduling;
  22. import org.springframework.scheduling.annotation.Scheduled;
  23. import org.springframework.util.LinkedMultiValueMap;
  24. import org.springframework.util.MultiValueMap;
  25. import org.springframework.web.client.RestTemplate;
  26. import java.text.SimpleDateFormat;
  27. import java.util.*;
  28. @Configuration
  29. @EnableScheduling
  30. public class WaterAndElectricity {
  31. @Autowired
  32. private EnergyWaterMapper waterMapper;
  33. @Autowired
  34. private EnergyElectricityMapper electricityMapper;
  35. @Autowired
  36. private EnergyEnvDeviceMapper envDeviceMapper;
  37. //发送设备状态到华统平台
  38. @Scheduled(cron = "0 0/5 * * * ? ")
  39. private void sendDeviceStatus() {
  40. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(null);
  41. HashMap<String, String> paramsMap = new HashMap<>();
  42. JSONObject jsonObject = new JSONObject();
  43. jsonObject.put("result", devices);
  44. System.out.println(jsonObject);
  45. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  46. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getDeviceStatus")
  47. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  48. System.out.println(post);
  49. }
  50. @Scheduled(cron = "0 59 * * * ? ")
  51. private void sendDate() throws Exception {
  52. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  53. queryWrapper.eq("farm_id", 26);
  54. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  55. Date date = new Date();//获取当前时间
  56. Calendar calendar = Calendar.getInstance();
  57. calendar.setTime(date);
  58. calendar.add(Calendar.HOUR, -1);// 20分钟前
  59. //获取到完整的时间
  60. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  61. JSONArray jsonArray = new JSONArray();
  62. for (EnergyEnvDevice device : devices) {
  63. JSONObject jsonObject = new JSONObject();
  64. if (device.getDeviceType() == 3) {
  65. //电
  66. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  67. queryWrapper1.eq("farm_id", 26).eq("chip_code", device.getDeviceCode());
  68. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  69. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  70. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  71. jsonObject.put("electricity", electricity.getElectricityValue());
  72. jsonObject.put("water", 0);
  73. } else {
  74. //水
  75. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  76. queryWrapper1.eq("farm_id", 26).eq("chip_code", device.getDeviceCode());
  77. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  78. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  79. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  80. jsonObject.put("water", water.getWaterValue());
  81. jsonObject.put("electricity", 0);
  82. }
  83. jsonObject.put("deviceCode", device.getDeviceCode());
  84. jsonObject.put("time", sdf.format(date));
  85. jsonArray.add(jsonObject);
  86. }
  87. HashMap<String, String> paramsMap = new HashMap<>();
  88. JSONObject jsonObject = new JSONObject();
  89. jsonObject.put("result", jsonArray);
  90. System.out.println(jsonObject);
  91. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  92. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData")
  93. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  94. System.out.println(post);
  95. }
  96. @Scheduled(cron = "0 59 * * * ? ")
  97. private void sendDate2() throws Exception {
  98. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  99. queryWrapper.eq("farm_id", 29);
  100. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  101. Date date = new Date();//获取当前时间
  102. Calendar calendar = Calendar.getInstance();
  103. calendar.setTime(date);
  104. calendar.add(Calendar.HOUR, -1);// 20分钟前
  105. //获取到完整的时间
  106. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  107. JSONArray jsonArray = new JSONArray();
  108. for (EnergyEnvDevice device : devices) {
  109. JSONObject jsonObject = new JSONObject();
  110. if (device.getDeviceType() == 3) {
  111. //电
  112. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  113. queryWrapper1.eq("farm_id", 29).eq("chip_code", device.getDeviceCode());
  114. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  115. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  116. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  117. jsonObject.put("electricity", electricity.getElectricityValue());
  118. jsonObject.put("water", 0);
  119. } else {
  120. //水
  121. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  122. queryWrapper1.eq("farm_id", 29).eq("chip_code", device.getDeviceCode());
  123. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  124. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  125. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  126. jsonObject.put("water", water.getWaterValue());
  127. jsonObject.put("electricity", 0);
  128. }
  129. jsonObject.put("deviceCode", device.getDeviceCode());
  130. jsonObject.put("time", sdf.format(date));
  131. jsonArray.add(jsonObject);
  132. }
  133. // RestTemplate restTemplate = new RestTemplate();
  134. // HttpHeaders headers = new HttpHeaders();
  135. // headers.setContentType(MediaType.APPLICATION_JSON);
  136. //
  137. // MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
  138. //// Map<String, Object> map = new HashMap<>();
  139. // map.put("result", jsonArray);
  140. //
  141. // HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(map, headers);
  142. //
  143. // String url = "https://huatong.ifarmcloud.com/huatongApi/energy-data/getData";
  144. // String responseBody = restTemplate.postForObject(url, httpEntity, String.class);
  145. // System.out.println(responseBody);
  146. HashMap<String, String> paramsMap = new HashMap<>();
  147. JSONObject jsonObject = new JSONObject();
  148. jsonObject.put("result", jsonArray);
  149. System.out.println(jsonObject);
  150. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  151. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData2")
  152. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  153. System.out.println(post);
  154. }
  155. @Scheduled(cron = "0 59 * * * ? ")
  156. private void sendDate3() throws Exception {
  157. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  158. queryWrapper.eq("farm_id", 22);
  159. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  160. Date date = new Date();//获取当前时间
  161. Calendar calendar = Calendar.getInstance();
  162. calendar.setTime(date);
  163. calendar.add(Calendar.HOUR, -1);// 20分钟前
  164. //获取到完整的时间
  165. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  166. JSONArray jsonArray = new JSONArray();
  167. for (EnergyEnvDevice device : devices) {
  168. JSONObject jsonObject = new JSONObject();
  169. if (device.getDeviceType() == 3) {
  170. //电
  171. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  172. queryWrapper1.eq("farm_id", 22).eq("chip_code", device.getDeviceCode());
  173. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  174. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  175. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  176. jsonObject.put("electricity", electricity.getElectricityValue());
  177. jsonObject.put("water", 0);
  178. } else {
  179. //水
  180. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  181. queryWrapper1.eq("farm_id", 22).eq("chip_code", device.getDeviceCode());
  182. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  183. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  184. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  185. jsonObject.put("water", water.getWaterValue());
  186. jsonObject.put("electricity", 0);
  187. }
  188. jsonObject.put("deviceCode", device.getDeviceCode());
  189. jsonObject.put("time", sdf.format(date));
  190. jsonArray.add(jsonObject);
  191. }
  192. // RestTemplate restTemplate = new RestTemplate();
  193. // HttpHeaders headers = new HttpHeaders();
  194. // headers.setContentType(MediaType.APPLICATION_JSON);
  195. //
  196. // MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
  197. //// Map<String, Object> map = new HashMap<>();
  198. // map.put("result", jsonArray);
  199. //
  200. // HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(map, headers);
  201. //
  202. // String url = "https://huatong.ifarmcloud.com/huatongApi/energy-data/getData";
  203. // String responseBody = restTemplate.postForObject(url, httpEntity, String.class);
  204. // System.out.println(responseBody);
  205. HashMap<String, String> paramsMap = new HashMap<>();
  206. JSONObject jsonObject = new JSONObject();
  207. jsonObject.put("result", jsonArray);
  208. System.out.println(jsonObject);
  209. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  210. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData3")
  211. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  212. System.out.println(post);
  213. }
  214. @Scheduled(cron = "0 59 * * * ? ")
  215. private void sendDate4() throws Exception {
  216. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  217. queryWrapper.eq("farm_id", 30);
  218. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  219. Date date = new Date();//获取当前时间
  220. Calendar calendar = Calendar.getInstance();
  221. calendar.setTime(date);
  222. calendar.add(Calendar.HOUR, -1);// 20分钟前
  223. //获取到完整的时间
  224. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  225. JSONArray jsonArray = new JSONArray();
  226. for (EnergyEnvDevice device : devices) {
  227. JSONObject jsonObject = new JSONObject();
  228. if (device.getDeviceType() == 3) {
  229. //电
  230. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  231. queryWrapper1.eq("farm_id", 30).eq("chip_code", device.getDeviceCode());
  232. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  233. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  234. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  235. jsonObject.put("electricity", electricity.getElectricityValue());
  236. jsonObject.put("water", 0);
  237. } else {
  238. //水
  239. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  240. queryWrapper1.eq("farm_id", 30).eq("chip_code", device.getDeviceCode());
  241. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  242. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  243. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  244. jsonObject.put("water", water.getWaterValue());
  245. jsonObject.put("electricity", 0);
  246. }
  247. jsonObject.put("deviceCode", device.getDeviceCode());
  248. jsonObject.put("time", sdf.format(date));
  249. jsonArray.add(jsonObject);
  250. }
  251. HashMap<String, String> paramsMap = new HashMap<>();
  252. JSONObject jsonObject = new JSONObject();
  253. jsonObject.put("result", jsonArray);
  254. System.out.println(jsonObject);
  255. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  256. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData4")
  257. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  258. System.out.println(post);
  259. }
  260. //正康21
  261. @Scheduled(cron = "0 59 * * * ? ")
  262. private void sendDate5() throws Exception {
  263. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  264. queryWrapper.eq("farm_id", 21);
  265. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  266. Date date = new Date();//获取当前时间
  267. Calendar calendar = Calendar.getInstance();
  268. calendar.setTime(date);
  269. calendar.add(Calendar.HOUR, -1);// 20分钟前
  270. //获取到完整的时间
  271. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  272. JSONArray jsonArray = new JSONArray();
  273. for (EnergyEnvDevice device : devices) {
  274. JSONObject jsonObject = new JSONObject();
  275. if (device.getDeviceType() == 3) {
  276. //电
  277. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  278. queryWrapper1.eq("farm_id", 21).eq("chip_code", device.getDeviceCode());
  279. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  280. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  281. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  282. jsonObject.put("electricity", electricity.getElectricityValue());
  283. jsonObject.put("water", 0);
  284. } else {
  285. //水
  286. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  287. queryWrapper1.eq("farm_id", 21).eq("chip_code", device.getDeviceCode());
  288. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  289. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  290. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  291. jsonObject.put("water", water.getWaterValue());
  292. jsonObject.put("electricity", 0);
  293. }
  294. jsonObject.put("deviceCode", device.getDeviceCode());
  295. jsonObject.put("time", sdf.format(date));
  296. jsonArray.add(jsonObject);
  297. }
  298. HashMap<String, String> paramsMap = new HashMap<>();
  299. JSONObject jsonObject = new JSONObject();
  300. jsonObject.put("result", jsonArray);
  301. System.out.println(jsonObject);
  302. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  303. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData5")
  304. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  305. System.out.println(post);
  306. }
  307. //莲花28
  308. @Scheduled(cron = "0 59 * * * ? ")
  309. private void sendDate6() throws Exception {
  310. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  311. queryWrapper.eq("farm_id", 28);
  312. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  313. Date date = new Date();//获取当前时间
  314. Calendar calendar = Calendar.getInstance();
  315. calendar.setTime(date);
  316. calendar.add(Calendar.HOUR, -1);// 20分钟前
  317. //获取到完整的时间
  318. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  319. JSONArray jsonArray = new JSONArray();
  320. for (EnergyEnvDevice device : devices) {
  321. JSONObject jsonObject = new JSONObject();
  322. if (device.getDeviceType() == 3) {
  323. //电
  324. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  325. queryWrapper1.eq("farm_id", 28).eq("chip_code", device.getDeviceCode());
  326. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  327. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  328. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  329. jsonObject.put("electricity", electricity.getElectricityValue());
  330. jsonObject.put("water", 0);
  331. } else {
  332. //水
  333. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  334. queryWrapper1.eq("farm_id", 28).eq("chip_code", device.getDeviceCode());
  335. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  336. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  337. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  338. jsonObject.put("water", water.getWaterValue());
  339. jsonObject.put("electricity", 0);
  340. }
  341. jsonObject.put("deviceCode", device.getDeviceCode());
  342. jsonObject.put("time", sdf.format(date));
  343. jsonArray.add(jsonObject);
  344. }
  345. HashMap<String, String> paramsMap = new HashMap<>();
  346. JSONObject jsonObject = new JSONObject();
  347. jsonObject.put("result", jsonArray);
  348. System.out.println(jsonObject);
  349. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  350. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData6")
  351. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  352. System.out.println(post);
  353. }
  354. //百风林31
  355. @Scheduled(cron = "0 59 * * * ? ")
  356. private void sendDate7() throws Exception {
  357. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  358. queryWrapper.eq("farm_id", 31);
  359. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  360. Date date = new Date();//获取当前时间
  361. Calendar calendar = Calendar.getInstance();
  362. calendar.setTime(date);
  363. calendar.add(Calendar.HOUR, -1);// 20分钟前
  364. //获取到完整的时间
  365. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  366. JSONArray jsonArray = new JSONArray();
  367. for (EnergyEnvDevice device : devices) {
  368. JSONObject jsonObject = new JSONObject();
  369. if (device.getDeviceType() == 3) {
  370. //电
  371. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  372. queryWrapper1.eq("farm_id", 31).eq("chip_code", device.getDeviceCode());
  373. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  374. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  375. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  376. jsonObject.put("electricity", electricity.getElectricityValue());
  377. jsonObject.put("water", 0);
  378. } else {
  379. //水
  380. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  381. queryWrapper1.eq("farm_id", 31).eq("chip_code", device.getDeviceCode());
  382. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  383. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  384. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  385. jsonObject.put("water", water.getWaterValue());
  386. jsonObject.put("electricity", 0);
  387. }
  388. jsonObject.put("deviceCode", device.getDeviceCode());
  389. jsonObject.put("time", sdf.format(date));
  390. jsonArray.add(jsonObject);
  391. }
  392. HashMap<String, String> paramsMap = new HashMap<>();
  393. JSONObject jsonObject = new JSONObject();
  394. jsonObject.put("result", jsonArray);
  395. System.out.println(jsonObject);
  396. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  397. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData7")
  398. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  399. System.out.println(post);
  400. }
  401. //瑞溪32
  402. @Scheduled(cron = "0 59 * * * ? ")
  403. private void sendDate8() throws Exception {
  404. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  405. queryWrapper.eq("farm_id", 32);
  406. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  407. Date date = new Date();//获取当前时间
  408. Calendar calendar = Calendar.getInstance();
  409. calendar.setTime(date);
  410. calendar.add(Calendar.HOUR, -1);// 20分钟前
  411. //获取到完整的时间
  412. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  413. JSONArray jsonArray = new JSONArray();
  414. for (EnergyEnvDevice device : devices) {
  415. JSONObject jsonObject = new JSONObject();
  416. if (device.getDeviceType() == 3) {
  417. //电
  418. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  419. queryWrapper1.eq("farm_id", 32).eq("chip_code", device.getDeviceCode());
  420. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  421. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  422. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  423. jsonObject.put("electricity", electricity.getElectricityValue());
  424. jsonObject.put("water", 0);
  425. } else {
  426. //水
  427. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  428. queryWrapper1.eq("farm_id", 32).eq("chip_code", device.getDeviceCode());
  429. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  430. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  431. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  432. jsonObject.put("water", water.getWaterValue());
  433. jsonObject.put("electricity", 0);
  434. }
  435. jsonObject.put("deviceCode", device.getDeviceCode());
  436. jsonObject.put("time", sdf.format(date));
  437. jsonArray.add(jsonObject);
  438. }
  439. HashMap<String, String> paramsMap = new HashMap<>();
  440. JSONObject jsonObject = new JSONObject();
  441. jsonObject.put("result", jsonArray);
  442. System.out.println(jsonObject);
  443. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  444. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData8")
  445. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  446. System.out.println(post);
  447. }
  448. //浦江23
  449. @Scheduled(cron = "0 59 * * * ? ")
  450. private void sendDate9() throws Exception {
  451. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  452. queryWrapper.eq("farm_id", 23);
  453. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  454. Date date = new Date();//获取当前时间
  455. Calendar calendar = Calendar.getInstance();
  456. calendar.setTime(date);
  457. calendar.add(Calendar.HOUR, -1);// 20分钟前
  458. //获取到完整的时间
  459. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  460. JSONArray jsonArray = new JSONArray();
  461. for (EnergyEnvDevice device : devices) {
  462. JSONObject jsonObject = new JSONObject();
  463. if (device.getDeviceType() == 3) {
  464. //电
  465. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  466. queryWrapper1.eq("farm_id", 23).eq("chip_code", device.getDeviceCode());
  467. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  468. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  469. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  470. jsonObject.put("electricity", electricity.getElectricityValue());
  471. jsonObject.put("water", 0);
  472. } else {
  473. //水
  474. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  475. queryWrapper1.eq("farm_id", 23).eq("chip_code", device.getDeviceCode());
  476. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  477. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  478. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  479. jsonObject.put("water", water.getWaterValue());
  480. jsonObject.put("electricity", 0);
  481. }
  482. jsonObject.put("deviceCode", device.getDeviceCode());
  483. jsonObject.put("time", sdf.format(date));
  484. jsonArray.add(jsonObject);
  485. }
  486. HashMap<String, String> paramsMap = new HashMap<>();
  487. JSONObject jsonObject = new JSONObject();
  488. jsonObject.put("result", jsonArray);
  489. System.out.println(jsonObject);
  490. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  491. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData9")
  492. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  493. System.out.println(post);
  494. }
  495. //瓦垚头33
  496. @Scheduled(cron = "0 59 * * * ? ")
  497. private void sendDate10() throws Exception {
  498. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  499. queryWrapper.eq("farm_id", 33);
  500. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  501. Date date = new Date();//获取当前时间
  502. Calendar calendar = Calendar.getInstance();
  503. calendar.setTime(date);
  504. calendar.add(Calendar.HOUR, -1);// 20分钟前
  505. //获取到完整的时间
  506. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  507. JSONArray jsonArray = new JSONArray();
  508. for (EnergyEnvDevice device : devices) {
  509. JSONObject jsonObject = new JSONObject();
  510. if (device.getDeviceType() == 3) {
  511. //电
  512. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  513. queryWrapper1.eq("farm_id", 33).eq("chip_code", device.getDeviceCode());
  514. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  515. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  516. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  517. jsonObject.put("electricity", electricity.getElectricityValue());
  518. jsonObject.put("water", 0);
  519. } else {
  520. //水
  521. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  522. queryWrapper1.eq("farm_id", 33).eq("chip_code", device.getDeviceCode());
  523. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  524. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  525. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  526. jsonObject.put("water", water.getWaterValue());
  527. jsonObject.put("electricity", 0);
  528. }
  529. jsonObject.put("deviceCode", device.getDeviceCode());
  530. jsonObject.put("time", sdf.format(date));
  531. jsonArray.add(jsonObject);
  532. }
  533. HashMap<String, String> paramsMap = new HashMap<>();
  534. JSONObject jsonObject = new JSONObject();
  535. jsonObject.put("result", jsonArray);
  536. System.out.println(jsonObject);
  537. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  538. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData10")
  539. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  540. System.out.println(post);
  541. }
  542. //下各水34
  543. @Scheduled(cron = "0 59 * * * ? ")
  544. private void sendDate11() throws Exception {
  545. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  546. queryWrapper.eq("farm_id", 34);
  547. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  548. Date date = new Date();//获取当前时间
  549. Calendar calendar = Calendar.getInstance();
  550. calendar.setTime(date);
  551. calendar.add(Calendar.HOUR, -1);// 20分钟前
  552. //获取到完整的时间
  553. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  554. JSONArray jsonArray = new JSONArray();
  555. for (EnergyEnvDevice device : devices) {
  556. JSONObject jsonObject = new JSONObject();
  557. if (device.getDeviceType() == 3) {
  558. //电
  559. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  560. queryWrapper1.eq("farm_id", 34).eq("chip_code", device.getDeviceCode());
  561. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  562. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  563. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  564. jsonObject.put("electricity", electricity.getElectricityValue());
  565. jsonObject.put("water", 0);
  566. } else {
  567. //水
  568. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  569. queryWrapper1.eq("farm_id", 34).eq("chip_code", device.getDeviceCode());
  570. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  571. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  572. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  573. jsonObject.put("water", water.getWaterValue());
  574. jsonObject.put("electricity", 0);
  575. }
  576. jsonObject.put("deviceCode", device.getDeviceCode());
  577. jsonObject.put("time", sdf.format(date));
  578. jsonArray.add(jsonObject);
  579. }
  580. HashMap<String, String> paramsMap = new HashMap<>();
  581. JSONObject jsonObject = new JSONObject();
  582. jsonObject.put("result", jsonArray);
  583. System.out.println(jsonObject);
  584. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  585. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData11")
  586. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  587. System.out.println(post);
  588. }
  589. //同壮35
  590. @Scheduled(cron = "0 59 * * * ? ")
  591. private void sendDate12() throws Exception {
  592. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  593. queryWrapper.eq("farm_id", 35);
  594. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  595. Date date = new Date();//获取当前时间
  596. Calendar calendar = Calendar.getInstance();
  597. calendar.setTime(date);
  598. calendar.add(Calendar.HOUR, -1);// 20分钟前
  599. //获取到完整的时间
  600. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  601. JSONArray jsonArray = new JSONArray();
  602. for (EnergyEnvDevice device : devices) {
  603. JSONObject jsonObject = new JSONObject();
  604. if (device.getDeviceType() == 3) {
  605. //电
  606. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  607. queryWrapper1.eq("farm_id", 35).eq("chip_code", device.getDeviceCode());
  608. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  609. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  610. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  611. jsonObject.put("electricity", electricity.getElectricityValue());
  612. jsonObject.put("water", 0);
  613. } else {
  614. //水
  615. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  616. queryWrapper1.eq("farm_id", 35).eq("chip_code", device.getDeviceCode());
  617. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  618. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  619. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  620. jsonObject.put("water", water.getWaterValue());
  621. jsonObject.put("electricity", 0);
  622. }
  623. jsonObject.put("deviceCode", device.getDeviceCode());
  624. jsonObject.put("time", sdf.format(date));
  625. jsonArray.add(jsonObject);
  626. }
  627. HashMap<String, String> paramsMap = new HashMap<>();
  628. JSONObject jsonObject = new JSONObject();
  629. jsonObject.put("result", jsonArray);
  630. System.out.println(jsonObject);
  631. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  632. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData12")
  633. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  634. System.out.println(post);
  635. }
  636. //天台27
  637. @Scheduled(cron = "0 59 * * * ? ")
  638. private void sendDate13() throws Exception {
  639. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  640. queryWrapper.eq("farm_id", 27);
  641. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  642. Date date = new Date();//获取当前时间
  643. Calendar calendar = Calendar.getInstance();
  644. calendar.setTime(date);
  645. calendar.add(Calendar.HOUR, -1);// 20分钟前
  646. //获取到完整的时间
  647. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  648. JSONArray jsonArray = new JSONArray();
  649. for (EnergyEnvDevice device : devices) {
  650. JSONObject jsonObject = new JSONObject();
  651. if (device.getDeviceType() == 3) {
  652. //电
  653. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  654. queryWrapper1.eq("farm_id", 27).eq("chip_code", device.getDeviceCode());
  655. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  656. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  657. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  658. jsonObject.put("electricity", electricity.getElectricityValue());
  659. jsonObject.put("water", 0);
  660. } else {
  661. //水
  662. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  663. queryWrapper1.eq("farm_id", 27).eq("chip_code", device.getDeviceCode());
  664. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  665. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  666. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  667. jsonObject.put("water", water.getWaterValue());
  668. jsonObject.put("electricity", 0);
  669. }
  670. jsonObject.put("deviceCode", device.getDeviceCode());
  671. jsonObject.put("time", sdf.format(date));
  672. jsonArray.add(jsonObject);
  673. }
  674. HashMap<String, String> paramsMap = new HashMap<>();
  675. JSONObject jsonObject = new JSONObject();
  676. jsonObject.put("result", jsonArray);
  677. System.out.println(jsonObject);
  678. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  679. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData13")
  680. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  681. System.out.println(post);
  682. }
  683. //里塘36
  684. @Scheduled(cron = "0 59 * * * ? ")
  685. private void sendDate14() throws Exception {
  686. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  687. queryWrapper.eq("farm_id", 36);
  688. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  689. Date date = new Date();//获取当前时间
  690. Calendar calendar = Calendar.getInstance();
  691. calendar.setTime(date);
  692. calendar.add(Calendar.HOUR, -1);// 20分钟前
  693. //获取到完整的时间
  694. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  695. JSONArray jsonArray = new JSONArray();
  696. for (EnergyEnvDevice device : devices) {
  697. JSONObject jsonObject = new JSONObject();
  698. if (device.getDeviceType() == 3) {
  699. //电
  700. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  701. queryWrapper1.eq("farm_id", 36).eq("chip_code", device.getDeviceCode());
  702. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  703. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  704. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  705. jsonObject.put("electricity", electricity.getElectricityValue());
  706. jsonObject.put("water", 0);
  707. } else {
  708. //水
  709. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  710. queryWrapper1.eq("farm_id", 36).eq("chip_code", device.getDeviceCode());
  711. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  712. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  713. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  714. jsonObject.put("water", water.getWaterValue());
  715. jsonObject.put("electricity", 0);
  716. }
  717. jsonObject.put("deviceCode", device.getDeviceCode());
  718. jsonObject.put("time", sdf.format(date));
  719. jsonArray.add(jsonObject);
  720. }
  721. HashMap<String, String> paramsMap = new HashMap<>();
  722. JSONObject jsonObject = new JSONObject();
  723. jsonObject.put("result", jsonArray);
  724. System.out.println(jsonObject);
  725. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  726. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData14")
  727. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  728. System.out.println(post);
  729. }
  730. //苍杭37
  731. @Scheduled(cron = "0 59 * * * ? ")
  732. private void sendDate15() throws Exception {
  733. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  734. queryWrapper.eq("farm_id", 37);
  735. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  736. Date date = new Date();//获取当前时间
  737. Calendar calendar = Calendar.getInstance();
  738. calendar.setTime(date);
  739. calendar.add(Calendar.HOUR, -1);// 20分钟前
  740. //获取到完整的时间
  741. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  742. JSONArray jsonArray = new JSONArray();
  743. for (EnergyEnvDevice device : devices) {
  744. JSONObject jsonObject = new JSONObject();
  745. if (device.getDeviceType() == 3) {
  746. //电
  747. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  748. queryWrapper1.eq("farm_id", 37).eq("chip_code", device.getDeviceCode());
  749. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  750. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  751. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  752. jsonObject.put("electricity", electricity.getElectricityValue());
  753. jsonObject.put("water", 0);
  754. } else {
  755. //水
  756. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  757. queryWrapper1.eq("farm_id", 37).eq("chip_code", device.getDeviceCode());
  758. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  759. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  760. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  761. jsonObject.put("water", water.getWaterValue());
  762. jsonObject.put("electricity", 0);
  763. }
  764. jsonObject.put("deviceCode", device.getDeviceCode());
  765. jsonObject.put("time", sdf.format(date));
  766. jsonArray.add(jsonObject);
  767. }
  768. HashMap<String, String> paramsMap = new HashMap<>();
  769. JSONObject jsonObject = new JSONObject();
  770. jsonObject.put("result", jsonArray);
  771. System.out.println(jsonObject);
  772. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  773. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData15")
  774. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  775. System.out.println(post);
  776. }
  777. //乐清38
  778. @Scheduled(cron = "0 59 * * * ? ")
  779. private void sendDate16() throws Exception {
  780. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  781. queryWrapper.eq("farm_id", 38);
  782. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  783. Date date = new Date();//获取当前时间
  784. Calendar calendar = Calendar.getInstance();
  785. calendar.setTime(date);
  786. calendar.add(Calendar.HOUR, -1);// 20分钟前
  787. //获取到完整的时间
  788. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  789. JSONArray jsonArray = new JSONArray();
  790. for (EnergyEnvDevice device : devices) {
  791. JSONObject jsonObject = new JSONObject();
  792. if (device.getDeviceType() == 3) {
  793. //电
  794. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  795. queryWrapper1.eq("farm_id", 38).eq("chip_code", device.getDeviceCode());
  796. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  797. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  798. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  799. jsonObject.put("electricity", electricity.getElectricityValue());
  800. jsonObject.put("water", 0);
  801. } else {
  802. //水
  803. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  804. queryWrapper1.eq("farm_id", 38).eq("chip_code", device.getDeviceCode());
  805. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  806. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  807. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  808. jsonObject.put("water", water.getWaterValue());
  809. jsonObject.put("electricity", 0);
  810. }
  811. jsonObject.put("deviceCode", device.getDeviceCode());
  812. jsonObject.put("time", sdf.format(date));
  813. jsonArray.add(jsonObject);
  814. }
  815. HashMap<String, String> paramsMap = new HashMap<>();
  816. JSONObject jsonObject = new JSONObject();
  817. jsonObject.put("result", jsonArray);
  818. System.out.println(jsonObject);
  819. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  820. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData16")
  821. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  822. System.out.println(post);
  823. }
  824. //三亩田39
  825. @Scheduled(cron = "0 59 * * * ? ")
  826. private void sendDate17() throws Exception {
  827. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  828. queryWrapper.eq("farm_id", 39);
  829. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  830. Date date = new Date();//获取当前时间
  831. Calendar calendar = Calendar.getInstance();
  832. calendar.setTime(date);
  833. calendar.add(Calendar.HOUR, -1);// 20分钟前
  834. //获取到完整的时间
  835. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  836. JSONArray jsonArray = new JSONArray();
  837. for (EnergyEnvDevice device : devices) {
  838. JSONObject jsonObject = new JSONObject();
  839. if (device.getDeviceType() == 3) {
  840. //电
  841. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  842. queryWrapper1.eq("farm_id", 39).eq("chip_code", device.getDeviceCode());
  843. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  844. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  845. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  846. jsonObject.put("electricity", electricity.getElectricityValue());
  847. jsonObject.put("water", 0);
  848. } else {
  849. //水
  850. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  851. queryWrapper1.eq("farm_id", 39).eq("chip_code", device.getDeviceCode());
  852. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  853. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  854. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  855. jsonObject.put("water", water.getWaterValue());
  856. jsonObject.put("electricity", 0);
  857. }
  858. jsonObject.put("deviceCode", device.getDeviceCode());
  859. jsonObject.put("time", sdf.format(date));
  860. jsonArray.add(jsonObject);
  861. }
  862. HashMap<String, String> paramsMap = new HashMap<>();
  863. JSONObject jsonObject = new JSONObject();
  864. jsonObject.put("result", jsonArray);
  865. System.out.println(jsonObject);
  866. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  867. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData17")
  868. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  869. System.out.println(post);
  870. }
  871. //东阳24
  872. @Scheduled(cron = "0 59 * * * ? ")
  873. private void sendDate18() throws Exception {
  874. QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
  875. queryWrapper.eq("farm_id", 24);
  876. List<EnergyEnvDevice> devices = envDeviceMapper.selectList(queryWrapper);
  877. Date date = new Date();//获取当前时间
  878. Calendar calendar = Calendar.getInstance();
  879. calendar.setTime(date);
  880. calendar.add(Calendar.HOUR, -1);// 20分钟前
  881. //获取到完整的时间
  882. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  883. JSONArray jsonArray = new JSONArray();
  884. for (EnergyEnvDevice device : devices) {
  885. JSONObject jsonObject = new JSONObject();
  886. if (device.getDeviceType() == 3) {
  887. //电
  888. QueryWrapper<EnergyElectricity> queryWrapper1 = new QueryWrapper<>();
  889. queryWrapper1.eq("farm_id", 24).eq("chip_code", device.getDeviceCode());
  890. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  891. queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue");
  892. EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1);
  893. jsonObject.put("electricity", electricity.getElectricityValue());
  894. jsonObject.put("water", 0);
  895. } else {
  896. //水
  897. QueryWrapper<EnergyWater> queryWrapper1 = new QueryWrapper<>();
  898. queryWrapper1.eq("farm_id", 24).eq("chip_code", device.getDeviceCode());
  899. queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date));
  900. queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue");
  901. EnergyWater water = waterMapper.selectOne(queryWrapper1);
  902. jsonObject.put("water", water.getWaterValue());
  903. jsonObject.put("electricity", 0);
  904. }
  905. jsonObject.put("deviceCode", device.getDeviceCode());
  906. jsonObject.put("time", sdf.format(date));
  907. jsonArray.add(jsonObject);
  908. }
  909. HashMap<String, String> paramsMap = new HashMap<>();
  910. JSONObject jsonObject = new JSONObject();
  911. jsonObject.put("result", jsonArray);
  912. System.out.println(jsonObject);
  913. paramsMap.put("Content-Type", "application/json;charset=utf-8");
  914. String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData18")
  915. .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
  916. System.out.println(post);
  917. }
  918. }