FirstTaskMapper.xml 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  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.factory.mapper.FirstTaskMapper">
  4. <resultMap id="approveMap" type="com.factory.base.entity.task.ApproveEntry">
  5. <id column="id" property="id"/>
  6. <result column="first_article_task_id" property="task_id"/>
  7. <result column="approval_level" property="approval_level"/>
  8. <result column="approval_user_id" property="approval_user_id"/>
  9. </resultMap>
  10. <select id="getMaxApproveLevel" resultType="int">
  11. select max(approval_level)
  12. from approval_rule
  13. where type = 2
  14. </select>
  15. <select id="getApproveTaskNoDeal" resultMap="approveMap">
  16. select a.id, a.first_article_task_id , a.approval_level, a.approval_user_id
  17. from first_article_approval_task a
  18. where a.status=0 and a.approval_level &lt; ${approval_level} and now() &gt; ADDDATE(a.created_time, interval 30
  19. minute); <!--找到30分钟没处理的 -->
  20. </select>
  21. <update id="updateApproveTask">
  22. update first_article_approval_task
  23. set status=${status},
  24. reason='自动审批'
  25. where id = ${id}
  26. and status = 0
  27. </update>
  28. <insert id="addApproveTask">
  29. insert into first_article_approval_task(first_article_task_id, approval_level, approval_user_id, created_time,
  30. reason)
  31. values (${task_id}, ${approval_level}, ${approval_user_id}, now(), '')
  32. </insert>
  33. <select id="getApprovalUser" resultType="com.factory.base.entity.task.ApprovalUserRes">
  34. SELECT uur.user_id,
  35. ar.type,
  36. ar.approval_level
  37. FROM approval_rule ar,
  38. us_user_role uur,
  39. us_user uu
  40. WHERE ar.role_id = uur.role_id
  41. AND uu.del_flag = 0
  42. AND uu.lock = 0
  43. AND ar.approval_level = ${approvalLevel}
  44. AND ar.type = 2 LIMIT 0,1
  45. </select>
  46. <select id="getCalenderFirstForType" parameterType="java.lang.Integer" resultType="com.factory.base.entity.task.FirstCalendar">
  47. SELECT b.id,b.typeFlag
  48. FROM benteler_plan a,
  49. first_article_calendar b
  50. WHERE a.id = b.benteler_plan_id
  51. and a.pause_flag = 0
  52. and a.deleted = 0
  53. and a.status = 4
  54. and a.effective_date &lt;= now()
  55. and b.type_flag = #{type_flag}
  56. and a.plan_type = 1
  57. </select>
  58. <insert id="insertFirstTask" parameterType="com.factory.base.entity.task.FirstTask">
  59. insert into first_article_task_key(first_article_calendar_id, task_time)
  60. values (${first_article_calendar_id}, #{task_time});
  61. insert into first_article_task(first_article_calendar_id, task_time)
  62. values (${first_article_calendar_id}, #{task_time});
  63. </insert>
  64. <select id="getRemindWork" resultType="com.factory.base.entity.task.FirstCalendar">
  65. select b.*,a.taskTime ,a.id firstTaskId
  66. from first_article_task a,first_article_calendar b
  67. where a.first_article_calendar_id=b.id and a.status=0 and b.type_flag like concat('%', ${type_flag}, '%')
  68. and a.type_flag = ${type_flag}
  69. <if test="remind_task_flag != null">
  70. and a.remind_task_flag = ${remind_task_flag}
  71. </if>
  72. <if test="remind_nowork_flag != null">
  73. and a.remind_nowork_flag = ${remind_nowork_flag}
  74. </if>
  75. </select>
  76. <update id="updateFirstRemindFlag">
  77. update first_article_task
  78. set ${flag}=${flagVal}
  79. where id = ${first_task_id}
  80. </update>
  81. <insert id="addRemindNowork">
  82. insert into remind_approval_task(task_id, approval_user_id, task_type)
  83. values (${task_id}, ${approval_user_id}, ${task_type})
  84. </insert>
  85. <select id="getRemindNoworkToManager" resultType="Long">
  86. select b.user_id
  87. from nowork_remind_rule a,
  88. us_user_role b
  89. where a.type = ${type}
  90. and a.role_id = b.role_id limit 1
  91. </select>
  92. </mapper>