lengfaqiang há 2 anos atrás
pai
commit
a84f953388

+ 2 - 1
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/controller/ProjectController.java

@@ -166,6 +166,7 @@ public class ProjectController {
     @RequestMapping(name = "项目查询(项目+设备)", value = "/projectList", method = RequestMethod.GET)
     public HttpResult projectList(/*@RequestParam("projectId")*/ String projectId ,HttpServletRequest request) {
         log.info("项目查询(项目+设备) projectList param:{}", projectId);
-        return projectService.projectList(projectId);
+        HeaderData headerData = commonService.getHeaderData(request);
+        return projectService.projectList(projectId,headerData);
     }
 }

+ 28 - 18
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/service/ProjectService.java

@@ -1377,6 +1377,7 @@ public class ProjectService {
         vo.setProjectTotal(count);
         int deviceCount = deviceMapper.selectCountByProject(projectId, companyId);
         vo.setDeviceTotal(deviceCount);
+        BigDecimal area=new BigDecimal("0.00");
         LambdaQueryWrapper<KwsProject> projectLambdaQueryWrapper = new LambdaQueryWrapper<>();
         projectLambdaQueryWrapper.eq(KwsProject::getDelFlag, 0);
         if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
@@ -1396,9 +1397,9 @@ public class ProjectService {
         queryWrapper.eq(KwsProjectArea::getDelFlag, 0);
         if (!CollectionUtils.isEmpty(projectIdList) && projectIdList.size() > 0) {
             queryWrapper.in(KwsProjectArea::getProjectId, projectIdList);
+             area = projectAreaMapper.selectList(queryWrapper).stream().map(KwsProjectArea::getArea).reduce(BigDecimal.ZERO,
+                    BigDecimal::add);
         }
-        BigDecimal area = projectAreaMapper.selectList(queryWrapper).stream().map(KwsProjectArea::getArea).reduce(BigDecimal.ZERO,
-                BigDecimal::add);
         vo.setProjectTotalArea(area);
         /**仅统计设备在线的数据*/
         int deviceOnline = deviceMapper.selectDeviceOnlineRateCountByProject(projectId, companyId);
@@ -1434,17 +1435,19 @@ public class ProjectService {
         }
 //        vo.setAlarmTotal(CollectionUtils.isEmpty(kwsAlarmsCount) ? 0 : kwsAlarmsCount.size());
         vo.setAlarmTotal(alarmTotal);
-        LambdaQueryWrapper<KwsAlarmDetail> eq = new LambdaQueryWrapper<KwsAlarmDetail>()
-                .eq(KwsAlarmDetail::getStatus, 0)
-                .eq(KwsAlarmDetail::getDelFlag, 0)
-                .in(KwsAlarmDetail::getAlarmId, kwsAlarmsCount.stream().map(KwsAlarm::getId).distinct().collect(Collectors.toList()));
-        if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
-            eq.eq(KwsAlarmDetail::getAlarmId, Long.parseLong(projectId));
+        int unreadAlarmTotal = 0;
+        if (kwsAlarmsCount.size() > 0 && (!CollectionUtils.isEmpty(kwsAlarmsCount))) {
+            LambdaQueryWrapper<KwsAlarmDetail> eq = new LambdaQueryWrapper<KwsAlarmDetail>()
+                    .eq(KwsAlarmDetail::getStatus, 0)
+                    .eq(KwsAlarmDetail::getDelFlag, 0)
+                    .in(KwsAlarmDetail::getAlarmId, kwsAlarmsCount.stream().map(KwsAlarm::getId).distinct().collect(Collectors.toList()));
+            if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
+                eq.eq(KwsAlarmDetail::getAlarmId, Long.parseLong(projectId));
+            }
+            List<KwsAlarmDetail> unreadKwsAlarms = alarmDetailMapper.selectList(eq);
+            unreadAlarmTotal = CollectionUtils.isEmpty(unreadKwsAlarms) ? 0 : unreadKwsAlarms.size();
         }
-        List<KwsAlarmDetail> unreadKwsAlarms = alarmDetailMapper.selectList(eq
-        );
-        vo.setUnreadAlarmTotal(CollectionUtils.isEmpty(unreadKwsAlarms) ? 0 : unreadKwsAlarms.size());
-
+        vo.setUnreadAlarmTotal(unreadAlarmTotal);
         LambdaQueryWrapper<KwsAlarm> eqed = new LambdaQueryWrapper<KwsAlarm>();
         if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
             eqed.eq(KwsAlarm::getProjectId, Long.parseLong(projectId));
@@ -1461,21 +1464,27 @@ public class ProjectService {
         }
 //        vo.setOneAlarmTotal(CollectionUtils.isEmpty(oneThresholdAlarm) ? 0 : oneThresholdAlarm.size());
         vo.setOneAlarmTotal(oneAlarmTotal);
-        KwsAlarm alarms = null;
+        List<KwsAlarm> alarms = null;
+        LambdaQueryWrapper<KwsAlarm> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(KwsAlarm::getDelFlag,0);
         if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
-            alarms = alarmMapper.selectById(Long.parseLong(projectId));
+            lambdaQueryWrapper.eq(KwsAlarm::getProjectId,projectId);
+        }
+        if (org.apache.commons.lang3.StringUtils.isNotBlank(companyId)) {
+            lambdaQueryWrapper.eq(KwsAlarm::getCompanyId,companyId);
         }
+        alarms = alarmMapper.selectList(lambdaQueryWrapper);
         LambdaQueryWrapper<KwsAlarmDetail> lt = new LambdaQueryWrapper<KwsAlarmDetail>()
                 .eq(KwsAlarmDetail::getDelFlag, 0)
                 .gt(KwsAlarmDetail::getCreateTime, localDateTimeStart).lt(KwsAlarmDetail::getCreateTime, localDateTimeEnd);
-        if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
+        if (org.apache.commons.lang3.StringUtils.isNotBlank(mountainId)) {
             lt.eq(KwsAlarmDetail::getMountainId, Long.parseLong(mountainId));
         }
         if (org.apache.commons.lang3.StringUtils.isNotBlank(companyId)) {
             lt.eq(KwsAlarmDetail::getCompanyId, Long.parseLong(companyId));
         }
-        if (Objects.nonNull(alarms)){
-            lt.eq(KwsAlarmDetail::getAlarmId,alarms.getId());
+        if (alarms.size()>0 && (!CollectionUtils.isEmpty(alarms))) {
+            lt.in(KwsAlarmDetail::getAlarmId, alarms.stream().map(KwsAlarm::getId).distinct().collect(Collectors.toList()));
         }
         List<KwsAlarmDetail> kwsAlarms = alarmDetailMapper.selectList(lt
         );
@@ -1483,7 +1492,7 @@ public class ProjectService {
         return HttpResult.ok("查询成功", vo);
     }
 
-    public HttpResult projectList(String projectId) {
+    public HttpResult projectList(String projectId, HeaderData headerData) {
         LambdaQueryWrapper<KwsProject> wrapper = new LambdaQueryWrapper<>();
         if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
             wrapper.eq(KwsProject::getId, projectId);
@@ -1491,6 +1500,7 @@ public class ProjectService {
         wrapper.eq(KwsProject::getDelFlag, NumberConstant.ZERO)
 //                .eq(KwsProject::getStatus,NumberConstant.ZERO)
         ;
+        wrapper.eq(KwsProject::getCompanyId, headerData.getCompanyId());
         List<KwsProject> projectList = projectMapper.selectList(wrapper);
         if (CollectionUtils.isEmpty(projectList)) {
             return HttpResult.ok();