xiangpei
2025-02-26 b37eac632faf7f26b6f947d8b6792db8828fba6f
business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
@@ -203,8 +203,6 @@
        SysUser sysUser = SecurityUtils.getLoginUser().getUser();
        identityService.setAuthenticatedUserId(sysUser.getUserId().toString());
        variables.put(ProcessConstants.PROCESS_INITIATOR, sysUser.getUserId());
        //测试容缺
        variables.put("miss", true);
        // 将该项目的申请人(业主方)作为流程中某些环节的处理人
        variables.put(ProcessConstants.DATA_LAUNCH, "dept:" + createBy);
        ProcessInstance processInstance = runtimeService.startProcessInstanceById(processDefId, projectId + "", variables);
@@ -306,9 +304,15 @@
                .active()
                .includeProcessVariables()
                .orderByTaskCreateTime().desc();
        List<String> insIds = baseMapper.getNormalInsIds();
        if (CollectionUtils.isEmpty(insIds)) {
            result.data(new ArrayList<>()).total(0L);
            return;
        } else {
            taskQuery.processInstanceIdIn(insIds);
        }
        if (StringUtils.isNotBlank(taskName)) {
            taskQuery.processDefinitionNameLike(taskName);
            taskQuery.taskNameLike(taskName);
        }
        if (!SecurityUtils.getLoginUser().getUser().isAdmin()) {
            taskQuery
@@ -413,19 +417,23 @@
            if (processCoding != null) {
                if (StringUtils.isNotBlank(processCoding.getOvertime())) {
                    Long overtime = getTime(processCoding.getOvertime());
                    long durationTime = ((new Date()).getTime() - processCoding.getStartTaskTime().getTime()) / 1000;
                    taskVO.setRemainingTime((overtime - durationTime) / 3600 + "小时");
                    long durationTime = 0l;
                    if (Objects.nonNull(processCoding.getStartTaskTime())) {
                        durationTime = ((new Date()).getTime() - processCoding.getStartTaskTime().getTime()) / 1000;
                    } else {
                        taskVO.setRemainingTime("未设置办理时间");
                    }
                    if (overtime > durationTime) {
                        taskVO.setRemainingTime((overtime - durationTime) / 3600 + "小时");
                    } else {
                        taskVO.setRemainingTime("已超时");
                    }
                } else {
                    taskVO.setRemainingTime("-");
                }
            }
            this.distinctVo(taskVO);
            vos.add(taskVO);
        }
        if (vos.size() < pageSize) {
            result.total(vos.size());
        }
        result.put("taskList", vos);
    }
@@ -820,7 +828,7 @@
                .desc();
        if (StringUtils.isNotBlank(taskName)) {
            taskQuery.processDefinitionNameLike(taskName);
            taskQuery.taskNameLike(taskName);
        }
        result.total(taskQuery.count());
        List<Task> taskList = taskQuery.listPage(pageSize * (pageNum - 1), pageSize);
@@ -912,7 +920,7 @@
                        SysUser sysUser = sysUserService.selectUserById(Long.parseLong(userTask.getAssignee()));
                        if (Objects.nonNull(sysUser)) {
                            handlerIds.add(sysUser.getUserId());
                            handlerNames.add(sysUser.getNickName());
                            handlerNames.add(this.getUserShowName(sysUser));
                            if (Objects.nonNull(sysUser.getDept())) {
                                handlerUnitIds.add(sysUser.getDept().getDeptId());
                                handlerUnitNames.add(sysUser.getDept().getDeptName());
@@ -960,7 +968,7 @@
                    SysUser handlerUser = sysUserService.selectUserById(handlerUserId);
                    if (Objects.nonNull(handlerUser)) {
                        handlerIds.add(handlerUserId);
                        handlerNames.add(handlerUser.getNickName());
                        handlerNames.add(this.getUserShowName(handlerUser));
                        vo.setActualHandlerUserId(historicTasks.get(0).getAssignee());
                        vo.setActualHandlerUserName(handlerUser.getNickName());
                    }
@@ -994,6 +1002,9 @@
     */
    private List<CustomerTaskVO> getFinishedProcessTaskInfo(List<UserTask> userTasks, String processInsId, String processDefId) {
        HistoricProcessInstance hisProcess = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInsId).singleResult();
        if (Objects.isNull(hisProcess)) {
            return new ArrayList<>();
        }
        List<CustomerTaskVO> vos = userTasks.stream().map(userTask -> {
            CustomerTaskVO vo = new CustomerTaskVO();
            vo.setProcessInsId(hisProcess.getId());
@@ -1090,7 +1101,7 @@
                SysUser sysUser = sysUserService.selectUserById(Long.parseLong(identityLink.getUserId()));
                if (Objects.nonNull(sysUser)) {
                    taskVO.getHandlerId().add(sysUser.getUserId());
                    taskVO.getHandlerName().add(sysUser.getNickName());
                    taskVO.getHandlerName().add(this.getUserShowName(sysUser));
                    if (Objects.nonNull(sysUser.getDept())) {
                        taskVO.getHandlerUnitId().add(sysUser.getDept().getDeptId());
                        taskVO.getHandlerUnitName().add(sysUser.getDept().getDeptName());
@@ -1278,9 +1289,9 @@
                SysUser handlerUser = sysUserService.selectUserById(handlerUserId);
                if (Objects.nonNull(handlerUser)) {
                    vo.getHandlerId().add(handlerUserId);
                    vo.getHandlerName().add(handlerUser.getNickName());
                    vo.getHandlerName().add(this.getUserShowName(handlerUser));
                    vo.setActualHandlerUserId(hisTask.getAssignee());
                    vo.setActualHandlerUserName(handlerUser.getNickName());
                    vo.setActualHandlerUserName(this.getUserShowName(handlerUser));
                }
                vo.setTaskDefinitionKey(hisTask.getTaskDefinitionKey());
                this.setPromoterAndHandler(vo, hisTask.getIdentityLinks());
@@ -1291,6 +1302,16 @@
        }).collect(Collectors.toList());
        result.data(vos);
        return vos;
    }
    /**
     * 用户名称后面跟电话号码
     *
     * @param user
     * @return
     */
    private String getUserShowName(SysUser user) {
        return user.getNickName() + (StringUtils.isNotBlank(user.getPhonenumber()) ? "(" + user.getPhonenumber() + ")" : "");
    }
    /**
@@ -1867,7 +1888,7 @@
                return user.getUserId() + "";
            }).collect(Collectors.joining("、")));
            taskVO.setPromoterName(userList.stream().map(user -> {
                return user.getNickName();
                return this.getUserShowName(user);
            }).collect(Collectors.joining("、")));
            taskVO.setPromoterUnitId(userList.stream().filter(user -> Objects.nonNull(user.getDept())).map(user -> {
                return user.getDept().getDeptId() + "";