diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqDeviceMapper.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqDeviceMapper.java index 3cca28d0..c6d7bc2a 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqDeviceMapper.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqDeviceMapper.java @@ -1,7 +1,11 @@ package com.njcn.gather.event.devcie.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; import com.njcn.gather.event.devcie.pojo.po.PqDevice; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @@ -12,4 +16,5 @@ import com.njcn.gather.event.devcie.pojo.po.PqDevice; * @version V1.0.0 */ public interface PqDeviceMapper extends BaseMapper { + List queryListByIds(@Param("ids") List ids); } \ No newline at end of file diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqLineMapper.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqLineMapper.java index 989856ed..9cf3e9d6 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqLineMapper.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqLineMapper.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.njcn.gather.event.devcie.pojo.dto.LedgerBaseInfoDTO; import com.njcn.gather.event.devcie.pojo.po.PqLine; import org.apache.ibatis.annotations.Param; -import org.springframework.security.core.parameters.P; import java.util.List; @@ -19,4 +18,5 @@ import java.util.List; public interface PqLineMapper extends BaseMapper { List getBaseLineInfo(@Param("ids")List ids); + } \ No newline at end of file diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqSubstationMapper.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqSubstationMapper.java index b9584a94..bb0b22af 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqSubstationMapper.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/PqSubstationMapper.java @@ -1,7 +1,11 @@ package com.njcn.gather.event.devcie.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.gather.event.devcie.pojo.dto.SubstationDTO; import com.njcn.gather.event.devcie.pojo.po.PqSubstation; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @@ -12,4 +16,5 @@ import com.njcn.gather.event.devcie.pojo.po.PqSubstation; * @version V1.0.0 */ public interface PqSubstationMapper extends BaseMapper { + List queryListByIds(@Param("ids")List ids); } \ No newline at end of file diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqDeviceMapper.xml b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqDeviceMapper.xml index 2985d708..17045c94 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqDeviceMapper.xml +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqDeviceMapper.xml @@ -27,4 +27,28 @@ DEV_INDEX, GD_INDEX, SUB_INDEX, "NAME", "STATUS", DEVTYPE, LOGONTIME, UPDATETIME, NODE_INDEX, PORTID, DEVFLAG, DEV_SERIES, DEV_KEY, IP, DEVMODEL, CALLFLAG, DATATYPE + + \ No newline at end of file diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqSubstationMapper.xml b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqSubstationMapper.xml index b5247083..7ac625ce 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqSubstationMapper.xml +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/mapper/mapping/PqSubstationMapper.xml @@ -13,4 +13,20 @@ SUB_INDEX, GD_INDEX, "NAME", "SCALE" + + \ No newline at end of file diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/DeviceDTO.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/DeviceDTO.java new file mode 100644 index 00000000..5ee6941d --- /dev/null +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/DeviceDTO.java @@ -0,0 +1,22 @@ +package com.njcn.gather.event.devcie.pojo.dto; + +import lombok.Data; + +/** + * Description: + * Date: 2025/06/27 下午 3:25【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +public class DeviceDTO { + private Integer devId; + private String devName; + private Integer busBarId; + private String busBarName; + private Integer stationId; + private String stationName; + private String gdName; + private Integer runFlag=0; +} diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/LedgerBaseInfoDTO.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/LedgerBaseInfoDTO.java index 3ba9731f..a17f6439 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/LedgerBaseInfoDTO.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/LedgerBaseInfoDTO.java @@ -27,4 +27,7 @@ public class LedgerBaseInfoDTO { private Integer stationId; private String stationName; + + private Integer runFlag=0;; + } diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/SubstationDTO.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/SubstationDTO.java new file mode 100644 index 00000000..4c35cbb2 --- /dev/null +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/pojo/dto/SubstationDTO.java @@ -0,0 +1,20 @@ +package com.njcn.gather.event.devcie.pojo.dto; + +import lombok.Data; + +/** + * Description: + * Date: 2025/06/27 下午 3:37【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +public class SubstationDTO { + + private Integer stationId; + private String stationName; + private String gdName; + private Integer runFlag=0;; + +} diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqDeviceService.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqDeviceService.java index a3e3d8bc..3af751cc 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqDeviceService.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqDeviceService.java @@ -1,8 +1,13 @@ package com.njcn.gather.event.devcie.service; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; +import com.njcn.gather.event.devcie.pojo.dto.LedgerBaseInfoDTO; import com.njcn.gather.event.devcie.pojo.po.PqDevice; import com.baomidou.mybatisplus.extension.service.IService; - /** + +import java.util.List; + +/** * * Description: * Date: 2025/06/19 下午 1:47【需求编号】 @@ -12,5 +17,5 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface PqDeviceService extends IService{ - + List queryListByIds(List lineIds); } diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqLineService.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqLineService.java index 7e0cb8cd..db782c7f 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqLineService.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqLineService.java @@ -1,8 +1,13 @@ package com.njcn.gather.event.devcie.service; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; +import com.njcn.gather.event.devcie.pojo.dto.LedgerBaseInfoDTO; import com.njcn.gather.event.devcie.pojo.po.PqLine; import com.baomidou.mybatisplus.extension.service.IService; - /** + +import java.util.List; + +/** * * Description: * Date: 2025/06/19 下午 1:43【需求编号】 @@ -12,5 +17,5 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface PqLineService extends IService{ - + List queryListByIds(List lineIds); } diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqSubstationService.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqSubstationService.java index 0f6ce6b7..8b4f1515 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqSubstationService.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/PqSubstationService.java @@ -1,8 +1,13 @@ package com.njcn.gather.event.devcie.service; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; +import com.njcn.gather.event.devcie.pojo.dto.SubstationDTO; import com.njcn.gather.event.devcie.pojo.po.PqSubstation; import com.baomidou.mybatisplus.extension.service.IService; - /** + +import java.util.List; + +/** * * Description: * Date: 2025/06/19 下午 1:48【需求编号】 @@ -12,5 +17,5 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface PqSubstationService extends IService{ - + List queryListByIds(List lineIds); } diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqDeviceServiceImpl.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqDeviceServiceImpl.java index fc56f7a0..c3e9ceb7 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqDeviceServiceImpl.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqDeviceServiceImpl.java @@ -1,5 +1,6 @@ package com.njcn.gather.event.devcie.service.impl; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; import java.util.List; @@ -18,4 +19,8 @@ import com.njcn.gather.event.devcie.service.PqDeviceService; @Service public class PqDeviceServiceImpl extends ServiceImpl implements PqDeviceService{ + @Override + public List queryListByIds(List lineIds) { + return this.baseMapper.queryListByIds(lineIds); + } } diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqLineServiceImpl.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqLineServiceImpl.java index 9ec64108..4ef028a8 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqLineServiceImpl.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqLineServiceImpl.java @@ -1,7 +1,9 @@ package com.njcn.gather.event.devcie.service.impl; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; +import com.njcn.gather.event.devcie.pojo.dto.LedgerBaseInfoDTO; import org.springframework.stereotype.Service; -import org.springframework.beans.factory.annotation.Autowired; + import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.gather.event.devcie.mapper.PqLineMapper; @@ -18,4 +20,8 @@ import com.njcn.gather.event.devcie.service.PqLineService; @Service public class PqLineServiceImpl extends ServiceImpl implements PqLineService{ + @Override + public List queryListByIds(List lineIds) { + return this.baseMapper.getBaseLineInfo(lineIds); + } } diff --git a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqSubstationServiceImpl.java b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqSubstationServiceImpl.java index 2f5415a6..71d5582f 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqSubstationServiceImpl.java +++ b/event_smart/src/main/java/com/njcn/gather/event/devcie/service/impl/PqSubstationServiceImpl.java @@ -1,5 +1,6 @@ package com.njcn.gather.event.devcie.service.impl; +import com.njcn.gather.event.devcie.pojo.dto.SubstationDTO; import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; import java.util.List; @@ -18,4 +19,8 @@ import com.njcn.gather.event.devcie.service.PqSubstationService; @Service public class PqSubstationServiceImpl extends ServiceImpl implements PqSubstationService{ + @Override + public List queryListByIds(List lineIds) { + return this.baseMapper.queryListByIds(lineIds); + } } diff --git a/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/LedgerCountVO.java b/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/LedgerCountVO.java index 6ceea136..529b6121 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/LedgerCountVO.java +++ b/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/LedgerCountVO.java @@ -1,7 +1,12 @@ package com.njcn.gather.event.transientes.pojo.vo; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; +import com.njcn.gather.event.devcie.pojo.dto.LedgerBaseInfoDTO; +import com.njcn.gather.event.devcie.pojo.dto.SubstationDTO; import lombok.Data; +import java.util.List; + /** * Description: * Date: 2025/06/19 下午 3:06【需求编号】 @@ -19,4 +24,8 @@ public class LedgerCountVO { private long runSubCount; private long runLineCount; + private List allSubList; + private List allDevList; + private List allLineList; + } diff --git a/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/MapCountVO.java b/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/MapCountVO.java index a35da789..59a33b1f 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/MapCountVO.java +++ b/event_smart/src/main/java/com/njcn/gather/event/transientes/pojo/vo/MapCountVO.java @@ -1,7 +1,13 @@ package com.njcn.gather.event.transientes.pojo.vo; +import com.njcn.gather.event.devcie.pojo.dto.LedgerBaseInfoDTO; +import com.njcn.gather.event.devcie.pojo.po.PqLine; +import com.njcn.gather.event.transientes.pojo.po.MsgEventInfo; +import com.njcn.gather.event.transientes.pojo.po.PqsEventdetail; import lombok.Data; +import java.util.List; + /** * Description: * Date: 2025/06/26 上午 8:50【需求编号】 @@ -16,4 +22,8 @@ public class MapCountVO { private Integer lineCount; private Integer eventCount; private Integer noticeCount; + + private List lineList; + private List eventList; + private List noticeList; } diff --git a/event_smart/src/main/java/com/njcn/gather/event/transientes/service/impl/LargeScreenCountServiceImpl.java b/event_smart/src/main/java/com/njcn/gather/event/transientes/service/impl/LargeScreenCountServiceImpl.java index a102a3c2..2a7e58ff 100644 --- a/event_smart/src/main/java/com/njcn/gather/event/transientes/service/impl/LargeScreenCountServiceImpl.java +++ b/event_smart/src/main/java/com/njcn/gather/event/transientes/service/impl/LargeScreenCountServiceImpl.java @@ -19,7 +19,9 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.gather.event.devcie.mapper.PqLineMapper; import com.njcn.gather.event.devcie.mapper.PqLinedetailMapper; +import com.njcn.gather.event.devcie.pojo.dto.DeviceDTO; import com.njcn.gather.event.devcie.pojo.dto.LedgerBaseInfoDTO; +import com.njcn.gather.event.devcie.pojo.dto.SubstationDTO; import com.njcn.gather.event.devcie.pojo.po.PqLinedetail; import com.njcn.gather.event.transientes.pojo.param.LargeScreenCountParam; import com.njcn.gather.event.devcie.pojo.po.PqDevice; @@ -68,6 +70,7 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { private final PqsDeptslineService pqsDeptslineService; private final PqsDeptsService pqsDeptsService; private final PqLineService pqLineService; + private final PqSubstationService pqSubstationService; private final PqDeviceService pqDeviceService; private final PqsEventdetailService pqsEventdetailService; private final PqLineMapper pqLineMapper; @@ -105,7 +108,9 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { pqLineList.addAll(temp); } //统计总数 - long allSubCount = pqLineList.stream().map(PqLine::getSubIndex).distinct().count(); + List allLineIds = pqLineList.stream().map(PqLine::getLineIndex).collect(Collectors.toList()); + List allSubList = pqLineList.stream().map(PqLine::getSubIndex).distinct().collect(Collectors.toList()); + long allSubCount =allSubList.stream().count(); List devList = pqLineList.stream().map(PqLine::getDevIndex).distinct().collect(Collectors.toList()); long allDevCount = devList.stream().count(); @@ -114,10 +119,14 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { List list = pqDeviceService.lambdaQuery().in(PqDevice::getDevIndex, devList).eq(PqDevice::getDevflag, 0).list(); List runDevList = list.stream().map(PqDevice::getDevIndex).collect(Collectors.toList()); long runDevCount = runDevList.stream().count(); - long runSubCount = list.stream().map(PqDevice::getSubIndex).distinct().count(); - List runLineList = pqLineService.lambdaQuery().in(PqLine::getDevIndex, runDevList).list(); + List runSubList = list.stream().map(PqDevice::getSubIndex).distinct().collect(Collectors.toList()); + long runSubCount = runSubList.stream().count(); + List runLineList = pqLineList.stream().filter(temp->runDevList.contains(temp.getDevIndex())).map(PqLine::getLineIndex).collect(Collectors.toList()); + long runLineCount = runLineList.stream().count(); + + ledgerCountVO.setAllSubCount(allSubCount); ledgerCountVO.setAllDevCount(allDevCount); ledgerCountVO.setAllLineCount(allLineCount); @@ -125,7 +134,15 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { ledgerCountVO.setRunSubCount(runSubCount); ledgerCountVO.setRunLineCount(runLineCount); - + List ledgerBaseInfoDTOS = pqLineService.queryListByIds(allLineIds); + ledgerBaseInfoDTOS.stream().forEach(temp->temp.setRunFlag(runLineList.contains(temp.getLineId())?1:0)); + ledgerCountVO.setAllLineList(ledgerBaseInfoDTOS); + List deviceDTOS = pqDeviceService.queryListByIds(devList); + deviceDTOS.forEach(temp->temp.setRunFlag(runDevList.contains(temp.getDevId())?1:0)); + ledgerCountVO.setAllDevList(deviceDTOS); + List substationDTOS = pqSubstationService.queryListByIds(allSubList); + substationDTOS.forEach(temp->temp.setRunFlag(runSubList.contains(temp.getStationId())?1:0)); + ledgerCountVO.setAllSubList(substationDTOS); return ledgerCountVO; } @@ -133,9 +150,23 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { public AlarmAnalysisVO alarmAnalysis(LargeScreenCountParam largeScreenCountParam) { AlarmAnalysisVO alarmAnalysisVO = new AlarmAnalysisVO(); //起始时间 - String startTime = DateUtil.format(DateUtil.beginOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER); + LocalDateTime startTime; //结束时间 - String endTime = DateUtil.format(DateUtil.endOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER); + LocalDateTime endTime; + if (largeScreenCountParam.getType() == 3) { + //起始时间 + startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + //结束时间 + endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + } else if (largeScreenCountParam.getType() == 4) { + //起始时间 + startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfWeek(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + //结束时间 + endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfWeek(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + } else { + throw new BusinessException("统计类型有误类型"); + } + //根据用户获取当前部门及子部门id List deptAndChildren = pqsDeptsService.findDeptAndChildren(largeScreenCountParam.getDeptId()); //获取对应监测点id @@ -150,13 +181,13 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { List> listIds = CollUtil.split(deptslineIds,1000); for(List itemIds : listIds){ List temp = pqsEventdetailService.lambdaQuery() - .between(PqsEventdetail::getTimeid, LocalDateTimeUtil.parse(startTime,DatePattern.NORM_DATETIME_FORMATTER), LocalDateTimeUtil.parse(endTime,DatePattern.NORM_DATETIME_FORMATTER)) + .between(PqsEventdetail::getTimeid,startTime, endTime) .in(PqsEventdetail::getLineid,listIds).list(); eventdetails.addAll(temp); } }else { List temp = pqsEventdetailService.lambdaQuery() - .between(PqsEventdetail::getTimeid, LocalDateTimeUtil.parse(startTime,DatePattern.NORM_DATETIME_FORMATTER), LocalDateTimeUtil.parse(endTime,DatePattern.NORM_DATETIME_FORMATTER)) + .between(PqsEventdetail::getTimeid, startTime, endTime) .in(PqsEventdetail::getLineid,deptslineIds).list(); eventdetails.addAll(temp); } @@ -308,9 +339,22 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { Page pqsEventdetailPage = new Page<>(largeScreenCountParam.getPageNum(), largeScreenCountParam.getPageSize()); //起始时间 - LocalDateTime startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + LocalDateTime startTime; //结束时间 - LocalDateTime endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + LocalDateTime endTime; + if (largeScreenCountParam.getType() == 3) { + //起始时间 + startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + //结束时间 + endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + } else if (largeScreenCountParam.getType() == 4) { + //起始时间 + startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfWeek(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + //结束时间 + endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfWeek(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + } else { + throw new BusinessException("统计类型有误类型"); + } //根据用户获取当前部门及子部门id List deptAndChildren = pqsDeptsService.findDeptAndChildren(largeScreenCountParam.getDeptId()); //获取对应监测点id @@ -450,9 +494,22 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { public List mapCount(LargeScreenCountParam largeScreenCountParam) { List result = new ArrayList<>(); //起始时间 - LocalDateTime startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + LocalDateTime startTime; //结束时间 - LocalDateTime endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + LocalDateTime endTime; + if (largeScreenCountParam.getType() == 3) { + //起始时间 + startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + //结束时间 + endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfMonth(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + } else if (largeScreenCountParam.getType() == 4) { + //起始时间 + startTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.beginOfWeek(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + //结束时间 + endTime = LocalDateTimeUtil.parse(DateUtil.format(DateUtil.endOfWeek(new Date()), DatePattern.NORM_DATETIME_FORMATTER), DatePattern.NORM_DATETIME_FORMATTER); + } else { + throw new BusinessException("统计类型有误类型"); + } //根据用户获取当前部门及子部门id List deptAndChildren = pqsDeptsService.findDeptAndChildren(largeScreenCountParam.getDeptId()); deptAndChildren.remove(largeScreenCountParam.getDeptId()); @@ -470,17 +527,23 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { mapCountVO.setDeptsIndex(k); mapCountVO.setDeptsName(stringPqsDeptsMap.get(k).getDeptsname()); mapCountVO.setLineCount(v.size()); - + List ledgerBaseInfoDTOS = pqLineService.queryListByIds(v.stream().map(PqsDeptsline::getLineIndex).collect(Collectors.toList())); + mapCountVO.setLineList(ledgerBaseInfoDTOS); List deptslineIds = v.stream().map(PqsDeptsline::getLineIndex).collect(Collectors.toList()); + List eventdetails = pqsEventdetailService.lambdaQuery() .between(PqsEventdetail::getTimeid, startTime, endTime) .in(PqsEventdetail::getLineid, deptslineIds).list(); mapCountVO.setEventCount(eventdetails.size()); - List noticeEvent = eventdetails.stream().filter(temp -> Objects.equals(temp.getNoticeFlag(), 1)).collect(Collectors.toList()); - - - mapCountVO.setNoticeCount(noticeEvent.size()); + mapCountVO.setEventList(eventdetails); + List eveIdndex = eventdetails.stream().map(PqsEventdetail::getEventdetailIndex).collect(Collectors.toList()); + List temp = new ArrayList<>(); + if(!CollectionUtils.isEmpty(eveIdndex)){ + temp = msgEventInfoService.lambdaQuery().in(MsgEventInfo::getEventIndex,eveIdndex).list(); + } + mapCountVO.setNoticeCount(temp.size()); + mapCountVO.setNoticeList(temp); result.add(mapCountVO); }); return result; @@ -573,4 +636,6 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService { } + + }