From 28923b3d67c58b032bc4ff128aa1d5e62d73dba1 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Fri, 02 Feb 2024 10:07:58 +0800 Subject: [PATCH] fix:提交实时在线率接口 --- screen-api/src/main/java/com/moral/api/service/impl/MonitorPointServiceImpl.java | 65 ++++++++++++++++++++++++++++++++ 1 files changed, 64 insertions(+), 1 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/MonitorPointServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/MonitorPointServiceImpl.java index b16ba1d..6583cef 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/MonitorPointServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/MonitorPointServiceImpl.java @@ -3,6 +3,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.moral.api.config.Interceptor.UserHelper; import com.moral.api.dto.MonitoringStationDTO; import com.moral.api.entity.*; import com.moral.api.mapper.DeviceMapper; @@ -10,6 +11,7 @@ import com.moral.api.mapper.MonitorPointMapper; import com.moral.api.mapper.SensorMapper; import com.moral.api.pojo.form.device.MonitorPointQueryForm; +import com.moral.api.pojo.vo.user.QxUser; import com.moral.api.service.DeviceService; import com.moral.api.service.HistoryDailyService; import com.moral.api.service.HistoryHourlyService; @@ -24,6 +26,7 @@ import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.ObjectUtils; import springfox.documentation.schema.Entry; import java.math.BigDecimal; @@ -518,11 +521,69 @@ return resultList; } + /** + * ������������������������ + * + * @return + */ + @Override + public List<MonitorPoint> getOrganizations() { + QueryWrapper<MonitorPoint> wrapper = new QueryWrapper<>(); + wrapper.select("id","name"); + QxUser user = UserHelper.getCurrentUser(); + Integer organizationId = user.getOrganizationId(); + List<Integer> monitorPointiIds = monitorPointMapper.getMonitorPointiId(organizationId); + if (organizationId!=24){ + wrapper.in("id",monitorPointiIds); + } + wrapper.eq("is_delete",Constants.NOT_DELETE); + List<MonitorPoint> monitorPoints = monitorPointMapper.selectList(wrapper); + for (int i = 0; i < monitorPoints.size(); i++) { + List<Device> organizationDevice = deviceService.getOrganizationDevice(monitorPoints.get(i).getId()); + if (ObjectUtils.isEmpty(organizationDevice)){ + monitorPoints.remove(i); + i--; + } + } + return monitorPoints; + } + private List<MonitoringStationDTO> resultList(List<HistoryDaily> historyDailyByMacAndTimeSlot){ List<MonitoringStationDTO> list = new ArrayList<>(); if(CollectionUtils.isEmpty(historyDailyByMacAndTimeSlot)){ return list; + } + //������������������ ������ p5dnd7a0000001 -������ p5dnd7a0000002 -������ p5dnd7a0000003 + List<String> hzRoad = Arrays.asList("p5dnd7a0245491","p5dnd7a0392159","p5dnd7a0243605","p5dnd7a0392176"); + List<String> xtRoad = Arrays.asList("p5dnd7a0243603","p5dnd7a0391986","p5dnd7a0392003","p5dnd7a0392144","p5dnd7a0392167","p5dnd7a0391990"); + List<String> xhRoad = Arrays.asList("p5dnd7a0392158","p5dnd7a0392173","p5dnd7a0391975","p5dnd7a0392153","p5dnd7a0391961","p5dnd7a0243608","p5dnd7a0243618"); + List<HistoryDaily> hcHz= new ArrayList<>(); + List<HistoryDaily> xtHz= new ArrayList<>(); + List<HistoryDaily> xhHz= new ArrayList<>(); + for(HistoryDaily h : historyDailyByMacAndTimeSlot) { + HistoryDaily historyDaily = new HistoryDaily(); + historyDaily.setTime( h.getTime()); + historyDaily.setValue(h.getValue()); + if(hzRoad.contains(h.getMac())){ + historyDaily.setMac("p5dnd7a0000001"); + hcHz.add(historyDaily); + }else if(xtRoad.contains(h.getMac())){ + historyDaily.setMac("p5dnd7a0000002"); + xtHz.add(historyDaily); + }else if(xhRoad.contains(h.getMac())){ + historyDaily.setMac("p5dnd7a0000003"); + xhHz.add(historyDaily); + } + } + if(CollectionUtils.isNotEmpty(hcHz)){ + historyDailyByMacAndTimeSlot.addAll(hcHz); + } + if(CollectionUtils.isNotEmpty(xtHz)){ + historyDailyByMacAndTimeSlot.addAll(xtHz); + } + if(CollectionUtils.isNotEmpty(xhHz)){ + historyDailyByMacAndTimeSlot.addAll(xhHz); } Map<String,Map<String,ArrayList<Double>>> resultMap = new HashMap<>(); for(HistoryDaily h : historyDailyByMacAndTimeSlot) { @@ -657,7 +718,9 @@ wrapper.eq(Device::getIsDelete,0); Map<String,String> deviceMap = new HashMap<>(); wrapper.list().forEach(it->deviceMap.put(it.getMac(),it.getName())); - + deviceMap.put("p5dnd7a0000001","������������������"); + deviceMap.put("p5dnd7a0000002","������������������"); + deviceMap.put("p5dnd7a0000003","������������������"); for (MonitoringStationDTO m :compositeListResult ){ MonitoringStationDTO monit = new MonitoringStationDTO(); String mac = m.getMac(); -- Gitblit v1.8.0