From 7438064a85a63d46e210ce37e63c4ca823d52f63 Mon Sep 17 00:00:00 2001 From: swb <jpy123456> Date: Thu, 04 Jul 2024 09:50:02 +0800 Subject: [PATCH] fix:补充提交 --- screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java | 17 ++++++++++++++++- screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java | 25 ++----------------------- 2 files changed, 18 insertions(+), 24 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 ad3020c..cab12c7 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 @@ -473,12 +473,27 @@ */ @Override public List<SecondCruiserSort> sort(String mac, String startTime, String endTime) { - String s = DateUtils.stringToDateString(startTime, "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd"); + SysDictData list = sysDictTypeService.listOne(SysDictTypeEnum.SYS_SECOND_CRUISER.getValue(),"dustld"); + String s = DateUtils.stringToDateString(startTime, "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd 00:00:00"); LambdaQueryWrapper<SecondCruiserSort> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(SecondCruiserSort::getMac,mac); wrapper.eq(SecondCruiserSort::getTime,s); wrapper.orderByDesc(SecondCruiserSort::getValue); List<SecondCruiserSort> secondCruiserSorts = secondCruiserSortMapper.selectList(wrapper); + //��������������� + if (!ObjectUtils.isEmpty(secondCruiserSorts)){ + for (SecondCruiserSort secondCruiserSort : secondCruiserSorts) { + if(list.getDataValue().contains(",")){ + List<String> resultStr = Arrays.asList(list.getDataValue().split(",")); + if(resultStr.size() % 2 ==0){ + secondCruiserSort.setValue(numAvg(resultStr,BigDecimal.valueOf(secondCruiserSort.getValue())).doubleValue()); + } + }else { + BigDecimal dataValue = Objects.nonNull(list.getDataValue())?BigDecimal.valueOf(Double.parseDouble(list.getDataValue())):BigDecimal.ZERO; + secondCruiserSort.setValue(BigDecimal.valueOf(secondCruiserSort.getValue()).add(dataValue).doubleValue()); + } + } + } return secondCruiserSorts; } diff --git a/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java b/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java index 798825d..a9df6df 100644 --- a/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java +++ b/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java @@ -40,8 +40,6 @@ @Service @Slf4j public class HistorySecondCruiserServiceImpl extends ServiceImpl<HistorySecondCruiserMapper, HistorySecondCruiser> implements HistorySecondCruiserService { - @Autowired - private SysDictTypeService sysDictTypeService; @Autowired private HistorySecondCruiserMapper historySecondCruiserMapper; @@ -63,7 +61,6 @@ //������������������ endTime = DateUtils.getCurDate(DateUtils.yyyy_MM_dd_HH_mm_ss_EN); } - SysDictData list = sysDictTypeService.listOne("ZHC", "dustld"); List<HistorySecondCruiser> result = historySecondCruiserMapper.getResult(startTime, endTime); // @@ -107,15 +104,6 @@ // String flyLon1 = dust.get("flyLon").toString(); if (latDouble1==latDouble && lonDouble1==lonDouble){ Double dustld = Objects.nonNull(dust.get("dustld"))?Double.parseDouble(dust.get("dustld").toString()):0d; - if(list.getDataValue().contains(",")){ - List<String> resultStr = Arrays.asList(list.getDataValue().split(",")); - if(resultStr.size() % 2 ==0){ - dustld = numAvg(resultStr,BigDecimal.valueOf(dustld)).doubleValue(); - } - }else { - BigDecimal dataValue = Objects.nonNull(list.getDataValue())?BigDecimal.valueOf(Double.parseDouble(list.getDataValue())):BigDecimal.ZERO; - dustld = BigDecimal.valueOf(dustld).add(dataValue).doubleValue(); - } doubleArrayList.add(dustld); break; } @@ -125,7 +113,7 @@ continue; } Double ListAva = doubleArrayList.stream() .collect(Collectors.averagingDouble(Double::doubleValue)); - double rsAvg = new BigDecimal(ListAva/1000).setScale(3, BigDecimal.ROUND_HALF_UP).doubleValue(); + double rsAvg = new BigDecimal(ListAva).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); secondCruiserSort.setRoad(string); secondCruiserSort.setValue(rsAvg); secondCruiserSort.setMac(mac); @@ -135,19 +123,10 @@ } } if (!ObjectUtils.isEmpty(list1)){ +// log.info(list1.size()+""); secondCruiserSortMapper.insertAll(list1); } } - private BigDecimal numAvg(List<String> list , BigDecimal num){ - int nums = 1; - for (int i=0;i<list.size();i=i+2){ - if(num.compareTo(BigDecimal.valueOf(Double.parseDouble(list.get(i))))>= 0 ){ - return num.add(BigDecimal.valueOf(Double.parseDouble(list.get(i+1)))); - } - nums+=2; - } - return num; - } } -- Gitblit v1.8.0