From ac832618393aca09f81d6bd04117e0cdb32301c3 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Fri, 01 Dec 2023 15:35:31 +0800 Subject: [PATCH] Merge branch 'dev' of http://blit.7drlb.com:8888/r/moral into wb --- screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java | 68 +++++++++++++++++++-------------- screen-api/src/main/java/com/moral/api/service/HistoryFiveMinutelyService.java | 2 + screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java | 16 +++++++ screen-api/src/main/java/com/moral/api/config/mybatis/PlusConfig.java | 2 screen-api/src/main/java/com/moral/api/controller/MonitorPointController.java | 22 +++++++++++ screen-api/src/main/java/com/moral/api/controller/AllocationController.java | 1 screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml | 6 +++ 7 files changed, 85 insertions(+), 32 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/config/mybatis/PlusConfig.java b/screen-api/src/main/java/com/moral/api/config/mybatis/PlusConfig.java index 55cf12d..8a9a272 100644 --- a/screen-api/src/main/java/com/moral/api/config/mybatis/PlusConfig.java +++ b/screen-api/src/main/java/com/moral/api/config/mybatis/PlusConfig.java @@ -25,7 +25,7 @@ * @Version 1.0 */ @Configuration -@MapperScan(basePackages = {"com.moral.*.mapper"}) +/*@MapperScan(basePackages = {"com.moral.*.mapper"})*/ public class PlusConfig { @Bean public PaginationInterceptor paginationInterceptor() { diff --git a/screen-api/src/main/java/com/moral/api/controller/AllocationController.java b/screen-api/src/main/java/com/moral/api/controller/AllocationController.java index 7fa6f9a..07c8d6e 100644 --- a/screen-api/src/main/java/com/moral/api/controller/AllocationController.java +++ b/screen-api/src/main/java/com/moral/api/controller/AllocationController.java @@ -173,7 +173,6 @@ return ResultMessage.ok(ObjectUtils.isEmpty(map1)? "0":map1); } - @GetMapping("unitExel") public void unitExel(HttpServletResponse response,HttpServletRequest request){ Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); diff --git a/screen-api/src/main/java/com/moral/api/controller/MonitorPointController.java b/screen-api/src/main/java/com/moral/api/controller/MonitorPointController.java index 7c477bf..e2e3b41 100644 --- a/screen-api/src/main/java/com/moral/api/controller/MonitorPointController.java +++ b/screen-api/src/main/java/com/moral/api/controller/MonitorPointController.java @@ -123,6 +123,28 @@ List<Object> response = historyFiveMinutelyService.getAreaWindData(params); return ResultMessage.ok(response); } + @GetMapping("getWindDataCenter") + @ApiOperation(value = "������������������������", notes = "������������������������") + @ApiImplicitParams(value = { + @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"), + @ApiImplicitParam(name = "monitorPointIds", value = "������id", required = true, paramType = "query", dataType = "String") + }) + public ResultMessage getWindDataCenter(HttpServletRequest request) { + Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); + if (!params.containsKey("monitorPointIds")) { + return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); + } + String monitorPoint = params.remove("monitorPointIds").toString(); + params.put("monitorPointList", monitorPoint); + String[] monitorPointIds = monitorPoint.split(","); + if (monitorPointIds.length > 3) { + return ResultMessage.ok(); + } + + params.put("monitorPointIds", monitorPointIds); + List<Object> response = historyFiveMinutelyService.getAreaWindDataCenter(params); + return ResultMessage.ok(response); + } /** * @Description: ������������������������������ diff --git a/screen-api/src/main/java/com/moral/api/service/HistoryFiveMinutelyService.java b/screen-api/src/main/java/com/moral/api/service/HistoryFiveMinutelyService.java index b46372f..3125d8d 100644 --- a/screen-api/src/main/java/com/moral/api/service/HistoryFiveMinutelyService.java +++ b/screen-api/src/main/java/com/moral/api/service/HistoryFiveMinutelyService.java @@ -40,6 +40,8 @@ //������5������������������ List<Object> getAreaWindData(Map<String,Object> params); + //������������������������������ + List<Object> getAreaWindDataCenter(Map<String,Object> params); /** * @Description: ������������������������������������+������+tvoc 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 4ce7314..35a9cdd 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 @@ -1,8 +1,13 @@ package com.moral.api.service.impl; +import com.moral.api.config.Interceptor.UserHelper; +import com.moral.api.entity.SysDictData; import com.moral.api.exception.BusinessException; import com.moral.api.mapper.*; +import com.moral.api.pojo.enums.SysDictTypeEnum; +import com.moral.api.pojo.vo.user.QxUser; +import com.moral.api.service.SysDictTypeService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -17,18 +22,7 @@ import java.text.DecimalFormat; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.Date; -import java.util.HashMap; -import java.util.Iterator; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.Set; -import java.util.UUID; +import java.util.*; import java.util.stream.Collectors; import com.alibaba.fastjson.JSON; @@ -67,7 +61,7 @@ */ @Override public Integer getDailyDustld(Map<String, Object> params,MultipartFile file ) { - + SysDictData listDict = sysDictTypeService.listOne(SysDictTypeEnum.SYS_SECOND_CRUISER.getValue(),"dustld"); //������jar��������������� ApplicationHome applicationHome = new ApplicationHome(getClass()); //���jar������������������������������upload������������������������������������ @@ -93,8 +87,16 @@ ArrayList<Double> rsDouble = new ArrayList<>(); for (String s : dust) { double aDouble = Double.parseDouble(s); - - if (aDouble>=0 && aDouble<40 ){ + if(listDict.getDataValue().contains(",")){ + List<String> resultStr = Arrays.asList(listDict.getDataValue().split(",")); + if(resultStr.size() % 2 ==0){ + aDouble = numAvg(resultStr,BigDecimal.valueOf(aDouble)).doubleValue(); + } + }else { + BigDecimal dataValue = Objects.nonNull(listDict.getDataValue())?BigDecimal.valueOf(Double.parseDouble(listDict.getDataValue())):BigDecimal.ZERO; + aDouble = BigDecimal.valueOf(aDouble).add(dataValue).doubleValue(); + } + /*if (aDouble>=0 && aDouble<40 ){ aDouble = aDouble + 170; }else if (aDouble>=40 && aDouble<60){ aDouble = aDouble + 130; @@ -106,7 +108,7 @@ aDouble = aDouble + 30; }else { aDouble= aDouble+0; - } + }*/ rsDouble.add(aDouble); } list.addAll(rsDouble); @@ -271,11 +273,13 @@ private MaxRoadMapper maxRoadMapper; @Autowired private OrganizationMapper organizationMapper; + @Autowired + private SysDictTypeService sysDictTypeService; @Override @Transactional public Map<String, Object> dailyDustlds(Map<String, Object> params) { - + SysDictData list = sysDictTypeService.listOne(SysDictTypeEnum.SYS_SECOND_CRUISER.getValue(),"dustld"); Map<String, Object> userInfo = (Map<String, Object>) TokenUtils.getUserInfo(); Map<String, Object> orgInfo = (Map<String, Object>) userInfo.get("organization"); Integer orgId = (Integer) orgInfo.get("id"); @@ -323,17 +327,14 @@ // 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 (dustld>=0 && dustld<40 ){ - dustld = dustld + 170; - }else if (dustld>=40 && dustld<60){ - dustld = dustld + 130; - }else if (dustld>=60 && dustld<100 ){ - dustld = dustld + 110; - }else if (dustld>=100 && dustld<150){ - dustld = dustld + 70; - }else if (dustld>=150 && dustld<180){ - dustld = dustld + 30; + 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; @@ -494,5 +495,14 @@ } return null; } - + 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; + } } diff --git a/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java index 40b13b6..8d56568 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java @@ -191,7 +191,21 @@ } return getWindData(windData,params); } + @Override + public List<Object> getAreaWindDataCenter(Map<String, Object> params) { +// String timeUnits = DateUtils.dateToDateString(new Date(), DateUtils.yyyyMM_EN); +// params.put("timeUnits", timeUnits); +// //������������ +// List<WindData> windData = historyFiveMinutelyMapper.getAreaWindData(params); +// return getWindData(windData); + params.put("timeUnits","202311"); + params.put("time","2023-11-05 09:00"); + params.put("macs",Arrays.asList("p5dnd7a0245472","p5dnd7a0245400","p5dnd7a0245385","p5dnd7a0245374")); + List<WindData> windData = historyHourlyMapper.getArea(params); + params.put("perdlen",50); + return getWindData(windData,params); + } //��������������������������� @Override @@ -462,7 +476,7 @@ laLaMap.put("minLa", lami); - int perdlen = windDate(Objects.nonNull(params.get("monitorPointList"))?params.get("monitorPointList").toString():null); + int perdlen = Objects.nonNull(params.get("perdlen"))?Integer.parseInt(params.get("perdlen").toString()):windDate(Objects.nonNull(params.get("monitorPointList"))?params.get("monitorPointList").toString():null); int length = perdlen*10; Double lo1 = lomi - length * 0.00001141; diff --git a/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml b/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml index fbb6c7e..9e3acd3 100644 --- a/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml +++ b/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml @@ -50,6 +50,12 @@ <foreach item="monitorPointId" collection="monitorPointIds" index="index" open="(" separator="," close=")"> #{monitorPointId} </foreach> + <if test="macs != null and macs.size!= 0"> + and h.mac in + <foreach collection="macs" item="id" index="index" open="(" close=")" separator=","> + #{id} + </foreach> + </if> AND h.time = #{time} </select> -- Gitblit v1.8.0