package com.fzzy.security.manager; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fzzy.common.manager.CommonManager; import com.fzzy.igds.data.IgdsBaseParam; import com.fzzy.igds.domain.Camera; import com.fzzy.igds.domain.SnapRecord; import com.fzzy.igds.service.SecCameraService; import com.fzzy.igds.service.SnapRecordService; import com.fzzy.igds.utils.ContextUtil; import com.ruoyi.common.utils.StringUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; @Slf4j @Component public class SnapRecordManager { @Resource private SnapRecordService snapRecordService; @Resource private CommonManager commonManager; @Resource private SecCameraService secCameraService; /** * 分页查询数据 * * @param param * @return */ public Page pageData(IgdsBaseParam param) { if (StringUtils.isEmpty(param.getCompanyId())) { param.setCompanyId(ContextUtil.getCompanyId()); } Page corePage = new Page<>(param.getPage(), param.getLimit()); snapRecordService.listPage(corePage, param); if (null == corePage.getRecords() || corePage.getRecords().isEmpty()) { return corePage.setRecords(new ArrayList<>()); } //获取监控设备 List cameras = secCameraService.listCamera(ContextUtil.getCompanyId(), null); //判断文件是否存在 for (SnapRecord record : corePage.getRecords()) { record.setImgName(commonManager.isImgExit(record.getImgName(), null)); //映射监控设备名称 List collect = cameras.stream().filter(camera -> camera.getId().equals(record.getCameraId())).collect(Collectors.toList()); if (!collect.isEmpty()) { record.setCameraId(collect.get(0).getName()); } } return corePage; } }