| | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.moral.api.config.mybatis.MybatisPlusConfig; |
| | | import com.moral.api.entity.Device; |
| | | import com.moral.api.entity.HistoryFiveMinutely; |
| | | import com.moral.api.entity.HistoryHourly; |
| | | import com.moral.api.entity.Organization; |
| | | import com.moral.api.entity.*; |
| | | import com.moral.api.mapper.DeviceMapper; |
| | | import com.moral.api.mapper.HistoryHourlyMapper; |
| | | import com.moral.api.service.HistoryHourlyService; |
| | | import com.moral.api.service.OrganizationService; |
| | | import com.moral.api.utils.GetCenterPointFromListOfCoordinates; |
| | | import com.moral.constant.Constants; |
| | | import com.moral.constant.SeparateTableType; |
| | | import com.moral.pojo.AQI; |
| | |
| | | JSONObject value = JSONObject.parseObject(historyHourlyData.get("value").toString()); |
| | | double num = Double.parseDouble(value.get(parameters.get("sensor_code")).toString()); |
| | | int level = PollutantUtils.pollutantLevel(num, (parameters.get("sensor_code")).toString()); |
| | | list1.add(latitude); |
| | | list1.add(longitude); |
| | | list1.add(latitude); |
| | | list1.add(level); |
| | | list.add(list1); |
| | | } |
| | |
| | | double latitudeMax = Collections.max(latitudeList)+0.0018; |
| | | double longitudeMin = Collections.min(longitudeList)-0.2/(111*Math.cos(latitudeMin)); |
| | | double longitudeMax = Collections.max(longitudeList)+0.2/(111*Math.cos(latitudeMin)); |
| | | List<Object> bound = new ArrayList<>(); |
| | | List<Object> left_up = new ArrayList<>(); |
| | | List<Double> bound = new ArrayList<>(); |
| | | bound.add(latitudeMax); |
| | | bound.add(longitudeMax); |
| | | bound.add(latitudeMin); |
| | | bound.add(longitudeMin); |
| | | resultMap.put("bound",bound); |
| | | List<List> bound1 = new ArrayList<>(); |
| | | List<Double> left_up = new ArrayList<>(); |
| | | left_up.add(latitudeMax); |
| | | left_up.add(longitudeMin); |
| | | List<Object> right_up = new ArrayList<>(); |
| | | List<Double> right_up = new ArrayList<>(); |
| | | right_up.add(latitudeMax); |
| | | right_up.add(longitudeMax); |
| | | List<Object> left_down = new ArrayList<>(); |
| | | List<Double> left_down = new ArrayList<>(); |
| | | left_down.add(latitudeMin); |
| | | left_down.add(longitudeMin); |
| | | List<Object> right_down = new ArrayList<>(); |
| | | List<Double> right_down = new ArrayList<>(); |
| | | right_down.add(latitudeMin); |
| | | right_down.add(longitudeMax); |
| | | bound.add(left_up); |
| | | bound.add(right_up); |
| | | bound.add(right_down); |
| | | bound.add(left_down); |
| | | resultMap.put("bound",bound); |
| | | bound1.add(left_up); |
| | | bound1.add(right_up); |
| | | bound1.add(right_down); |
| | | bound1.add(left_down); |
| | | List<GeoCoordinate> geoCoordinates = new ArrayList<>(); |
| | | for (List bo:bound1) { |
| | | GeoCoordinate g = new GeoCoordinate(); |
| | | g.setLatitude(Double.parseDouble(bo.get(0).toString())); |
| | | g.setLongitude(Double.parseDouble(bo.get(1).toString())); |
| | | geoCoordinates.add(g); |
| | | } |
| | | GeoCoordinate centerPoint400 = GetCenterPointFromListOfCoordinates.getCenterPoint400(geoCoordinates); |
| | | List centerPoint = new ArrayList(); |
| | | centerPoint.add(centerPoint400.getLongitude()); |
| | | centerPoint.add(centerPoint400.getLatitude()); |
| | | resultMap.put("centerPoint",centerPoint); |
| | | return resultMap; |
| | | } |
| | | |