ApplicationProcedureTemporaryMapper.xml 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347
  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. u.user_name as userName,
  179. o.name as orgName,
  180. ap.house_count as houseCount
  181. FROM
  182. `application_procedure_temporary` ap
  183. LEFT JOIN admin a on a.id=ap.approver_id
  184. LEFT JOIN admin a2 on a2.id=ap.secondary_approver_id
  185. LEFT JOIN users u on u.id=ap.users_id
  186. LEFT JOIN organization o on o.id=u.organ_id
  187. where
  188. ap.deleted=0
  189. AND ap.users_id=#{userId}
  190. <if test="startTime != null and startTime != '' and endTime != null and startTime != '' ">
  191. AND ap.submission_time>=#{startTime} and #{endTime}>=ap.submission_time
  192. </if>
  193. <if test="status != null and status != ''">
  194. AND ap.`status`=#{status}
  195. </if>
  196. ORDER BY ap.submission_time DESC
  197. </select>
  198. <select id="appletDetail" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  199. SELECT
  200. ap.id,
  201. ap.users_id as usersId,
  202. ap.start_time as startTime,
  203. ap.end_time as endTime,
  204. ap.department,
  205. ap.reason_application as reasonApplication,
  206. ap.submission_time as submissionTime,
  207. ap.status,
  208. ap.approver_id as approverId,
  209. ap.examine_and_approve_time as examineAndApproveTime,
  210. ap.examine_and_approve_remark as examineAndApproveRemark,
  211. ap.secondary_approver_id as secondaryApproverId,
  212. ap.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  213. ap.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  214. a.name as approverName,
  215. a2.name as secondaryApproverName,
  216. u.user_name as usersName,
  217. ap.house_count as houseCount,
  218. o.name as orgName
  219. FROM
  220. `application_procedure_temporary` ap
  221. LEFT JOIN admin a on a.id=ap.approver_id
  222. LEFT JOIN admin a2 on a2.id=ap.secondary_approver_id
  223. LEFT JOIN users u on u.id=ap.users_id and u.deleted=0
  224. LEFT JOIN organization o on o.id=u.organ_id
  225. where
  226. ap.deleted=0
  227. AND ap.id=#{id}
  228. </select>
  229. <select id="getDate" resultType="com.template.model.pojo.ApplicationProcedureTemporary">
  230. SELECT
  231. *
  232. FROM
  233. `application_procedure_temporary`
  234. WHERE
  235. deleted = 0
  236. AND users_id = #{userId}
  237. AND `status` = 3
  238. AND #{dateTime} >= start_time
  239. AND end_time >= #{dateTime}
  240. </select>
  241. <select id="pageAppletList" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  242. SELECT
  243. ap.id,
  244. ap.users_id as usersId,
  245. ap.start_time as startTime,
  246. ap.end_time as endTime,
  247. ap.department,
  248. ap.reason_application as reasonApplication,
  249. ap.submission_time as submissionTime,
  250. ap.status,
  251. ap.approver_id as approverId,
  252. ap.examine_and_approve_time as examineAndApproveTime,
  253. ap.examine_and_approve_remark as examineAndApproveRemark,
  254. ap.secondary_approver_id as secondaryApproverId,
  255. ap.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  256. ap.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  257. u.user_name as usersName,
  258. ap.house_count as houseCount,
  259. o.name as orgName
  260. FROM
  261. `application_procedure_temporary` ap
  262. LEFT JOIN users u on u.id=ap.users_id and u.deleted=0
  263. LEFT JOIN organization o on o.id=u.organ_id
  264. where
  265. ap.deleted=0
  266. <if test="startTime != null and startTime != '' and endTime != null and startTime != '' ">
  267. AND ap.submission_time>=#{startTime} and #{endTime}>=ap.submission_time
  268. </if>
  269. <if test="orgList != null and orgList.size() > 0">
  270. and u.organ_id in
  271. <foreach collection="orgList" item="orgId" index="index" open="(" close=")" separator=",">
  272. ${orgId}
  273. </foreach>
  274. </if>
  275. <if test="status != null and status != ''">
  276. AND ap.`status`=#{status}
  277. </if>
  278. ORDER BY ap.submission_time DESC
  279. </select>
  280. <select id="parentAppletPageList" resultType="com.template.model.vo.ApplicationProcedureTemporaryVo">
  281. SELECT
  282. ap.id,
  283. ap.users_id as usersId,
  284. ap.start_time as startTime,
  285. ap.end_time as endTime,
  286. ap.department,
  287. ap.reason_application as reasonApplication,
  288. ap.submission_time as submissionTime,
  289. ap.status,
  290. ap.approver_id as approverId,
  291. ap.examine_and_approve_time as examineAndApproveTime,
  292. ap.examine_and_approve_remark as examineAndApproveRemark,
  293. ap.secondary_approver_id as secondaryApproverId,
  294. ap.secondary_examine_and_approve_time as secondaryExamineAndApproveTime,
  295. ap.secondary_examine_and_approve_remark as secondaryExamineAndApproveRemark,
  296. u.user_name as usersName,
  297. ap.house_count as houseCount,
  298. o.name as orgName
  299. FROM
  300. `application_procedure_temporary` ap
  301. LEFT JOIN users u on u.id=ap.users_id and u.deleted=0
  302. LEFT JOIN organization o on o.id=u.organ_id
  303. where
  304. ap.deleted=0
  305. <if test="startTime != null and startTime != '' and endTime != null and startTime != '' ">
  306. AND ap.submission_time>=#{startTime} and #{endTime}>=ap.submission_time
  307. </if>
  308. <if test="orgList != null and orgList.size() > 0">
  309. and u.organ_id in
  310. <foreach collection="orgList" item="orgId" index="index" open="(" close=")" separator=",">
  311. ${orgId}
  312. </foreach>
  313. </if>
  314. and FIND_IN_SET(ap.status,#{status})
  315. ORDER BY ap.submission_time DESC
  316. </select>
  317. <select id="getApt" resultType="com.template.model.pojo.ApplicationProcedureTemporary">
  318. SELECT
  319. *
  320. FROM
  321. `application_procedure_temporary`
  322. WHERE deleted=0
  323. AND #{state} >= start_time
  324. AND end_time >= #{end}
  325. AND `status` =3
  326. AND users_id=#{userId}
  327. </select>
  328. </mapper>