bug修复

This commit is contained in:
guo 2023-12-26 12:53:06 +08:00
parent 51a0837b26
commit f56f59c0a1

View File

@ -10,7 +10,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.execption.OpenAlertException;
import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.project.entity.ProjectVideoConfig;
import com.zhgd.xmgl.modules.project.mapper.ProjectVideoConfigMapper;
@ -23,7 +22,6 @@ import com.zhgd.xmgl.modules.rt.mapper.*;
import com.zhgd.xmgl.modules.rt.service.IRtWorkTicketService;
import com.zhgd.xmgl.modules.video.entity.VideoItem;
import com.zhgd.xmgl.modules.video.mapper.VideoItemMapper;
import com.zhgd.xmgl.modules.video.service.IVideoItemService;
import com.zhgd.xmgl.modules.video.service.impl.VideoItemServiceImpl;
import com.zhgd.xmgl.util.HikVideoUtil;
import com.zhgd.xmgl.util.PageUtil;
@ -31,12 +29,10 @@ import com.zhgd.xmgl.util.RefUtil;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.AsyncResult;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.concurrent.Future;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -72,14 +68,14 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap);
Page<RtWorkTicket> page = PageUtil.getPage(paramMap);
IPage<RtWorkTicket> pageList = baseMapper.queryList(page, queryWrapper);
pageList.setRecords(dealList(pageList.getRecords()));
pageList.setRecords(dealList(pageList.getRecords(), paramMap));
return pageList;
}
@Override
public List<RtWorkTicket> queryList(HashMap<String, Object> paramMap) {
QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap);
return dealList(baseMapper.queryList(queryWrapper));
return dealList(baseMapper.queryList(queryWrapper), paramMap);
}
private QueryWrapper<RtWorkTicket> getQueryWrapper(HashMap<String, Object> paramMap) {
@ -92,13 +88,27 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
return queryWrapper;
}
private List<RtWorkTicket> dealList(List<RtWorkTicket> list) {
private List<RtWorkTicket> dealList(List<RtWorkTicket> list, HashMap<String, Object> paramMap) {
List<Long> ids = list.stream().map(RtWorkTicket::getId).collect(Collectors.toList());
ProjectVideoConfig videoConfig = videoItemService.getEnableProjectVideoConfigByProjectSn(paramMap);
if (CollUtil.isNotEmpty(ids)) {
List<RtWorkTicketToVideoItem> toVideoItems = rtWorkTicketToVideoItemMapper.queryVideoItemList(ids);
Map<Long, RtWorkTicketToVideoItem> ticketMap = toVideoItems.stream().collect(Collectors.toMap(RtWorkTicketToVideoItem::getRtWorkTicketId, Function.identity()));
for (RtWorkTicket rtWorkTicket : list) {
rtWorkTicket.setVideoList(Optional.ofNullable(ticketMap.get(rtWorkTicket.getId())).map(RtWorkTicketToVideoItem::getVideoItems).orElse(null));
if (videoConfig != null && Objects.equals(videoConfig.getVideoType(), 3)) {
List<VideoItem> videoList = rtWorkTicket.getVideoList();
if (CollUtil.isNotEmpty(videoList)) {
for (VideoItem videoItem : videoList) {
//设置视频
if (StringUtils.isNotEmpty(videoItem.getSerialNumber())) {
String url = HikVideoUtil.callPostApiGetPreviewURL(videoItem.getSerialNumber(), "hls", null, videoConfig.getAccount(),
videoConfig.getPassword(), videoConfig.getAppId(), videoConfig.getAppSecret());
videoItem.setPlayUrl(url);
}
}
}
}
}
}
return list;