package com.huimv.env.admin.timer; import cn.hutool.http.HttpRequest; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.huimv.env.common.entity.EnergyElectricity; import com.huimv.env.common.entity.EnergyEnvDevice; import com.huimv.env.common.entity.EnergyWater; import com.huimv.env.common.mapper.EnergyElectricityMapper; import com.huimv.env.common.mapper.EnergyEnvDeviceMapper; import com.huimv.env.common.mapper.EnergyWaterMapper; import com.huimv.env.common.service.IEnergyElectricityService; import com.huimv.env.common.service.IEnergyWaterService; import com.mysql.cj.xdevapi.JsonArray; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; import org.springframework.web.client.RestTemplate; import java.text.SimpleDateFormat; import java.util.*; @Configuration @EnableScheduling public class WaterAndElectricity { @Autowired private EnergyWaterMapper waterMapper; @Autowired private EnergyElectricityMapper electricityMapper; @Autowired private EnergyEnvDeviceMapper envDeviceMapper; //发送设备状态到华统平台 @Scheduled(cron = "0 0/5 * * * ? ") private void sendDeviceStatus() { List devices = envDeviceMapper.selectList(null); HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", devices); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getDeviceStatus") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } @Scheduled(cron = "0 59 * * * ? ") private void sendDate() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 26); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 26).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 26).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } @Scheduled(cron = "0 59 * * * ? ") private void sendDate2() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 29); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 29).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 29).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } // RestTemplate restTemplate = new RestTemplate(); // HttpHeaders headers = new HttpHeaders(); // headers.setContentType(MediaType.APPLICATION_JSON); // // MultiValueMap map = new LinkedMultiValueMap<>(); //// Map map = new HashMap<>(); // map.put("result", jsonArray); // // HttpEntity> httpEntity = new HttpEntity<>(map, headers); // // String url = "https://huatong.ifarmcloud.com/huatongApi/energy-data/getData"; // String responseBody = restTemplate.postForObject(url, httpEntity, String.class); // System.out.println(responseBody); HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData2") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } @Scheduled(cron = "0 59 * * * ? ") private void sendDate3() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 22); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 22).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 22).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } // RestTemplate restTemplate = new RestTemplate(); // HttpHeaders headers = new HttpHeaders(); // headers.setContentType(MediaType.APPLICATION_JSON); // // MultiValueMap map = new LinkedMultiValueMap<>(); //// Map map = new HashMap<>(); // map.put("result", jsonArray); // // HttpEntity> httpEntity = new HttpEntity<>(map, headers); // // String url = "https://huatong.ifarmcloud.com/huatongApi/energy-data/getData"; // String responseBody = restTemplate.postForObject(url, httpEntity, String.class); // System.out.println(responseBody); HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData3") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } @Scheduled(cron = "0 59 * * * ? ") private void sendDate4() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 30); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 30).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 30).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData4") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //正康21 @Scheduled(cron = "0 59 * * * ? ") private void sendDate5() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 21); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 21).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 21).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData5") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //莲花28 @Scheduled(cron = "0 59 * * * ? ") private void sendDate6() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 28); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 28).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 28).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData6") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //百风林31 @Scheduled(cron = "0 59 * * * ? ") private void sendDate7() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 31); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 31).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 31).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData7") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //瑞溪32 @Scheduled(cron = "0 59 * * * ? ") private void sendDate8() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 32); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 32).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 32).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData8") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //浦江23 @Scheduled(cron = "0 59 * * * ? ") private void sendDate9() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 23); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 23).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 23).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData9") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //瓦垚头33 @Scheduled(cron = "0 59 * * * ? ") private void sendDate10() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 33); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 33).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 33).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData10") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //下各水34 @Scheduled(cron = "0 59 * * * ? ") private void sendDate11() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 34); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 34).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 34).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData11") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //同壮35 @Scheduled(cron = "0 59 * * * ? ") private void sendDate12() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 35); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 35).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 35).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData12") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //天台27 @Scheduled(cron = "0 59 * * * ? ") private void sendDate13() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 27); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 27).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 27).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData13") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //里塘36 @Scheduled(cron = "0 59 * * * ? ") private void sendDate14() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 36); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 36).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 36).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData14") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //苍杭37 @Scheduled(cron = "0 59 * * * ? ") private void sendDate15() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 37); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 37).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 37).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData15") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //乐清38 @Scheduled(cron = "0 59 * * * ? ") private void sendDate16() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 38); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 38).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 38).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData16") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //三亩田39 @Scheduled(cron = "0 59 * * * ? ") private void sendDate17() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 39); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 39).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 39).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData17") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } //东阳24 @Scheduled(cron = "0 59 * * * ? ") private void sendDate18() throws Exception { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", 24); List devices = envDeviceMapper.selectList(queryWrapper); Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1);// 20分钟前 //获取到完整的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); JSONArray jsonArray = new JSONArray(); for (EnergyEnvDevice device : devices) { JSONObject jsonObject = new JSONObject(); if (device.getDeviceType() == 3) { //电 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 24).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(electricity_value),0) electricityValue"); EnergyElectricity electricity = electricityMapper.selectOne(queryWrapper1); jsonObject.put("electricity", electricity.getElectricityValue()); jsonObject.put("water", 0); } else { //水 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", 24).eq("chip_code", device.getDeviceCode()); queryWrapper1.between("upload_date", sdf.format(calendar.getTime()), sdf.format(date)); queryWrapper1.select(" IFNULL(SUM(water_value),0) waterValue"); EnergyWater water = waterMapper.selectOne(queryWrapper1); jsonObject.put("water", water.getWaterValue()); jsonObject.put("electricity", 0); } jsonObject.put("deviceCode", device.getDeviceCode()); jsonObject.put("time", sdf.format(date)); jsonArray.add(jsonObject); } HashMap paramsMap = new HashMap<>(); JSONObject jsonObject = new JSONObject(); jsonObject.put("result", jsonArray); System.out.println(jsonObject); paramsMap.put("Content-Type", "application/json;charset=utf-8"); String post = HttpRequest.post("https://huatong.ifarmcloud.com/huatongApi/energy-data/getData18") .headerMap(paramsMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body(); System.out.println(post); } }