|  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|