zhangherong
2025-04-25 e002e17be350806103ea5ae1e131bbc66bcbfd0d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.flowable.mapper.IWorkTaskVoMapper">
    <select id="taskBySelf" resultType="org.jeecg.modules.flowable.domain.vo.WorkTaskDataVo">
        SELECT
            atask.id_ AS id,
            atask.rev_ AS rev,
            atask.execution_id_ AS executionId,
            atask.proc_inst_id_ AS procInstId,
            atask.proc_def_id_ AS procDefId,
            atask.name_ AS name,
            atask.task_def_key_ as taskDefKey,
            atask.priority_ AS priority,
            atask.create_time_ AS createTime,
            atask.suspension_state_ AS suspensionState,
            atask.ASSIGNEE_ as assignee,
            fmb.act_status AS actStatus,
            fmb.title AS title,
            fmb.data_id AS dataId,
            fmb.process_definition_key AS processDefinitionKey,
            fmb.process_definition_id AS processDefinitionId,
            fmb.process_instance_id AS processInstanceId,
            pro.name_ as flowName,
            pro.CATEGORY_ as category
        FROM
            act_ru_task AS atask
            LEFT JOIN flow_my_business fmb on atask.id_ = fmb.task_id
            LEFT JOIN ACT_RE_PROCDEF pro on atask.PROC_DEF_ID_ = pro.id_
        WHERE
            (atask.assignee_ = #{flowMy.username}
                OR ( atask.assignee_ IS NULL AND fmb.todo_users LIKE CONCAT('%',#{flowMy.username},'%'))
                )
          <if test="flowMy.flowName!= null and flowMy.flowName!= ''">
              AND pro.name_ LIKE CONCAT('%',#{flowMy.flowName},'%')
          </if>
          <if test="flowMy.title != null and flowMy.title != ''">
              AND fmb.title LIKE CONCAT('%',#{flowMy.title},'%')
          </if>
          <if test="flowMy.startTime!= null and flowMy.startTime!= ''">
              AND atask.create_time_ &gt;= #{flowMy.startTime}
          </if>
          <if test="flowMy.endTime!= null and flowMy.endTime!= ''">
              AND atask.create_time_ &lt;= #{flowMy.endTime}
          </if>
          <if test="flowMy.category!= null and flowMy.category!= ''">
              AND pro.CATEGORY_ = #{flowMy.category}
          </if>
            <if test="flowMy.name!= null and flowMy.name!= ''">
                AND atask.name_ = #{flowMy.name}
            </if>
        ORDER BY
            create_time_ DESC
    </select>
</mapper>