二次版本提交
This commit is contained in:
@@ -252,4 +252,14 @@ public class LargeScreenCountController extends BaseController {
|
|||||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OperateInfo(operateType= OperateType.UPDATE)
|
||||||
|
@PostMapping("/userEventList")
|
||||||
|
@ApiOperation("查询暂降事件")
|
||||||
|
@ApiImplicitParam(name = "eventIds", value = "暂降事件id", required = true)
|
||||||
|
public HttpResult<Page<EventDetailVO>> userEventList(@RequestBody LargeScreenCountParam largeScreenCountParam) {
|
||||||
|
String methodDescribe = getMethodDescribe("userEventList");
|
||||||
|
Page<EventDetailVO> result = largeScreenCountService.userEventList(largeScreenCountParam);
|
||||||
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import lombok.Data;
|
|||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Description:
|
* Description:
|
||||||
@@ -41,4 +42,6 @@ public class LargeScreenCountParam extends BaseParam {
|
|||||||
private String bigObjType;
|
private String bigObjType;
|
||||||
@ApiModelProperty(value = "字典树 对象大小")
|
@ApiModelProperty(value = "字典树 对象大小")
|
||||||
private String smallObjType;
|
private String smallObjType;
|
||||||
|
|
||||||
|
private List<String> eventIds;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ public class UserLedgerStatisticVO {
|
|||||||
private String code;
|
private String code;
|
||||||
|
|
||||||
private Integer count;
|
private Integer count;
|
||||||
|
private List<String> eventList;
|
||||||
|
|
||||||
private List<Inner> children;
|
private List<Inner> children;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,4 +60,6 @@ public interface LargeScreenCountService {
|
|||||||
Page<EventDetailVO> eventPage(LargeScreenCountParam largeScreenCountParam);
|
Page<EventDetailVO> eventPage(LargeScreenCountParam largeScreenCountParam);
|
||||||
|
|
||||||
Page<DeviceDTO> devicePage(LargeScreenCountParam largeScreenCountParam);
|
Page<DeviceDTO> devicePage(LargeScreenCountParam largeScreenCountParam);
|
||||||
|
|
||||||
|
Page<EventDetailVO> userEventList(LargeScreenCountParam largeScreenCountParam);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -263,8 +263,9 @@ public class EventRightServiceImpl implements EventRightService {
|
|||||||
inner.setCustomId(item.getId());
|
inner.setCustomId(item.getId());
|
||||||
inner.setName(item.getCustomerName());
|
inner.setName(item.getCustomerName());
|
||||||
List<Integer> LIds = assMap.get(item.getId());
|
List<Integer> LIds = assMap.get(item.getId());
|
||||||
long count = eventList.stream().filter(it->LIds.contains(it.getLineid())).count();
|
List<String> eventIds = eventList.stream().filter(it -> LIds.contains(it.getLineid())).map(PqsEventdetail::getEventdetailIndex).collect(Collectors.toList());
|
||||||
inner.setCount((int)count);
|
inner.setEventList(eventIds);
|
||||||
|
inner.setCount(eventIds.size());
|
||||||
result.add(inner);
|
result.add(inner);
|
||||||
});
|
});
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -1104,9 +1104,67 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return pqsEventdetailPage;
|
return pqsEventdetailPage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Page<EventDetailVO> userEventList(LargeScreenCountParam largeScreenCountParam) {
|
||||||
|
Page<PqsEventdetail> pqsEventdetailPage = new Page<>(largeScreenCountParam.getPageNum(), largeScreenCountParam.getPageSize());
|
||||||
|
|
||||||
|
List<String> eventIds = largeScreenCountParam.getEventIds();
|
||||||
|
if (CollectionUtils.isEmpty(eventIds)){
|
||||||
|
return new Page<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QueryWrapper<PqsEventdetail> queryWrapper = new QueryWrapper<>();
|
||||||
|
if (eventIds.size()>1000) {
|
||||||
|
List<List<String>> idPartitions = CollUtil.split(eventIds,1000);
|
||||||
|
|
||||||
|
queryWrapper.lambda()
|
||||||
|
.and(ew->{
|
||||||
|
for(List<String> pList: idPartitions){
|
||||||
|
ew.or(w->w.in(PqsEventdetail::getEventdetailIndex, pList));
|
||||||
|
}
|
||||||
|
}).orderByDesc(PqsEventdetail::getTimeid);
|
||||||
|
|
||||||
|
|
||||||
|
} else {
|
||||||
|
queryWrapper.lambda()
|
||||||
|
.in(PqsEventdetail::getEventdetailIndex, eventIds)
|
||||||
|
.orderByDesc(PqsEventdetail::getTimeid);
|
||||||
|
}
|
||||||
|
IPage<PqsEventdetail> list = pqsEventdetailService.getBaseMapper().selectPage(pqsEventdetailPage,queryWrapper);
|
||||||
|
List<Integer> indexIds = list.getRecords().stream().map(PqsEventdetail::getLineid).collect(Collectors.toList());
|
||||||
|
List<LedgerBaseInfoDTO> pqLineList = pqLineService.getBaseLineInfo(indexIds);
|
||||||
|
Map<Integer,LedgerBaseInfoDTO> ledgerBaseInfoDTOMap = pqLineList.stream().collect(Collectors.toMap(LedgerBaseInfoDTO::getLineId, Function.identity()));
|
||||||
|
|
||||||
|
List<EventDetailVO> collect = list.getRecords().stream().map(temp -> {
|
||||||
|
EventDetailVO eventDetailVO = new EventDetailVO();
|
||||||
|
eventDetailVO.setEventdetail_index(temp.getEventdetailIndex());
|
||||||
|
eventDetailVO.setTimeid(temp.getTimeid());
|
||||||
|
eventDetailVO.setMs(temp.getMs());
|
||||||
|
eventDetailVO.setWavetype(temp.getWavetype().toString());
|
||||||
|
eventDetailVO.setPersisttime(BigDecimal.valueOf(temp.getPersisttime() / 1000).setScale(3, RoundingMode.HALF_UP).toString());
|
||||||
|
eventDetailVO.setEventvalue(temp.getEventvalue());
|
||||||
|
eventDetailVO.setLookFlag(temp.getLookFlag());
|
||||||
|
eventDetailVO.setNoticeFlag(temp.getNoticeFlag());
|
||||||
|
if(ledgerBaseInfoDTOMap.containsKey(temp.getLineid())){
|
||||||
|
LedgerBaseInfoDTO ledgerBaseInfoDTO = ledgerBaseInfoDTOMap.get(temp.getLineid());
|
||||||
|
eventDetailVO.setLineid(ledgerBaseInfoDTO.getLineId());
|
||||||
|
eventDetailVO.setPointname(ledgerBaseInfoDTO.getLineName());
|
||||||
|
eventDetailVO.setBdname(ledgerBaseInfoDTO.getStationName());
|
||||||
|
eventDetailVO.setObjName(ledgerBaseInfoDTO.getObjName());
|
||||||
|
}
|
||||||
|
return eventDetailVO;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
Page<EventDetailVO> returnpage = new Page<>(largeScreenCountParam.getPageNum(), largeScreenCountParam.getPageSize());
|
||||||
|
returnpage.setRecords(collect);
|
||||||
|
returnpage.setTotal(list.getTotal());
|
||||||
|
return returnpage;
|
||||||
|
}
|
||||||
|
|
||||||
private List<EventDetailVO> change(List<PqsEventdetail> list,List<MsgEventInfo> handleMsg){
|
private List<EventDetailVO> change(List<PqsEventdetail> list,List<MsgEventInfo> handleMsg){
|
||||||
List<EventDetailVO> result = new ArrayList<>();
|
List<EventDetailVO> result = new ArrayList<>();
|
||||||
if(CollectionUtils.isEmpty(list)){
|
if(CollectionUtils.isEmpty(list)){
|
||||||
|
|||||||
Reference in New Issue
Block a user