xiangpei
2025-01-09 6acc718e0f3608c08584526d7c7e8523c1bd99ca
用户列表可通过昵称搜索、获取任务表单时无表单数据也返回节点信息
2个文件已修改
12 ■■■■■ 已修改文件
flowable/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
system/src/main/resources/mapper/system/SysUserMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flowable/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java
@@ -1239,21 +1239,22 @@
     */
    private List<FormDetailVO> getBeforeNodeForm(Map<String, Object> parameters, String formKey, String taskName, String processDefId, String processDefKey, Boolean currentNeedData) {
        if (!parameters.keySet().stream().anyMatch(key -> key.contains(ProcessConstants.TASK_FORM_KEY))) {
            FormDetailVO formDetailVO = new FormDetailVO();
            formDetailVO.setBeforeNodeName(taskName);
            formDetailVO.setCurrent(Boolean.TRUE);
            // 如果是空的,使用formId去查
            if (StringUtils.isNotBlank(formKey)) {
                SysForm sysForm = sysFormService.selectSysFormById(Long.parseLong(formKey));
                if (Objects.isNull(sysForm)) {
                    throw new RuntimeException("该流程绑定的表单不存在或已被删除");
                }
                FormDetailVO formDetailVO = new FormDetailVO();
                Map<String, Object> data = new HashMap<>(1);
                data.put(ProcessConstants.TASK_FORM_KEY, JSONObject.parseObject(sysForm.getFormContent()));
                formDetailVO.setFormJsonObj(data);
                formDetailVO.setBeforeNodeName(taskName);
                formDetailVO.setCurrent(Boolean.TRUE);
                return Arrays.asList(formDetailVO);
            } else {
                return new ArrayList<>(1);
                return Arrays.asList(formDetailVO);
            }
        }
        // 这里只需要查自身以及上一个节点(如果并行的有多个)的表单数据
system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -66,6 +66,9 @@
        <if test="userName != null and userName != ''">
            AND u.user_name like concat('%', #{userName}, '%')
        </if>
        <if test="nickName != null and nickName != ''">
            AND u.nick_name like concat('%', #{nickName}, '%')
        </if>
        <if test="status != null and status != ''">
            AND u.status = #{status}
        </if>