XxlJobInfoMapper.xml 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  3. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  4. <mapper namespace="com.xxl.job.admin.dao.XxlJobInfoDao">
  5. <resultMap id="XxlJobInfo" type="com.xxl.job.admin.core.model.XxlJobInfo">
  6. <result column="id" property="id"/>
  7. <result column="job_group" property="jobGroup"/>
  8. <result column="job_desc" property="jobDesc"/>
  9. <result column="add_time" property="addTime"/>
  10. <result column="update_time" property="updateTime"/>
  11. <result column="author" property="author"/>
  12. <result column="alarm_email" property="alarmEmail"/>
  13. <result column="schedule_type" property="scheduleType"/>
  14. <result column="schedule_conf" property="scheduleConf"/>
  15. <result column="misfire_strategy" property="misfireStrategy"/>
  16. <result column="executor_route_strategy" property="executorRouteStrategy"/>
  17. <result column="executor_handler" property="executorHandler"/>
  18. <result column="executor_param" property="executorParam"/>
  19. <result column="executor_block_strategy" property="executorBlockStrategy"/>
  20. <result column="executor_timeout" property="executorTimeout"/>
  21. <result column="executor_fail_retry_count" property="executorFailRetryCount"/>
  22. <result column="glue_type" property="glueType"/>
  23. <result column="glue_source" property="glueSource"/>
  24. <result column="glue_remark" property="glueRemark"/>
  25. <result column="glue_updatetime" property="glueUpdatetime"/>
  26. <result column="child_jobid" property="childJobId"/>
  27. <result column="trigger_status" property="triggerStatus"/>
  28. <result column="trigger_last_time" property="triggerLastTime"/>
  29. <result column="trigger_next_time" property="triggerNextTime"/>
  30. </resultMap>
  31. <sql id="Base_Column_List">
  32. t.id,
  33. t.job_group,
  34. t.job_desc,
  35. t.add_time,
  36. t.update_time,
  37. t.author,
  38. t.alarm_email,
  39. t.schedule_type,
  40. t.schedule_conf,
  41. t.misfire_strategy,
  42. t.executor_route_strategy,
  43. t.executor_handler,
  44. t.executor_param,
  45. t.executor_block_strategy,
  46. t.executor_timeout,
  47. t.executor_fail_retry_count,
  48. t.glue_type,
  49. t.glue_source,
  50. t.glue_remark,
  51. t.glue_updatetime,
  52. t.child_jobid,
  53. t.trigger_status,
  54. t.trigger_last_time,
  55. t.trigger_next_time
  56. </sql>
  57. <select id="pageList" parameterType="java.util.HashMap" resultMap="XxlJobInfo">
  58. SELECT
  59. <include refid="Base_Column_List"/>
  60. FROM xxl_job_info AS t
  61. <trim prefix="WHERE" prefixOverrides="AND | OR">
  62. <if test="jobGroup gt 0">
  63. AND t.job_group = #{jobGroup}
  64. </if>
  65. <if test="triggerStatus gte 0">
  66. AND t.trigger_status = #{triggerStatus}
  67. </if>
  68. <if test="jobDesc != null and jobDesc != ''">
  69. AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
  70. </if>
  71. <if test="executorHandler != null and executorHandler != ''">
  72. AND t.executor_handler like CONCAT(CONCAT('%', #{executorHandler}), '%')
  73. </if>
  74. <if test="author != null and author != ''">
  75. AND t.author like CONCAT(CONCAT('%', #{author}), '%')
  76. </if>
  77. </trim>
  78. ORDER BY id DESC
  79. LIMIT #{offset}, #{pagesize}
  80. </select>
  81. <select id="pageListCount" parameterType="java.util.HashMap" resultType="int">
  82. SELECT count(1)
  83. FROM xxl_job_info AS t
  84. <trim prefix="WHERE" prefixOverrides="AND | OR">
  85. <if test="jobGroup gt 0">
  86. AND t.job_group = #{jobGroup}
  87. </if>
  88. <if test="triggerStatus gte 0">
  89. AND t.trigger_status = #{triggerStatus}
  90. </if>
  91. <if test="jobDesc != null and jobDesc != ''">
  92. AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
  93. </if>
  94. <if test="executorHandler != null and executorHandler != ''">
  95. AND t.executor_handler like CONCAT(CONCAT('%', #{executorHandler}), '%')
  96. </if>
  97. <if test="author != null and author != ''">
  98. AND t.author like CONCAT(CONCAT('%', #{author}), '%')
  99. </if>
  100. </trim>
  101. </select>
  102. <insert id="save" parameterType="com.xxl.job.admin.core.model.XxlJobInfo" useGeneratedKeys="true" keyProperty="id">
  103. INSERT INTO xxl_job_info (
  104. job_group,
  105. job_desc,
  106. add_time,
  107. update_time,
  108. author,
  109. alarm_email,
  110. schedule_type,
  111. schedule_conf,
  112. misfire_strategy,
  113. executor_route_strategy,
  114. executor_handler,
  115. executor_param,
  116. executor_block_strategy,
  117. executor_timeout,
  118. executor_fail_retry_count,
  119. glue_type,
  120. glue_source,
  121. glue_remark,
  122. glue_updatetime,
  123. child_jobid,
  124. trigger_status,
  125. trigger_last_time,
  126. trigger_next_time
  127. ) VALUES (
  128. #{jobGroup},
  129. #{jobDesc},
  130. #{addTime},
  131. #{updateTime},
  132. #{author},
  133. #{alarmEmail},
  134. #{scheduleType},
  135. #{scheduleConf},
  136. #{misfireStrategy},
  137. #{executorRouteStrategy},
  138. #{executorHandler},
  139. #{executorParam},
  140. #{executorBlockStrategy},
  141. #{executorTimeout},
  142. #{executorFailRetryCount},
  143. #{glueType},
  144. #{glueSource},
  145. #{glueRemark},
  146. #{glueUpdatetime},
  147. #{childJobId},
  148. #{triggerStatus},
  149. #{triggerLastTime},
  150. #{triggerNextTime}
  151. );
  152. <!--<selectKey resultType="java.lang.Integer" order="AFTER" keyProperty="id">
  153. SELECT LAST_INSERT_ID()
  154. /*SELECT @@IDENTITY AS id*/
  155. </selectKey>-->
  156. </insert>
  157. <select id="loadById" parameterType="java.util.HashMap" resultMap="XxlJobInfo">
  158. SELECT
  159. <include refid="Base_Column_List"/>
  160. FROM xxl_job_info AS t
  161. WHERE t.id = #{id}
  162. </select>
  163. <update id="update" parameterType="com.xxl.job.admin.core.model.XxlJobInfo">
  164. UPDATE xxl_job_info
  165. SET job_group = #{jobGroup},
  166. job_desc = #{jobDesc},
  167. update_time = #{updateTime},
  168. author = #{author},
  169. alarm_email = #{alarmEmail},
  170. schedule_type = #{scheduleType},
  171. schedule_conf = #{scheduleConf},
  172. misfire_strategy = #{misfireStrategy},
  173. executor_route_strategy = #{executorRouteStrategy},
  174. executor_handler = #{executorHandler},
  175. executor_param = #{executorParam},
  176. executor_block_strategy = #{executorBlockStrategy},
  177. executor_timeout = ${executorTimeout},
  178. executor_fail_retry_count = ${executorFailRetryCount},
  179. glue_type = #{glueType},
  180. glue_source = #{glueSource},
  181. glue_remark = #{glueRemark},
  182. glue_updatetime = #{glueUpdatetime},
  183. child_jobid = #{childJobId},
  184. trigger_status = #{triggerStatus},
  185. trigger_last_time = #{triggerLastTime},
  186. trigger_next_time = #{triggerNextTime}
  187. WHERE id = #{id}
  188. </update>
  189. <delete id="delete" parameterType="java.util.HashMap">
  190. DELETE
  191. FROM xxl_job_info
  192. WHERE id = #{id}
  193. </delete>
  194. <select id="getJobsByGroup" parameterType="java.util.HashMap" resultMap="XxlJobInfo">
  195. SELECT
  196. <include refid="Base_Column_List"/>
  197. FROM xxl_job_info AS t
  198. WHERE t.job_group = #{jobGroup}
  199. </select>
  200. <select id="findAllCount" resultType="int">
  201. SELECT count(1)
  202. FROM xxl_job_info
  203. </select>
  204. <select id="scheduleJobQuery" parameterType="java.util.HashMap" resultMap="XxlJobInfo">
  205. SELECT
  206. <include refid="Base_Column_List"/>
  207. FROM xxl_job_info AS t
  208. WHERE t.trigger_status = 1
  209. and t.trigger_next_time <![CDATA[ <= ]]> #{maxNextTime}
  210. ORDER BY id ASC
  211. LIMIT #{pagesize}
  212. </select>
  213. <update id="scheduleUpdate" parameterType="com.xxl.job.admin.core.model.XxlJobInfo">
  214. UPDATE xxl_job_info
  215. SET trigger_last_time = #{triggerLastTime},
  216. trigger_next_time = #{triggerNextTime},
  217. trigger_status = #{triggerStatus}
  218. WHERE id = #{id}
  219. </update>
  220. </mapper>