|
|
|
@ -1,11 +1,29 @@
|
|
|
|
|
package cn.jyjz.xiaoyao.ocr.service.impl;
|
|
|
|
|
|
|
|
|
|
import cn.jyjz.flowable.common.ProcessConstant;
|
|
|
|
|
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
|
|
|
|
|
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataDao.OcrTaskchildDubiousFileMapper;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureInfo;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildDubiousFile;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.service.IOcrTaskchildDubiousFileService;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.service.OcrPictureInfoService;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Comparator;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <p>
|
|
|
|
|
* 可疑文件夹 服务实现类
|
|
|
|
@ -17,4 +35,62 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
@Service
|
|
|
|
|
public class OcrTaskchildDubiousFileServiceImpl extends ServiceImpl<OcrTaskchildDubiousFileMapper, OcrTaskchildDubiousFile> implements IOcrTaskchildDubiousFileService {
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
private OcrPictureInfoService pictureInfoService;
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
private OcrTaskchildPictureService ocrTaskchildPictureService;
|
|
|
|
|
/**
|
|
|
|
|
* 分页查询可疑文件夹下的图片信息,并返回对应的状态,相似度,时间值等
|
|
|
|
|
* @param pageNo
|
|
|
|
|
* @param pageSize
|
|
|
|
|
* @param orderbyname
|
|
|
|
|
* @param userToken
|
|
|
|
|
* @param tenantId
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
public Page<OcrTaskChildPictureVo> dubiousfilelist(Integer pageNo, Integer pageSize, String orderbyname, UserToken userToken, String tenantId) {
|
|
|
|
|
|
|
|
|
|
Page<OcrTaskChildPictureVo> objectPage = new Page<>(Integer.valueOf(pageNo),Integer.valueOf(pageSize));
|
|
|
|
|
|
|
|
|
|
//获取可疑文件图片列表
|
|
|
|
|
QueryWrapper<OcrTaskchildDubiousFile> dubiouswrapper = new QueryWrapper<>();
|
|
|
|
|
dubiouswrapper.eq("userid",userToken.getUserid());
|
|
|
|
|
dubiouswrapper.eq("tenantid",tenantId);
|
|
|
|
|
List<OcrTaskchildDubiousFile> list = this.list(dubiouswrapper);
|
|
|
|
|
if(list.size()==0){
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//提取可疑图片列表id
|
|
|
|
|
List<String> pictureIdList = list.stream().map(i -> String.valueOf(i.getPictureId())).collect(Collectors.toList());
|
|
|
|
|
|
|
|
|
|
//获取图片历史对比表数据
|
|
|
|
|
String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批");
|
|
|
|
|
List<OcrTaskChildPictureVo> taskChildPictures = ocrTaskchildPictureService.getPictureHistoryList(new ArrayList<>(pictureIdList), userNodeType);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //获取图片比对结果分数,状态
|
|
|
|
|
// for (OcrTaskChildPictureVo taskChildPicture : taskChildPictures) {
|
|
|
|
|
//// taskChildPicture.setSimilarityScore(Integer.parseInt(jsonObject.getString(taskChildPicture.getPictureId().toString())));
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
//按时间字段排序
|
|
|
|
|
if("desc".equals(orderbyname)){
|
|
|
|
|
taskChildPictures.stream().sorted(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate).reversed()).collect(Collectors.toList());
|
|
|
|
|
}else {
|
|
|
|
|
taskChildPictures.stream().sorted(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate)).collect(Collectors.toList());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<OcrTaskChildPictureVo> records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
|
|
|
|
|
for (OcrTaskChildPictureVo ocrTaskChildPictureVo : records) {
|
|
|
|
|
OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper<OcrPictureInfo>().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId()));
|
|
|
|
|
ocrTaskChildPictureVo.setPictureInfo(one);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
objectPage.setRecords(records);
|
|
|
|
|
objectPage.setTotal(taskChildPictures.size());
|
|
|
|
|
return objectPage;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|