WorkNodeMapper.xml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.dayou.mapper.WorkNodeMapper">
  4. <resultMap id="flowNodeMap" type="com.dayou.dto.WorkNodeDTO">
  5. <result column="id" property="id" />
  6. <result column="created" property="created" />
  7. <result column="deleted" property="deleted" />
  8. <result column="modified" property="modified" />
  9. <result column="flow_id" property="flowId" />
  10. <result column="privious_node_id" property="priviousNodeId" />
  11. <result column="name" property="name" />
  12. <result column="code" property="code" />
  13. <result column="reversible" property="reversible" />
  14. <result column="restartable" property="restartable" />
  15. <result column="terminable" property="terminable" />
  16. <result column="skippable" property="skippable" />
  17. <result column="type" property="type" />
  18. <result column="remark" property="remark" />
  19. <result column="deadline_type" property="deadlineType" />
  20. <result column="deadline_number" property="deadlineNumber" />
  21. <result column="verify" property="verify" />
  22. <collection property="tasks" ofType="com.dayou.entity.WorkNodeTask" select="selectNodeTasks" column="id"/>
  23. </resultMap>
  24. <!-- 通用查询结果列 -->
  25. <sql id="Base_Column_List">
  26. id,
  27. created,
  28. deleted,
  29. modified,
  30. flow_id, privious_node_id, name, code, reversible, restartable, terminable, skippable, type, remark,deadline_type,deadline_number,verify
  31. </sql>
  32. <select id="getFlowNodes" parameterType="java.lang.Long" resultMap="flowNodeMap">
  33. select <include refid="Base_Column_List" /> from work_node where flow_id = #{flowId} and deleted = 0
  34. </select>
  35. <select id="selectNodeTasks" parameterType="java.lang.Long" resultType="com.dayou.entity.WorkNodeTask">
  36. SELECT
  37. id,
  38. node_id,
  39. description,
  40. task_type,
  41. JSON_UNQUOTE( `handler_permission` -> '$.name' ) AS name,
  42. JSON_UNQUOTE( `handler_permission` -> '$.powerId' ) AS powerId,
  43. handler_permission,
  44. business_handle
  45. from
  46. work_node_task
  47. WHERE
  48. node_id = #{id} and deleted = 0 and version = "LATEST"
  49. </select>
  50. <select id="getNodesByMainBusiness" parameterType="java.lang.String" resultType="com.dayou.entity.WorkNode">
  51. select name ,code from work_node where flow_id = (select id from work_flow where code='MAJOR_BUSINESS' AND deleted = 0 and state = 0) and deleted = 0
  52. </select>
  53. </mapper>