From 62c222321301a40407c105571545798f2b8a15b2 Mon Sep 17 00:00:00 2001 From: LILI <707464720@qq.com> Date: Mon, 1 Apr 2024 18:37:15 +0800 Subject: [PATCH] =?UTF-8?q?fix:1.admin=E8=B4=A6=E5=8F=B7=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E9=97=AE=E9=A2=98=202.=E5=8F=AF=E7=96=91?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E6=90=9C=E7=B4=A2=E8=BF=94=E5=9B=9E=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E5=AD=97=E6=AE=B5=E4=BF=A1=E6=81=AFTODO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MyAuthenticationProvider.java | 2 +- .../OcrTaskchildDubiousFileController.java | 21 ++--- .../IOcrTaskchildDubiousFileService.java | 5 ++ .../OcrTaskchildDubiousFileServiceImpl.java | 76 +++++++++++++++++++ .../mapper/oa/OcrTaskchildPictureMapper.xml | 3 +- 5 files changed, 96 insertions(+), 11 deletions(-) diff --git a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java index 192d9475..38cc06aa 100644 --- a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java +++ b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java @@ -130,7 +130,7 @@ public class MyAuthenticationProvider implements AuthenticationProvider { } boolean tenantStatus = userTokenService.getTenantStatus(agentcode); - if (!tenantStatus) { + if (!"admin".equals(loginname) && !tenantStatus) { throw new AuthenticationServiceException("该租户已被冻结!"); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java index 28a63487..b42ccb15 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java @@ -8,6 +8,7 @@ import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.ocr.dataobject.*; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; +import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -59,9 +60,15 @@ public class OcrTaskchildDubiousFileController { */ @RequestMapping(value = "/dubiousfilelist", method = RequestMethod.GET) public ResultVo dubiousfilelist(HttpServletRequest request, - @RequestParam(value = "pageNo", required = false, defaultValue = "0") int pageNo, - @RequestParam(value = "pageSize", required = false, defaultValue = "10") int pageSize, - @RequestParam(value = "orderbyname", required = true, defaultValue = "0") String orderbyname) { + @RequestParam(value = "pageNo", required = false, defaultValue = "0") Integer pageNo, + @RequestParam(value = "pageSize", required = false, defaultValue = "10") Integer pageSize, + @RequestParam(value = "orderbyname", required = true, defaultValue = "desc") String orderbyname) { + + + String tenantId = request.getHeader("X-Tenant-Id"); + if(StringUtils.isBlank(tenantId)){ + return ResultVoUtil.error("租户主键不能为空"); + } UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); @@ -83,14 +90,10 @@ public class OcrTaskchildDubiousFileController { wrapper.orderByAsc("create_time"); } - - - - - - //执行查询方法 IPage page = ocrpictureservice.page(iPage, wrapper); + //TODO + //Page page = ocrTaskchildDubiousFileService.dubiousfilelist(pageNo,pageSize,orderbyname,userToken,tenantId); return ResultVoUtil.success(page); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java index 43a496a7..50b579a2 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java @@ -1,7 +1,10 @@ package cn.jyjz.xiaoyao.ocr.service; +import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildDubiousFile; +import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; /** @@ -14,4 +17,6 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IOcrTaskchildDubiousFileService extends IService { + Page dubiousfilelist(Integer pageNo, Integer pageSize, String orderbyname, UserToken userToken, String tenantId); + } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java index e58b1dbf..bf7b9e0e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java @@ -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; + /** *

* 可疑文件夹 服务实现类 @@ -17,4 +35,62 @@ import org.springframework.stereotype.Service; @Service public class OcrTaskchildDubiousFileServiceImpl extends ServiceImpl implements IOcrTaskchildDubiousFileService { + @Resource + private OcrPictureInfoService pictureInfoService; + + @Resource + private OcrTaskchildPictureService ocrTaskchildPictureService; + /** + * 分页查询可疑文件夹下的图片信息,并返回对应的状态,相似度,时间值等 + * @param pageNo + * @param pageSize + * @param orderbyname + * @param userToken + * @param tenantId + * @return + */ + @Override + public Page dubiousfilelist(Integer pageNo, Integer pageSize, String orderbyname, UserToken userToken, String tenantId) { + + Page objectPage = new Page<>(Integer.valueOf(pageNo),Integer.valueOf(pageSize)); + + //获取可疑文件图片列表 + QueryWrapper dubiouswrapper = new QueryWrapper<>(); + dubiouswrapper.eq("userid",userToken.getUserid()); + dubiouswrapper.eq("tenantid",tenantId); + List list = this.list(dubiouswrapper); + if(list.size()==0){ + return new Page<>(); + } + + //提取可疑图片列表id + List pictureIdList = list.stream().map(i -> String.valueOf(i.getPictureId())).collect(Collectors.toList()); + + //获取图片历史对比表数据 + String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批"); + List 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 records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); + for (OcrTaskChildPictureVo ocrTaskChildPictureVo : records) { + OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); + ocrTaskChildPictureVo.setPictureInfo(one); + } + + objectPage.setRecords(records); + objectPage.setTotal(taskChildPictures.size()); + return objectPage; + } } diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml index 89dc4167..c1e01598 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml @@ -590,7 +590,8 @@ t1.imgUrl, ifnull(t3.STATSHIS, 1) historyStates, t1.submit_date_timestamp submitDateTimestamp, - t1.photo_date_timestamp photoDateTimestamp + t1.photo_date_timestamp photoDateTimestamp, + t1.similarity_score similarityScore FROM ocr_picture t1 LEFT JOIN ocr_taskchild_picture t2 on t1.ID = t2.PICTUREID -- 2.39.3