ApplicationProcedureTemporaryMapper.xml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325
  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.template.mapper.ApplicationProcedureTemporaryMapper">
  4. <select id="pageList" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  5. SELECT
  6. apu.id,
  7. apu.users_id as usersId,
  8. (select user_name from users a where a.id = apu.users_id) usersName,
  9. apu.start_time as startTime,
  10. apu.end_time as endTime,
  11. apu.department,
  12. apu.reason_application as reasonApplication,
  13. apu.submission_time as submissionTime,
  14. apu.status,
  15. apu.approver_id as approverId,
  16. apu.examine_and_approve_time as examineAndApproveTime,
  17. apu.examine_and_approve_remark as examineAndApproveRemark,
  18. apu.secondary_approver_id as secondaryApproverId,
  19. apu.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  20. apu.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  21. apu.approverName,
  22. apu.secondaryApproverName,
  23. apu.houseCount,
  24. apu.orgName
  25. FROM
  26. (
  27. SELECT
  28. ap.id,
  29. ap.users_id ,
  30. ap.start_time,
  31. ap.end_time ,
  32. ap.department,
  33. ap.reason_application,
  34. ap.submission_time,
  35. ap.status,
  36. ap.approver_id ,
  37. ap.examine_and_approve_time ,
  38. ap.examine_and_approve_remark ,
  39. ap.secondary_approver_id,
  40. ap.secondary_examine_and_approve_time ,
  41. ap.secondary_examine_and_approve_remark,
  42. a.name as approverName,
  43. a2.name as secondaryApproverName,
  44. u.user_name as userName,
  45. o.id as orgId,
  46. o.name as orgName,
  47. ap.house_count as houseCount
  48. FROM
  49. `application_procedure_temporary` ap
  50. LEFT JOIN admin a on a.id=ap.approver_id
  51. LEFT JOIN admin a2 on a2.id=ap.secondary_approver_id
  52. LEFT JOIN users u on u.id=ap.users_id
  53. LEFT JOIN organization o on o.id=u.organ_id
  54. WHERE ap.deleted=0
  55. ) apu
  56. <where>
  57. <if test="submissionStartTime != null and submissionStartTime != '' and submissionEndTime != null and submissionEndTime != '' ">
  58. and apu.submission_time >= #{submissionStartTime} and #{submissionEndTime}>= apu.submission_time
  59. </if>
  60. <if test="key != null and key != ''">
  61. AND ( apu.approverName LIKE '%' #{key} '%' OR apu.secondaryApproverName LIKE '%' #{key} '%' OR apu.userName LIKE '%' #{key} '%' )
  62. </if>
  63. <if test="examineAndApproveStartTime != null and examineAndApproveStartTime != '' and examineAndApproveEndTime != null and examineAndApproveEndTime != '' ">
  64. and apu.examine_and_approve_time >= #{examineAndApproveStartTime} and #{examineAndApproveEndTime}>=
  65. apu.examine_and_approve_time
  66. </if>
  67. <if test="type != null and type != ''">
  68. and apu.status= #{type}
  69. </if>
  70. <if test="department != null and department != ''">
  71. and apu.department= #{department}
  72. </if>
  73. <if test="orgList != null and orgList.size() > 0">
  74. and apu.orgId in
  75. <foreach collection="orgList" item="orgId" index="index" open="(" close=")" separator=",">
  76. ${orgId}
  77. </foreach>
  78. </if>
  79. </where>
  80. ORDER BY apu.submission_time DESC
  81. </select>
  82. <select id="parentPageList" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  83. SELECT
  84. apu.id,
  85. apu.users_id as usersId,
  86. apu.userName as usersName,
  87. apu.start_time as startTime,
  88. apu.end_time as endTime,
  89. apu.department,
  90. apu.reason_application as reasonApplication,
  91. apu.submission_time as submissionTime,
  92. apu.status,
  93. apu.approver_id as approverId,
  94. apu.examine_and_approve_time as examineAndApproveTime,
  95. apu.examine_and_approve_remark as examineAndApproveRemark,
  96. apu.secondary_approver_id as secondaryApproverId,
  97. apu.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  98. apu.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  99. apu.approverName,
  100. apu.secondaryApproverName,
  101. apu.houseCount,
  102. apu.orgName
  103. FROM
  104. (
  105. SELECT
  106. ap.id,
  107. ap.users_id ,
  108. ap.start_time,
  109. ap.end_time ,
  110. ap.department,
  111. ap.reason_application ,
  112. ap.submission_time,
  113. ap.status,
  114. ap.approver_id ,
  115. ap.examine_and_approve_time ,
  116. ap.examine_and_approve_remark ,
  117. ap.secondary_approver_id,
  118. ap.secondary_examine_and_approve_time ,
  119. ap.secondary_examine_and_approve_remark,
  120. a.name as approverName,
  121. a2.name as secondaryApproverName,
  122. u.user_name as userName,
  123. o.id as orgId,
  124. o.name as orgName,
  125. ap.house_count as houseCount
  126. FROM
  127. `application_procedure_temporary` ap
  128. LEFT JOIN admin a on a.id=ap.approver_id
  129. LEFT JOIN admin a2 on a2.id=ap.secondary_approver_id
  130. LEFT JOIN users u on u.id=ap.users_id
  131. LEFT JOIN organization o on o.id=u.organ_id
  132. WHERE ap.deleted=0 and FIND_IN_SET(ap.status,#{type})
  133. ) apu
  134. <where>
  135. <if test="submissionStartTime != null and submissionStartTime != '' and submissionEndTime != null and submissionEndTime != '' ">
  136. and apu.submission_time >= #{submissionStartTime} and #{submissionEndTime}>= apu.submission_time
  137. </if>
  138. <if test="key != null and key != ''">
  139. AND ( apu.approverName LIKE '%' #{key} '%' OR apu.secondaryApproverName LIKE '%' #{key} '%' OR apu.userName LIKE '%' #{key} '%' )
  140. </if>
  141. <if test="examineAndApproveStartTime != null and examineAndApproveStartTime != '' and examineAndApproveEndTime != null and examineAndApproveEndTime != '' ">
  142. and apu.examine_and_approve_time >= #{examineAndApproveStartTime} and #{examineAndApproveEndTime}>=
  143. apu.examine_and_approve_time
  144. </if>
  145. <!-- <if test="type != null and type != ''">
  146. and apu.status= #{type}
  147. </if>-->
  148. <if test="department != null and department != ''">
  149. and apu.department= #{department}
  150. </if>
  151. <if test="orgList != null and orgList.size() > 0">
  152. and apu.orgId in
  153. <foreach collection="orgList" item="orgId" index="index" open="(" close=")" separator=",">
  154. ${orgId}
  155. </foreach>
  156. </if>
  157. </where>
  158. ORDER BY apu.submission_time DESC
  159. </select>
  160. <select id="appletRecordPage" resultType="com.template.model.vo.ApplicationProcedureTemporaryRecordVo">
  161. SELECT
  162. ap.id,
  163. ap.users_id as usersId,
  164. ap.start_time as startTime,
  165. ap.end_time as endTime,
  166. ap.department,
  167. ap.reason_application as reasonApplication,
  168. ap.submission_time as submissionTime,
  169. ap.status,
  170. ap.approver_id as approverId,
  171. ap.examine_and_approve_time as examineAndApproveTime,
  172. ap.examine_and_approve_remark as examineAndApproveRemark,
  173. ap.secondary_approver_id as secondaryApproverId,
  174. ap.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  175. ap.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  176. a.name as approverName,
  177. a2.name as secondaryApproverName
  178. FROM
  179. `application_procedure_temporary` ap
  180. LEFT JOIN admin a on a.id=ap.approver_id
  181. LEFT JOIN admin a2 on a2.id=ap.secondary_approver_id
  182. where
  183. ap.deleted=0
  184. AND ap.users_id=#{userId}
  185. <if test="startTime != null and startTime != '' and endTime != null and startTime != '' ">
  186. AND ap.submission_time>=#{startTime} and #{endTime}>=ap.submission_time
  187. </if>
  188. <if test="status != null and status != ''">
  189. AND ap.`status`=#{status}
  190. </if>
  191. ORDER BY ap.submission_time DESC
  192. </select>
  193. <select id="appletDetail" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  194. SELECT
  195. ap.id,
  196. ap.users_id as usersId,
  197. ap.start_time as startTime,
  198. ap.end_time as endTime,
  199. ap.department,
  200. ap.reason_application as reasonApplication,
  201. ap.submission_time as submissionTime,
  202. ap.status,
  203. ap.approver_id as approverId,
  204. ap.examine_and_approve_time as examineAndApproveTime,
  205. ap.examine_and_approve_remark as examineAndApproveRemark,
  206. ap.secondary_approver_id as secondaryApproverId,
  207. ap.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  208. ap.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  209. a.name as approverName,
  210. a2.name as secondaryApproverName,
  211. u.user_name as usersName,
  212. ap.house_count as houseCount
  213. FROM
  214. `application_procedure_temporary` ap
  215. LEFT JOIN admin a on a.id=ap.approver_id
  216. LEFT JOIN admin a2 on a2.id=ap.secondary_approver_id
  217. LEFT JOIN users u on u.id=ap.users_id and u.deleted=0
  218. where
  219. ap.deleted=0
  220. AND ap.id=#{id}
  221. </select>
  222. <select id="getDate" resultType="com.template.model.pojo.ApplicationProcedureTemporary">
  223. SELECT
  224. *
  225. FROM
  226. `application_procedure_temporary`
  227. WHERE
  228. deleted = 0
  229. AND users_id = #{userId}
  230. AND `status` = 3
  231. AND #{dateTime} >= start_time
  232. AND end_time >= #{dateTime}
  233. </select>
  234. <select id="pageAppletList" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  235. SELECT
  236. ap.id,
  237. ap.users_id as usersId,
  238. ap.start_time as startTime,
  239. ap.end_time as endTime,
  240. ap.department,
  241. ap.reason_application as reasonApplication,
  242. ap.submission_time as submissionTime,
  243. ap.status,
  244. ap.approver_id as approverId,
  245. ap.examine_and_approve_time as examineAndApproveTime,
  246. ap.examine_and_approve_remark as examineAndApproveRemark,
  247. ap.secondary_approver_id as secondaryApproverId,
  248. ap.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  249. ap.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  250. u.user_name as usersName,
  251. ap.house_count as houseCount
  252. FROM
  253. `application_procedure_temporary` ap
  254. LEFT JOIN users u on u.id=ap.users_id and u.deleted=0
  255. where
  256. ap.deleted=0
  257. <if test="startTime != null and startTime != '' and endTime != null and startTime != '' ">
  258. AND ap.submission_time>=#{startTime} and #{endTime}>=ap.submission_time
  259. </if>
  260. <if test="orgList != null and orgList.size() > 0">
  261. and ap.orgId in
  262. <foreach collection="orgList" item="orgId" index="index" open="(" close=")" separator=",">
  263. ${orgId}
  264. </foreach>
  265. </if>
  266. <if test="status != null and status != ''">
  267. AND ap.`status`=#{status}
  268. </if>
  269. ORDER BY ap.submission_time DESC
  270. </select>
  271. <select id="parentAppletPageList" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  272. SELECT
  273. ap.id,
  274. ap.users_id as usersId,
  275. ap.start_time as startTime,
  276. ap.end_time as endTime,
  277. ap.department,
  278. ap.reason_application as reasonApplication,
  279. ap.submission_time as submissionTime,
  280. ap.status,
  281. ap.approver_id as approverId,
  282. ap.examine_and_approve_time as examineAndApproveTime,
  283. ap.examine_and_approve_remark as examineAndApproveRemark,
  284. ap.secondary_approver_id as secondaryApproverId,
  285. ap.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  286. ap.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  287. u.user_name as usersName,
  288. ap.house_count as houseCount
  289. FROM
  290. `application_procedure_temporary` ap
  291. LEFT JOIN users u on u.id=ap.users_id and u.deleted=0
  292. where
  293. ap.deleted=0
  294. <if test="startTime != null and startTime != '' and endTime != null and startTime != '' ">
  295. AND ap.submission_time>=#{startTime} and #{endTime}>=ap.submission_time
  296. </if>
  297. <if test="orgList != null and orgList.size() > 0">
  298. and ap.orgId in
  299. <foreach collection="orgList" item="orgId" index="index" open="(" close=")" separator=",">
  300. ${orgId}
  301. </foreach>
  302. </if>
  303. and FIND_IN_SET(ap.status,#{status})
  304. ORDER BY ap.submission_time DESC
  305. </select>
  306. </mapper>