diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java index 0b871ef2..6a0b96dc 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java @@ -61,7 +61,7 @@ public class OcrAiApprovalTools { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); - ResultVo toolscount = iocrsearchhistoryservice.toolscount(tenantId,userToken.getUserid(),request); + ResultVo toolscount = iocrsearchhistoryservice.toolscount(tenantId,userToken,request); return toolscount; } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java index 418307a6..8b295f38 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java @@ -50,12 +50,12 @@ public interface OcrTaskchildPictureMybatisDao extends BaseMapper queryPendingApproval(@Param("loginName") String loginName, @Param("tenantId") String tenantId); + public List queryPendingApproval(@Param("loginName") String loginName, @Param("tenantId") String tenantId, @Param("taskNode") String taskNode); /** * 查询当前用户已审批任务 */ - public List queryExamineApprove(@Param("tenantId") String tenantId, @Param("id") Long id); + public List queryExamineApprove(@Param("tenantId") String tenantId, @Param("formIdList") List formIdList); /** * 查询我的待办、已经办理任务数量 * @param query diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java index 41e32894..9b7c3f2d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java @@ -21,7 +21,7 @@ import java.util.Map; public interface IOcrSearchHistoryService extends IService { Map>> selectsearch(String search, String assignee, String userId, String tenantId); - ResultVo toolscount(String tenantid, String userId, HttpServletRequest request); + ResultVo toolscount(String tenantid, UserToken userToken, HttpServletRequest request); ResultVo toolsTaskApprovalCount(String tenantid, UserToken userToken, HttpServletRequest request); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index f2b69da7..94d62096 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -113,8 +113,9 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl> resultVo = null; + String userId = userToken.getUserid(); try { //系统中记录的ai统计租户id @@ -126,16 +127,42 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl oaUserApproveVoList = taskchildPictureMybatisDao.queryApprovalNode(userId); + List ocrTaskchildPictureApproList = new ArrayList<>(); + //定义第一审批节点 + String taskNodeOne = ""; + if (oaUserApproveVoList.size() > 0) { + Map formIdToVoMap = new HashMap<>(); + for (OaUserApproveVo vo : oaUserApproveVoList) { + Long formId = vo.getFormId(); + Integer taskNode = vo.getTaskNode(); + if (!formIdToVoMap.containsKey(formId) || taskNode < formIdToVoMap.get(formId).getTaskNode()) { + formIdToVoMap.put(formId, vo); + } + } + //获取该用户第一节点 + Iterator> iterator = formIdToVoMap.entrySet().iterator(); + Map.Entry firstEntry = iterator.next(); + taskNodeOne = Integer.toString(firstEntry.getValue().getTaskNode()); + //获取已经审批的任务ID + List formIdList = new ArrayList<>(formIdToVoMap.keySet()); + //查询该用户第一节点所有待审任务列表 + ocrTaskchildPictureApproList = taskchildPictureMybatisDao.queryPendingApproval(userToken.getLoginname(),tenantid,taskNodeOne); + //查询第一节点已经审批的任务列表数据 + List ocrTaskchildPictureApproListNew = taskchildPictureMybatisDao.queryExamineApprove(tenantid,formIdList); + if(ocrTaskchildPictureApproListNew.size()>0){ + for(OcrTaskchildPictureAppro ocrTaskchildPictureAppro : ocrTaskchildPictureApproListNew){ + OaUserApproveVo oaUserApproveVo = formIdToVoMap.get(Long.parseLong(ocrTaskchildPictureAppro.getId())); + ocrTaskchildPictureAppro.setStatshis(oaUserApproveVo.getStatsHis()); + ocrTaskchildPictureApproList.add(ocrTaskchildPictureAppro); + } + } + }else { + ocrTaskchildPictureApproList = taskchildPictureMybatisDao.queryPendingApproval(userToken.getLoginname(),tenantid,taskNodeOne); + for (OcrTaskchildPictureAppro ocrTaskchildPictureAppro : ocrTaskchildPictureApproList) { + ocrTaskchildPictureAppro.setStatshis(1); + } } - User user = this.userService.getSessionUser(request); - PageUtils pageUtils = new PageUtils(); - pageUtils.setPageSize(9999999); - pageUtils.setCurrPage(1); - List ocrTaskchildPictureApproList = flowTaskService.getMyProcessInstancesNew(user, tenantid, searchQuery.getQuery(), pageUtils); resultVo = new ResultVo<>(); int pendingApprovalCount = 0; // 待审批的数量 int approvedCount = 0; // 通过的数量 @@ -196,7 +223,8 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl oaUserApproveVoList = taskchildPictureMybatisDao.queryApprovalNode(userId); List ocrTaskchildPictureApproList = new ArrayList<>(); - List ocrTaskchildPictureApproListNew1 = new ArrayList<>(); + //定义第一审批节点 + String taskNodeOne = ""; if (oaUserApproveVoList.size() > 0) { Map formIdToVoMap = new HashMap<>(); for (OaUserApproveVo vo : oaUserApproveVoList) { @@ -206,35 +234,29 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl ocrTaskchildPictureApproListNew = taskchildPictureMybatisDao.queryExamineApprove(tenantid,formId); - if(ocrTaskchildPictureApproListNew.size()>0){ - OcrTaskchildPictureAppro ocrTaskchildPictureAppro = ocrTaskchildPictureApproListNew.get(0); - ocrTaskchildPictureAppro.setStatshis(formIdToVoMap.get(formId).getStatsHis()); - ocrTaskchildPictureApproList.add(ocrTaskchildPictureAppro); - } + //获取该用户第一节点 + Iterator> iterator = formIdToVoMap.entrySet().iterator(); + Map.Entry firstEntry = iterator.next(); + taskNodeOne = Integer.toString(firstEntry.getValue().getTaskNode()); + //获取已经审批的任务ID + List formIdList = new ArrayList<>(formIdToVoMap.keySet()); + //查询该用户第一节点所有待审任务列表 + ocrTaskchildPictureApproList = taskchildPictureMybatisDao.queryPendingApproval(userToken.getLoginname(),tenantid,taskNodeOne); + //查询第一节点已经审批的任务列表数据 + List ocrTaskchildPictureApproListNew = taskchildPictureMybatisDao.queryExamineApprove(tenantid,formIdList); + if(ocrTaskchildPictureApproListNew.size()>0){ + for(OcrTaskchildPictureAppro ocrTaskchildPictureAppro : ocrTaskchildPictureApproListNew){ + OaUserApproveVo oaUserApproveVo = formIdToVoMap.get(Long.parseLong(ocrTaskchildPictureAppro.getId())); + ocrTaskchildPictureAppro.setStatshis(oaUserApproveVo.getStatsHis()); + ocrTaskchildPictureApproList.add(ocrTaskchildPictureAppro); } } }else { - ocrTaskchildPictureApproList = taskchildPictureMybatisDao.queryPendingApproval(userToken.getLoginname(),tenantid); + ocrTaskchildPictureApproList = taskchildPictureMybatisDao.queryPendingApproval(userToken.getLoginname(),tenantid,taskNodeOne); for (OcrTaskchildPictureAppro ocrTaskchildPictureAppro : ocrTaskchildPictureApproList) { ocrTaskchildPictureAppro.setStatshis(1); } } - System.out.println("ocrTaskchildPictureApproListNew"+ocrTaskchildPictureApproListNew1.size()); resultVo = new ResultVo<>(); int pendingApprovalCount = 0; // 待审批的数量 int approvedCount = 0; // 通过的数量 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 dfee42dd..baed6175 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 @@ -738,7 +738,10 @@ left join ocr_picture op on tc.PICTUREID = op.ID where tc.TENANTID = #{tenantId} and op.suspiciousfile = 0 - and tc.ID = #{id} + and tc.ID IN + + #{formId} +