超过1000条报错事件处理
This commit is contained in:
@@ -224,7 +224,7 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService {
|
|||||||
msgEventInfoList.addAll(temp);
|
msgEventInfoList.addAll(temp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
msgEventInfoList = msgEventInfoList.stream().sorted(Comparator.comparing(MsgEventInfo::getSendTime,Comparator.reverseOrder())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -548,9 +548,18 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean lookEvent(List<String> ids) {
|
public boolean lookEvent(List<String> ids) {
|
||||||
LambdaUpdateWrapper<PqsEventdetail> updateWrapper = new LambdaUpdateWrapper<>();
|
if(ids.size()>1000){
|
||||||
updateWrapper.in(PqsEventdetail::getEventdetailIndex, ids).set(PqsEventdetail::getLookFlag, DataStateEnum.ENABLE.getCode());
|
List<List<String>> eventIds = CollUtil.split(ids,1000);
|
||||||
pqsEventdetailService.update(updateWrapper);
|
for(List<String> needIds : eventIds){
|
||||||
|
LambdaUpdateWrapper<PqsEventdetail> updateWrapper = new LambdaUpdateWrapper<>();
|
||||||
|
updateWrapper.in(PqsEventdetail::getEventdetailIndex, needIds).set(PqsEventdetail::getLookFlag, DataStateEnum.ENABLE.getCode());
|
||||||
|
pqsEventdetailService.update(updateWrapper);
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
LambdaUpdateWrapper<PqsEventdetail> updateWrapper = new LambdaUpdateWrapper<>();
|
||||||
|
updateWrapper.in(PqsEventdetail::getEventdetailIndex, ids).set(PqsEventdetail::getLookFlag, DataStateEnum.ENABLE.getCode());
|
||||||
|
pqsEventdetailService.update(updateWrapper);
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -691,6 +700,12 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService {
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public boolean msgHandle(MessageEventFeedbackParam messageEventFeedbackParam) {
|
public boolean msgHandle(MessageEventFeedbackParam messageEventFeedbackParam) {
|
||||||
|
|
||||||
|
PqsEventdetail pqsEventdetail = pqsEventdetailService.lambdaQuery().eq(PqsEventdetail::getEventdetailIndex,messageEventFeedbackParam.getEventIndex()).one();
|
||||||
|
if(Objects.isNull(pqsEventdetail.getLookFlag())|| pqsEventdetail.getLookFlag() == 0){
|
||||||
|
throw new BusinessException(CommonResponseEnum.FAIL,"当前事件暂未处理,请先处理!");
|
||||||
|
}
|
||||||
|
|
||||||
MessageEventFeedback messageEventFeedback = messageEventFeedbackService.lambdaQuery().eq(MessageEventFeedback::getEventIndex, messageEventFeedbackParam.getEventIndex()).one();
|
MessageEventFeedback messageEventFeedback = messageEventFeedbackService.lambdaQuery().eq(MessageEventFeedback::getEventIndex, messageEventFeedbackParam.getEventIndex()).one();
|
||||||
if (Objects.nonNull(messageEventFeedback)) {
|
if (Objects.nonNull(messageEventFeedback)) {
|
||||||
throw new BusinessException(CommonResponseEnum.FAIL,"请勿重复处理!");
|
throw new BusinessException(CommonResponseEnum.FAIL,"请勿重复处理!");
|
||||||
@@ -700,7 +715,7 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService {
|
|||||||
po.setId(IdUtil.simpleUUID());
|
po.setId(IdUtil.simpleUUID());
|
||||||
messageEventFeedbackService.save(po);
|
messageEventFeedbackService.save(po);
|
||||||
pqsEventdetailService.lambdaUpdate().set(PqsEventdetail::getNoticeFlag,DataStateEnum.ENABLE.getCode()).eq(PqsEventdetail::getEventdetailIndex,messageEventFeedbackParam.getEventIndex()).update();
|
pqsEventdetailService.lambdaUpdate().set(PqsEventdetail::getNoticeFlag,DataStateEnum.ENABLE.getCode()).eq(PqsEventdetail::getEventdetailIndex,messageEventFeedbackParam.getEventIndex()).update();
|
||||||
msgEventInfoService.lambdaUpdate().set(MsgEventInfo::getIsHandle,DataStateEnum.ENABLE.getCode()).eq(MsgEventInfo::getEventIndex,messageEventFeedbackParam.getEventIndex());
|
msgEventInfoService.lambdaUpdate().set(MsgEventInfo::getIsHandle,DataStateEnum.ENABLE.getCode()).eq(MsgEventInfo::getEventIndex,messageEventFeedbackParam.getEventIndex()).update();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user