This commit is contained in:
2025-07-31 17:55:46 +08:00
parent 6c88c54982
commit ee96b8e56b
3 changed files with 17 additions and 3 deletions

View File

@@ -31,6 +31,9 @@ public class UserLedgerStatisticVO {
@Data
public static class Inner{
private String customId;
private String name;
private String code;

View File

@@ -37,6 +37,10 @@ public class MyUserDetailsService implements UserDetailsService {
public MyUserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
if(username.equals("system_event")){
return new MyUserDetails("12345678910","system_event", "@#001njcnpqs","10001",
new ArrayList<>());
}
if(redisUtil.hasKey("event_smart_"+username)){

View File

@@ -157,6 +157,7 @@ public class EventRightServiceImpl implements EventRightService {
Page<EventDetailVO> result = new Page<>(PageFactory.getPageNum(param),PageFactory.getPageSize(param));
List<Integer> deptLineIds = commGeneralService.getLineIdsByRedis(param.getDeptId());
//获取用户监测点关系符合部门监测点的
List<PqUserLineAssPO> assList = pqUserLineAssMapper.selectList(new LambdaQueryWrapper<PqUserLineAssPO>().in(PqUserLineAssPO::getLineIndex,deptLineIds));
List<String> userIds = assList.stream().map(PqUserLineAssPO::getUserIndex).distinct().collect(Collectors.toList());
@@ -170,10 +171,12 @@ public class EventRightServiceImpl implements EventRightService {
//对象大类不为空
lambdaQueryWrapper.eq(PqUserLedgerPO::getSmallObjType,param.getSmallObjType());
}
//获取符合条件的用户
List<PqUserLedgerPO> pqUserLedgerPOList = pqUserLedgerMapper.selectList(lambdaQueryWrapper);
Map<String,PqUserLedgerPO> pqMap = pqUserLedgerPOList.stream().collect(Collectors.toMap(PqUserLedgerPO::getId,Function.identity()));
List<String> pUserIds = pqUserLedgerPOList.stream().map(PqUserLedgerPO::getId).collect(Collectors.toList());
List<Integer> lineUseList = assList.stream().filter(it->pUserIds.contains(it.getUserIndex())).map(PqUserLineAssPO::getLineIndex).distinct().collect(Collectors.toList());
List<PqUserLineAssPO> assListLast = assList.stream().filter(it->pUserIds.contains(it.getUserIndex())).collect(Collectors.toList());
List<Integer> lineUseList = assListLast.stream().map(PqUserLineAssPO::getLineIndex).distinct().collect(Collectors.toList());
//查询时间段的暂降事件
LambdaQueryWrapper<PqsEventdetail> eventQuery = new LambdaQueryWrapper<>();
@@ -199,18 +202,20 @@ public class EventRightServiceImpl implements EventRightService {
List<Integer> ids = temResultList.stream().map(PqsEventdetail::getLineid).distinct().collect(Collectors.toList());
List<LedgerBaseInfoDTO> dtoList = pqLineService.getBaseLineInfo(ids);
Map<Integer,LedgerBaseInfoDTO> lineMap = dtoList.stream().collect(Collectors.toMap(LedgerBaseInfoDTO::getLineId,Function.identity()));
Map<Integer,List<String>> temMap = assList.stream().filter(it->ids.contains(it.getLineIndex())).collect(Collectors.groupingBy(PqUserLineAssPO::getLineIndex,Collectors.mapping(PqUserLineAssPO::getUserIndex,Collectors.toList())));
Map<Integer,List<String>> temMap = assListLast.stream().filter(it->ids.contains(it.getLineIndex())).collect(Collectors.groupingBy(PqUserLineAssPO::getLineIndex,Collectors.mapping(PqUserLineAssPO::getUserIndex,Collectors.toList())));
List<EventDetailVO> resultList = new ArrayList<>();
for(PqsEventdetail pqsEventdetail : temResultList){
EventDetailVO eventDetailVO = new EventDetailVO();
BeanUtil.copyProperties(pqsEventdetail,eventDetailVO);
List<String> userTemIds = temMap.get(pqsEventdetail.getLineid());
String objName = userTemIds.stream().peek(it->pqMap.get(it).getCustomerName()).collect(Collectors.joining(StrUtil.COMMA));
String objName = userTemIds.stream().map(it->pqMap.get(it).getCustomerName()).collect(Collectors.joining(StrUtil.COMMA));
eventDetailVO.setObjName(objName);
LedgerBaseInfoDTO dto = lineMap.get(pqsEventdetail.getLineid());
eventDetailVO.setBdname(dto.getStationName());
eventDetailVO.setLineid(dto.getLineId());
eventDetailVO.setPointname(dto.getLineName());
eventDetailVO.setEventdetail_index(pqsEventdetail.getEventdetailIndex());
resultList.add(eventDetailVO);
}
result.setTotal(page.getTotal());
@@ -244,6 +249,7 @@ public class EventRightServiceImpl implements EventRightService {
if(CollUtil.isEmpty(eventList)){
poList.forEach(item->{
UserLedgerStatisticVO.Inner inner = new UserLedgerStatisticVO.Inner();
inner.setCustomId(item.getId());
inner.setName(item.getCustomerName());
inner.setCount(0);
result.add(inner);
@@ -254,6 +260,7 @@ public class EventRightServiceImpl implements EventRightService {
Map<String,List<Integer>> assMap = assPOList.stream().collect(Collectors.groupingBy(PqUserLineAssPO::getUserIndex,Collectors.mapping(PqUserLineAssPO::getLineIndex,Collectors.toList())));
poList.forEach(item->{
UserLedgerStatisticVO.Inner inner = new UserLedgerStatisticVO.Inner();
inner.setCustomId(item.getId());
inner.setName(item.getCustomerName());
List<Integer> LIds = assMap.get(item.getId());
long count = eventList.stream().filter(it->LIds.contains(it.getLineid())).count();