Digital Office Automation System Backend
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

XxlJobLogMapper.xml 9.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  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.XxlJobLogDao">
  5. <resultMap id="XxlJobLog" type="com.xxl.job.admin.core.model.XxlJobLog" >
  6. <result column="id" property="id" />
  7. <result column="job_group" property="jobGroup" />
  8. <result column="job_id" property="jobId" />
  9. <result column="executor_address" property="executorAddress" />
  10. <result column="executor_handler" property="executorHandler" />
  11. <result column="executor_param" property="executorParam" />
  12. <result column="executor_sharding_param" property="executorShardingParam" />
  13. <result column="executor_fail_retry_count" property="executorFailRetryCount" />
  14. <result column="trigger_time" property="triggerTime" />
  15. <result column="trigger_code" property="triggerCode" />
  16. <result column="trigger_msg" property="triggerMsg" />
  17. <result column="handle_time" property="handleTime" />
  18. <result column="handle_code" property="handleCode" />
  19. <result column="handle_msg" property="handleMsg" />
  20. <result column="alarm_status" property="alarmStatus" />
  21. </resultMap>
  22. <sql id="Base_Column_List">
  23. t.id,
  24. t.job_group,
  25. t.job_id,
  26. t.executor_address,
  27. t.executor_handler,
  28. t.executor_param,
  29. t.executor_sharding_param,
  30. t.executor_fail_retry_count,
  31. t.trigger_time,
  32. t.trigger_code,
  33. t.trigger_msg,
  34. t.handle_time,
  35. t.handle_code,
  36. t.handle_msg,
  37. t.alarm_status
  38. </sql>
  39. <select id="pageList" resultMap="XxlJobLog">
  40. SELECT <include refid="Base_Column_List" />
  41. FROM xxl_job_log AS t
  42. <trim prefix="WHERE" prefixOverrides="AND | OR" >
  43. <if test="jobId==0 and jobGroup gt 0">
  44. AND t.job_group = #{jobGroup}
  45. </if>
  46. <if test="jobId gt 0">
  47. AND t.job_id = #{jobId}
  48. </if>
  49. <if test="triggerTimeStart != null">
  50. AND t.trigger_time <![CDATA[ >= ]]> #{triggerTimeStart}
  51. </if>
  52. <if test="triggerTimeEnd != null">
  53. AND t.trigger_time <![CDATA[ <= ]]> #{triggerTimeEnd}
  54. </if>
  55. <if test="logStatus == 1" >
  56. AND t.handle_code = 200
  57. </if>
  58. <if test="logStatus == 2" >
  59. AND (
  60. t.trigger_code NOT IN (0, 200) OR
  61. t.handle_code NOT IN (0, 200)
  62. )
  63. </if>
  64. <if test="logStatus == 3" >
  65. AND t.trigger_code = 200
  66. AND t.handle_code = 0
  67. </if>
  68. </trim>
  69. ORDER BY t.trigger_time DESC
  70. LIMIT #{offset}, #{pagesize}
  71. </select>
  72. <select id="pageListCount" resultType="int">
  73. SELECT count(1)
  74. FROM xxl_job_log AS t
  75. <trim prefix="WHERE" prefixOverrides="AND | OR" >
  76. <if test="jobId==0 and jobGroup gt 0">
  77. AND t.job_group = #{jobGroup}
  78. </if>
  79. <if test="jobId gt 0">
  80. AND t.job_id = #{jobId}
  81. </if>
  82. <if test="triggerTimeStart != null">
  83. AND t.trigger_time <![CDATA[ >= ]]> #{triggerTimeStart}
  84. </if>
  85. <if test="triggerTimeEnd != null">
  86. AND t.trigger_time <![CDATA[ <= ]]> #{triggerTimeEnd}
  87. </if>
  88. <if test="logStatus == 1" >
  89. AND t.handle_code = 200
  90. </if>
  91. <if test="logStatus == 2" >
  92. AND (
  93. t.trigger_code NOT IN (0, 200) OR
  94. t.handle_code NOT IN (0, 200)
  95. )
  96. </if>
  97. <if test="logStatus == 3" >
  98. AND t.trigger_code = 200
  99. AND t.handle_code = 0
  100. </if>
  101. </trim>
  102. </select>
  103. <select id="load" parameterType="java.lang.Long" resultMap="XxlJobLog">
  104. SELECT <include refid="Base_Column_List" />
  105. FROM xxl_job_log AS t
  106. WHERE t.id = #{id}
  107. </select>
  108. <insert id="save" parameterType="com.xxl.job.admin.core.model.XxlJobLog" useGeneratedKeys="true" keyProperty="id" >
  109. INSERT INTO xxl_job_log (
  110. `job_group`,
  111. `job_id`,
  112. `trigger_time`,
  113. `trigger_code`,
  114. `handle_code`
  115. ) VALUES (
  116. #{jobGroup},
  117. #{jobId},
  118. #{triggerTime},
  119. #{triggerCode},
  120. #{handleCode}
  121. );
  122. <!--<selectKey resultType="java.lang.Integer" order="AFTER" keyProperty="id">
  123. SELECT LAST_INSERT_ID()
  124. </selectKey>-->
  125. </insert>
  126. <update id="updateTriggerInfo" >
  127. UPDATE xxl_job_log
  128. SET
  129. `trigger_time`= #{triggerTime},
  130. `trigger_code`= #{triggerCode},
  131. `trigger_msg`= #{triggerMsg},
  132. `executor_address`= #{executorAddress},
  133. `executor_handler`=#{executorHandler},
  134. `executor_param`= #{executorParam},
  135. `executor_sharding_param`= #{executorShardingParam},
  136. `executor_fail_retry_count`= #{executorFailRetryCount}
  137. WHERE `id`= #{id}
  138. </update>
  139. <update id="updateHandleInfo">
  140. UPDATE xxl_job_log
  141. SET
  142. `handle_time`= #{handleTime},
  143. `handle_code`= #{handleCode},
  144. `handle_msg`= #{handleMsg}
  145. WHERE `id`= #{id}
  146. </update>
  147. <delete id="delete" >
  148. delete from xxl_job_log
  149. WHERE job_id = #{jobId}
  150. </delete>
  151. <!--<select id="triggerCountByDay" resultType="java.util.Map" >
  152. SELECT
  153. DATE_FORMAT(trigger_time,'%Y-%m-%d') triggerDay,
  154. COUNT(handle_code) triggerDayCount,
  155. SUM(CASE WHEN (trigger_code in (0, 200) and handle_code = 0) then 1 else 0 end) as triggerDayCountRunning,
  156. SUM(CASE WHEN handle_code = 200 then 1 else 0 end) as triggerDayCountSuc
  157. FROM xxl_job_log
  158. WHERE trigger_time BETWEEN #{from} and #{to}
  159. GROUP BY triggerDay
  160. ORDER BY triggerDay
  161. </select>-->
  162. <select id="findLogReport" resultType="java.util.Map" >
  163. SELECT
  164. COUNT(handle_code) triggerDayCount,
  165. SUM(CASE WHEN (trigger_code in (0, 200) and handle_code = 0) then 1 else 0 end) as triggerDayCountRunning,
  166. SUM(CASE WHEN handle_code = 200 then 1 else 0 end) as triggerDayCountSuc
  167. FROM xxl_job_log
  168. WHERE trigger_time BETWEEN #{from} and #{to}
  169. </select>
  170. <select id="findClearLogIds" resultType="long" >
  171. SELECT id FROM xxl_job_log
  172. <trim prefix="WHERE" prefixOverrides="AND | OR" >
  173. <if test="jobGroup gt 0">
  174. AND job_group = #{jobGroup}
  175. </if>
  176. <if test="jobId gt 0">
  177. AND job_id = #{jobId}
  178. </if>
  179. <if test="clearBeforeTime != null">
  180. AND trigger_time <![CDATA[ <= ]]> #{clearBeforeTime}
  181. </if>
  182. <if test="clearBeforeNum gt 0">
  183. AND id NOT in(
  184. SELECT id FROM(
  185. SELECT id FROM xxl_job_log AS t
  186. <trim prefix="WHERE" prefixOverrides="AND | OR" >
  187. <if test="jobGroup gt 0">
  188. AND t.job_group = #{jobGroup}
  189. </if>
  190. <if test="jobId gt 0">
  191. AND t.job_id = #{jobId}
  192. </if>
  193. </trim>
  194. ORDER BY t.trigger_time desc
  195. LIMIT 0, #{clearBeforeNum}
  196. ) t1
  197. )
  198. </if>
  199. </trim>
  200. order by id asc
  201. LIMIT #{pagesize}
  202. </select>
  203. <delete id="clearLog" >
  204. delete from xxl_job_log
  205. WHERE id in
  206. <foreach collection="logIds" item="item" open="(" close=")" separator="," >
  207. #{item}
  208. </foreach>
  209. </delete>
  210. <select id="findFailJobLogIds" resultType="long" >
  211. SELECT id FROM `xxl_job_log`
  212. WHERE !(
  213. (trigger_code in (0, 200) and handle_code = 0)
  214. OR
  215. (handle_code = 200)
  216. )
  217. AND `alarm_status` = 0
  218. ORDER BY id ASC
  219. LIMIT #{pagesize}
  220. </select>
  221. <update id="updateAlarmStatus" >
  222. UPDATE xxl_job_log
  223. SET
  224. `alarm_status` = #{newAlarmStatus}
  225. WHERE `id`= #{logId} AND `alarm_status` = #{oldAlarmStatus}
  226. </update>
  227. <select id="findLostJobIds" resultType="long" >
  228. SELECT
  229. t.id
  230. FROM
  231. xxl_job_log t
  232. LEFT JOIN xxl_job_registry t2 ON t.executor_address = t2.registry_value
  233. WHERE
  234. t.trigger_code = 200
  235. AND t.handle_code = 0
  236. AND t.trigger_time <![CDATA[ <= ]]> #{losedTime}
  237. AND t2.id IS NULL;
  238. </select>
  239. <!--
  240. SELECT t.id
  241. FROM xxl_job_log AS t
  242. WHERE t.trigger_code = 200
  243. and t.handle_code = 0
  244. and t.trigger_time <![CDATA[ <= ]]> #{losedTime}
  245. and t.executor_address not in (
  246. SELECT t2.registry_value
  247. FROM xxl_job_registry AS t2
  248. )
  249. -->
  250. </mapper>