From 3a1c37eeff91265441a69afc108734f37f3cce72 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Tue, 18 Jul 2023 11:25:28 +0800 Subject: [PATCH] chore:测试提交 --- screen-api/src/main/java/com/moral/api/controller/UAVController.java | 111 +++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 87 insertions(+), 24 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/controller/UAVController.java b/screen-api/src/main/java/com/moral/api/controller/UAVController.java index 9d9582b..9d29b6e 100644 --- a/screen-api/src/main/java/com/moral/api/controller/UAVController.java +++ b/screen-api/src/main/java/com/moral/api/controller/UAVController.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.moral.api.entity.HistorySecondUav; import com.moral.api.mapper.HistorySecondUavMapper; import com.moral.api.pojo.dto.uav.UAVGteForDTO; @@ -122,7 +123,7 @@ //������2 String[] zuoxia = calLocationByDistanceAndLocationAndDirection(180, minLon, maxLat, 50); - for (int i = 0; i <distance1 ; i+=60) { + for (int i = 0; i <distance2 ; i+=50) { UAVGteForDTO dto1 = new UAVGteForDTO(); String[] strings2 = calLocationByDistanceAndLocationAndDirection(90, minLon, maxLat, i); String[] strings3 = calLocationByDistanceAndLocationAndDirection(90, Double.parseDouble(youshang[0].toString()), Double.parseDouble(youshang[1].toString()), i); @@ -133,7 +134,7 @@ dto1.setRightBottom(strings4); dto1.setLeftBottom(strings5); list.add(dto1); - for (int j = 0; j < distance2; j+=60) { + for (int j = 0; j < distance1; j+=50) { UAVGteForDTO dto2 = new UAVGteForDTO(); String[] strings6 = calLocationByDistanceAndLocationAndDirection(180, Double.parseDouble(strings2[0].toString()), Double.parseDouble(strings2[1].toString()), j); String[] strings7 = calLocationByDistanceAndLocationAndDirection(180, Double.parseDouble(strings3[0].toString()), Double.parseDouble(strings3[1].toString()), j); @@ -155,10 +156,10 @@ doubleArrayList.add(uavGteForDTO.getLeftBottom()); doubleArrayList.add(uavGteForDTO.getRightTop()); doubleArrayList.add(uavGteForDTO.getRightBottom()); - UAVResultDTO result = getResult(doubleArrayList); - uavResultDTOS1.add(result); +// UAVResultDTO result = getResult(doubleArrayList); +// uavResultDTOS1.add(result); } - if (uavResultDTOS1!=null){ + if (!ObjectUtils.isEmpty(uavResultDTOS1)){ return new ResultMessage(ResponseCodeEnum.SUCCESS.getCode(), ResponseCodeEnum.SUCCESS.getMsg(),uavResultDTOS1); } @@ -187,8 +188,8 @@ } } // lists.add(list1); -// String result = getResult(doubleArrayList); -// rsMap.put(result,list1); + String result = getResult(doubleArrayList); + rsMap.put(result,list1); } @@ -197,6 +198,9 @@ for (String string : strings) { UAVResultDTO dto = new UAVResultDTO(); List<String> list1 = rsMap.get(string); + if (ObjectUtils.isEmpty(list1)){ + continue; + } ArrayList<Double> TVOCArrayList = new ArrayList<>(); ArrayList<Double> PM10ArrayList = new ArrayList<>(); ArrayList<Double> PM25ArrayList = new ArrayList<>(); @@ -206,6 +210,7 @@ ArrayList<Double> COArrayList = new ArrayList<>(); ArrayList<Double> WDArrayList = new ArrayList<>(); ArrayList<Double> SHArrayList = new ArrayList<>(); + ArrayList<Double> O3ArrayList = new ArrayList<>(); for (String s : list1) { JSONObject jsonObject = JSON.parseObject(s); //tvoc @@ -217,35 +222,93 @@ ///������������ String a21004 = jsonObject.get("a21004").toString(); // //������ -// String a01006 = jsonObject.get("a01006").toString(); -// if (a01006!=null){ -// QYArrayList.add(Double.parseDouble(a01006)); -// } + Object a01006 = jsonObject.get("a01006"); + if (!Objects.isNull(a01006)){ + QYArrayList.add(Double.parseDouble(a01006.toString())); + } //pm10 String a34002 = jsonObject.get("a34002").toString(); //co String a21005 = jsonObject.get("a21005").toString(); //������ -// String a01002 = jsonObject.get("a01002").toString(); + Object a01002 = jsonObject.get("a01002"); + if (!Objects.isNull(a01002)){ + QYArrayList.add(Double.parseDouble(a01002.toString())); + } //������ -// String a01001 = jsonObject.get("a01001").toString(); + Object a01001 = jsonObject.get("a01001"); + if (!Objects.isNull(a01001)){ + QYArrayList.add(Double.parseDouble(a01001.toString())); + } + String a05024 = jsonObject.get("a05024").toString(); TVOCArrayList.add(Double.parseDouble(a99054)); PM10ArrayList.add(Double.parseDouble(a34002)); PM25ArrayList.add(Double.parseDouble(a34004)); SOArrayList.add(Double.parseDouble(a21026)); NOArrayList.add(Double.parseDouble(a21004)); COArrayList.add(Double.parseDouble(a21005)); + O3ArrayList.add(Double.parseDouble(a05024)); -// WDArrayList.add(Double.parseDouble(a01001)); -// SHArrayList.add(Double.parseDouble(a01002)); + } + double WDDouble =0.0; + double SHDouble =0.0; + double QYDouble =0.0; + double CODouble =0.0; + double TVODouble =0.0; + double PM10Double =0.0; + double PM25Double =0.0; + double SODouble =0.0; + double NODouble =0.0; + double O3Double =0.0; + if (COArrayList.size()>0){ + CODouble = COArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (TVOCArrayList.size()>0){ + TVODouble = TVOCArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (PM10ArrayList.size()>0){ + PM10Double = PM10ArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (PM25ArrayList.size()>0){ + PM25Double = PM25ArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (SOArrayList.size()>0){ + SODouble = SOArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (NOArrayList.size()>0){ + NODouble = NOArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (WDArrayList.size()>0){ + WDDouble = WDArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (SHArrayList.size()>0){ + SHDouble = SHArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (QYArrayList.size()>0){ + QYDouble = QYArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); + } + if (O3ArrayList.size()>0){ + O3Double = O3ArrayList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); } - double asDouble = COArrayList.stream().mapToInt(Double::intValue).average().getAsDouble(); - + dto.setCoAvg(CODouble); + dto.setNO2Avg(NODouble); + dto.setO3Avg(O3Double); + dto.setTVOCAvg(TVODouble); + dto.setPM10Avg(PM10Double); + dto.setPM25Avg(PM25Double); + dto.setSO2Avg(SODouble); + dto.setWDAvg(WDDouble); + dto.setSHAvg(SHDouble); + dto.setQYAvg(QYDouble); + String[] s = string.split("_"); + dto.setFlyLat(Double.parseDouble(s[1])); + dto.setFlyLon(Double.parseDouble(s[0])); + uavResultDTOS.add(dto); } - return new ResultMessage(ResponseCodeEnum.SUCCESS.getCode(), ResponseCodeEnum.SUCCESS.getMsg(),null); + return new ResultMessage(ResponseCodeEnum.SUCCESS.getCode(), ResponseCodeEnum.SUCCESS.getMsg(),uavResultDTOS); } @@ -349,8 +412,8 @@ } - public static UAVResultDTO getResult(ArrayList<String[]> doubleArrayList){ - UAVResultDTO uavResultDTO = new UAVResultDTO(); + public static String getResult(ArrayList<String[]> doubleArrayList){ +// UAVResultDTO uavResultDTO = new UAVResultDTO(); int total = doubleArrayList.size(); double X = 0, Y = 0, Z = 0; for (int i = 0; i < total; i++) { @@ -374,11 +437,11 @@ double rsLon = Lon * 180 / Math.PI; double rsLat = Lat * 180 / Math.PI; - uavResultDTO.setFlyLon(rsLon); - uavResultDTO.setFlyLat(rsLat); +// uavResultDTO.setFlyLon(rsLon); +// uavResultDTO.setFlyLat(rsLat); -// return rsLon+"_"+rsLat; - return uavResultDTO; + return rsLon+"_"+rsLat; +// return uavResultDTO; } /** -- Gitblit v1.8.0