From 1f65fd011582ac6587d60475315d2ee6662d9d5b Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Fri, 08 Sep 2023 09:01:39 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/wb' into qa --- screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java | 38 +++++++++++++++++++++----------------- 1 files changed, 21 insertions(+), 17 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java index 85a16fa..ef50870 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java @@ -5,6 +5,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.system.ApplicationHome; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; import org.springframework.web.multipart.MultipartFile; @@ -275,6 +276,7 @@ private MaxRoadMapper maxRoadMapper; @Override + @Transactional public Map<String, Object> dailyDustlds(List<MultipartFile> file,Map<String, Object> params) { Map<String, Object> userInfo = (Map<String, Object>) TokenUtils.getUserInfo(); @@ -303,29 +305,29 @@ for (DustldDTO dustldDTO : dustldDTOS) { String flyLat = dustldDTO.getFlyLat(); String flyLon = dustldDTO.getFlyLon(); -// if (flyLon==null && flyLat==null){ -// continue; -// } + if (flyLon==null && flyLat==null){ + continue; + } + double latDouble1 = Double.parseDouble(flyLat); + double lonDouble1 = Double.parseDouble(flyLon); for (Map<String, Object> dust : dusts) { String flyLat1 = Objects.nonNull(dust.get("flyLat")) ? dust.get("flyLat").toString() :"0"; String flyLon1 = Objects.nonNull(dust.get("flyLon")) ? dust.get("flyLon").toString() :"0"; + double latDouble = Double.parseDouble(flyLat1); + double lonDouble = Double.parseDouble(flyLon1); // String flyLon1 = dust.get("flyLon").toString(); - if (flyLat1.equals(flyLat) && flyLon1.equals(flyLon)){ + if (latDouble1==latDouble && lonDouble1==lonDouble){ Double dustld = Objects.nonNull(dust.get("dustld"))?Double.parseDouble(dust.get("dustld").toString()):0d; if (dustld>=0 && dustld<40 ){ dustld = dustld + 170; - } - if (dustld>=40 && dustld<60 ){ + }else if (dustld>=40 && dustld<60){ dustld = dustld + 130; - } - if (dustld>=60 && dustld<100 ){ + }else if (dustld>=60 && dustld<100 ){ dustld = dustld + 110; - } - if (dustld>=100 && dustld<150 ){ + }else if (dustld>=100 && dustld<150){ dustld = dustld + 70; - } - if (dustld>=150 && dustld<180 ){ + }else if (dustld>=150 && dustld<180){ dustld = dustld + 30; } doubleArrayList.add(dustld); @@ -336,12 +338,14 @@ if (ObjectUtils.isEmpty(doubleArrayList)){ continue; } + Double ListAva = doubleArrayList.stream() .collect(Collectors.averagingDouble(Double::doubleValue)); double rsAvg = new BigDecimal(ListAva/1000).setScale(3, BigDecimal.ROUND_HALF_UP).doubleValue(); dustForm.setRoad(string); dustForm.setValue(rsAvg); if (rsAvg>=0.3){ builder.append("("+i+")"+string); + i++; list1.add(dustForm); //������������������ QueryWrapper<MaxRoad> wrapper = new QueryWrapper<>(); @@ -374,17 +378,17 @@ wrapper.lt("time",DateUtils.getDate(time1,DateUtils.yyyy_MM_dd_EN)); wrapper.orderByDesc("time"); - MaxRoad maxRoad = maxRoadMapper.selectOne(wrapper); - String dateString3 = DateUtils.dateToDateString(maxRoad.getTime(), DateUtils.yyyy_MM_dd_CN); + List<MaxRoad> maxRoads = maxRoadMapper.selectList(wrapper); + String dateString3 = DateUtils.dateToDateString(maxRoads.get(0).getTime(), DateUtils.yyyy_MM_dd_CN); QueryWrapper<MaxRoad> wrapper2 = new QueryWrapper<>(); - wrapper2.eq("time",maxRoad.getTime()); - List<MaxRoad> maxRoads = maxRoadMapper.selectList(wrapper2); + wrapper2.eq("time",maxRoads.get(0).getTime()); + List<MaxRoad> maxRoads1 = maxRoadMapper.selectList(wrapper2); //������������ ArrayList<DustForm> dustForms = new ArrayList<>(); dustForms.addAll(list1); dustForms.addAll(list2); - for (MaxRoad road : maxRoads) { + for (MaxRoad road : maxRoads1) { for (DustForm dustForm : dustForms) { if (road.getName().equals(dustForm.getRoad())){ HashMap<String, Object> map = new HashMap<>(); -- Gitblit v1.8.0