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.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.execption.OpenAlertException; 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.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.project.entity.ProjectVideoConfig; import com.zhgd.xmgl.modules.project.entity.ProjectVideoConfig;
import com.zhgd.xmgl.modules.project.mapper.ProjectVideoConfigMapper; 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.rt.service.IRtWorkTicketService;
import com.zhgd.xmgl.modules.video.entity.VideoItem; import com.zhgd.xmgl.modules.video.entity.VideoItem;
import com.zhgd.xmgl.modules.video.mapper.VideoItemMapper; 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.modules.video.service.impl.VideoItemServiceImpl;
import com.zhgd.xmgl.util.HikVideoUtil; import com.zhgd.xmgl.util.HikVideoUtil;
import com.zhgd.xmgl.util.PageUtil; 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.collections.MapUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.AsyncResult;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.*; import java.util.*;
import java.util.concurrent.Future;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -72,14 +68,14 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap); QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap);
Page<RtWorkTicket> page = PageUtil.getPage(paramMap); Page<RtWorkTicket> page = PageUtil.getPage(paramMap);
IPage<RtWorkTicket> pageList = baseMapper.queryList(page, queryWrapper); IPage<RtWorkTicket> pageList = baseMapper.queryList(page, queryWrapper);
pageList.setRecords(dealList(pageList.getRecords())); pageList.setRecords(dealList(pageList.getRecords(), paramMap));
return pageList; return pageList;
} }
@Override @Override
public List<RtWorkTicket> queryList(HashMap<String, Object> paramMap) { public List<RtWorkTicket> queryList(HashMap<String, Object> paramMap) {
QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(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) { private QueryWrapper<RtWorkTicket> getQueryWrapper(HashMap<String, Object> paramMap) {
@ -92,13 +88,27 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
return queryWrapper; 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()); List<Long> ids = list.stream().map(RtWorkTicket::getId).collect(Collectors.toList());
ProjectVideoConfig videoConfig = videoItemService.getEnableProjectVideoConfigByProjectSn(paramMap);
if (CollUtil.isNotEmpty(ids)) { if (CollUtil.isNotEmpty(ids)) {
List<RtWorkTicketToVideoItem> toVideoItems = rtWorkTicketToVideoItemMapper.queryVideoItemList(ids); List<RtWorkTicketToVideoItem> toVideoItems = rtWorkTicketToVideoItemMapper.queryVideoItemList(ids);
Map<Long, RtWorkTicketToVideoItem> ticketMap = toVideoItems.stream().collect(Collectors.toMap(RtWorkTicketToVideoItem::getRtWorkTicketId, Function.identity())); Map<Long, RtWorkTicketToVideoItem> ticketMap = toVideoItems.stream().collect(Collectors.toMap(RtWorkTicketToVideoItem::getRtWorkTicketId, Function.identity()));
for (RtWorkTicket rtWorkTicket : list) { for (RtWorkTicket rtWorkTicket : list) {
rtWorkTicket.setVideoList(Optional.ofNullable(ticketMap.get(rtWorkTicket.getId())).map(RtWorkTicketToVideoItem::getVideoItems).orElse(null)); 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; return list;