TodoDataMapper.xml 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  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="cn.com.ty.lift.system.homepage.dao.mapper.TodoDataMapper">
  4. <!-- 分页查询sql -->
  5. <sql id="pageQuerySql">
  6. limit #{pageNum} , #{pageSize}
  7. </sql>
  8. <!-- 维保计划查询条件sql -->
  9. <sql id="maintenanceTodoQuerySql">
  10. where
  11. mp.mt_company_id = #{mtCompanyId}
  12. and
  13. mp.status <![CDATA[ != ]]> 1
  14. </sql>
  15. <!-- 急修记录查询条件sql -->
  16. <sql id="emergencyTodoQuerySql">
  17. where
  18. er.mt_company_id = #{mtCompanyId}
  19. and
  20. er.status <![CDATA[ != ]]> 2
  21. and
  22. er.status <![CDATA[ != ]]> 3
  23. </sql>
  24. <!-- 大修记录查询条件sql -->
  25. <sql id="capitalTodoQuerySql">
  26. where
  27. cr.mt_company_id = #{mtCompanyId}
  28. and
  29. cr.project_status <![CDATA[ != ]]> 4
  30. </sql>
  31. <!-- 年检记录查询条件sql -->
  32. <sql id="annualInspectionTodoSql">
  33. where
  34. ai.mt_company_id = #{mtCompanyId}
  35. and
  36. ai.status = 1
  37. </sql>
  38. <!-- 区域项目查询 -->
  39. <sql id="regionProjectSql">
  40. <if test="clerkId != null || regionChargeId != null">
  41. and p.region_id in (
  42. select id from region r
  43. where true
  44. <if test="clerkId != null">
  45. and find_in_set(#{clerkId}, r.clerk)
  46. </if>
  47. <if test="regionChargeId != null">
  48. and r.user_id = #{regionChargeId}
  49. </if>
  50. )
  51. </if>
  52. </sql>
  53. <!-- 获取维保计划待办事项 -->
  54. <select id="getMaintenanceTodoData"
  55. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  56. resultType="cn.com.ty.lift.system.homepage.dao.dto.response.MaintenanceTodoResponse">
  57. select
  58. mp.id as mtPlanId,
  59. mp.lift_id as liftId,
  60. mp.plan_date as planDate,
  61. l.registration_code as registrationCode,
  62. l.use_company_code as userCompanyCode,
  63. l.lift_type as liftType,
  64. ui.name as workerName
  65. from
  66. maintenance_plan mp
  67. left join
  68. lift l
  69. on
  70. mp.lift_id = l.id
  71. left join
  72. project_lift_relevance plr
  73. on
  74. l.id = plr.lift_id
  75. left join
  76. project p
  77. on
  78. plr.project_id = p.id
  79. left join
  80. user_info ui
  81. on
  82. mp.worker_id = ui.user_id
  83. <include refid="maintenanceTodoQuerySql"/>
  84. <include refid="regionProjectSql"/>
  85. order by plan_date
  86. <include refid="pageQuerySql"/>
  87. </select>
  88. <!-- 获取急修待办数据 -->
  89. <select id="getEmergencyTodoData"
  90. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  91. resultType="cn.com.ty.lift.system.homepage.dao.dto.response.EmergencyResponse">
  92. select
  93. er.id as emergencyId,
  94. er.lift_id as liftId,
  95. er.caller_name as callerName,
  96. er.fault_reason as faultReason,
  97. er.is_critical as isCritical,
  98. er.is_trapped as isTrapped,
  99. l.registration_code as registrationCode,
  100. l.coordinate as coordinate,
  101. p.project_name as projectName,
  102. p.project_code as projectCode,
  103. ui.name as workerName
  104. from
  105. emergency_repair er
  106. left join
  107. lift l
  108. on
  109. er.lift_id = l.id
  110. left join
  111. project p
  112. on
  113. er.project_id = p.id
  114. left join
  115. user_info ui
  116. on
  117. er.worker_id = ui.user_id
  118. <include refid="emergencyTodoQuerySql"/>
  119. <include refid="regionProjectSql"/>
  120. order by er.assign_time
  121. <include refid="pageQuerySql"/>
  122. </select>
  123. <!-- 获取大修待办事项 -->
  124. <select id="getCapitalRepairTodoData"
  125. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  126. resultType="cn.com.ty.lift.system.homepage.dao.dto.response.CapitalRepairResponse">
  127. select
  128. p.id as capitalRepairId,
  129. p.project_name as projectName,
  130. p.project_address as projectAddress,
  131. p.start_date as startDate,
  132. p.end_date as endDate,
  133. p.push_flag as pushFlag
  134. from
  135. capital_repair p
  136. <include refid="capitalTodoQuerySql"/>
  137. <include refid="regionProjectSql"/>
  138. order by p.create_date
  139. <include refid="pageQuerySql"/>
  140. </select>
  141. <!-- 获取年检待办数据 -->
  142. <select id="getAnnualInspectionTodoData"
  143. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  144. resultType="cn.com.ty.lift.system.homepage.dao.dto.response.AnnualInspectionResponse">
  145. select
  146. ai.id as annualInspectionId,
  147. ai.lift_id as liftId,
  148. ai.plan_date as planDate,
  149. p.project_name as projectName,
  150. p.project_code as projectCode,
  151. l.registration_code as registerationCode,
  152. l.use_company_code as useCompanyCode,
  153. l.lift_type as liftType,
  154. ui.name as workerName
  155. from
  156. annual_inspection ai
  157. left join
  158. lift l
  159. on
  160. ai.lift_id = l.id
  161. left join
  162. project_lift_relevance plr
  163. on
  164. plr.lift_id = l.id
  165. left join
  166. project p
  167. on
  168. plr.project_id = p.id
  169. left join
  170. user_info ui
  171. on
  172. ui.user_id = plr.worker_id
  173. <include refid="annualInspectionTodoSql"/>
  174. <include refid="regionProjectSql"/>
  175. <include refid="pageQuerySql"/>
  176. </select>
  177. <!-- 获取团队申请待办信息 -->
  178. <select id="getCompanyApplyTodo" parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  179. resultType="cn.com.ty.lift.system.homepage.dao.dto.response.CompanyApplyResponse">
  180. select
  181. mca.id as applyId,
  182. mca.mt_company_id as mtCompanyId,
  183. mca.attestation_name as companyName,
  184. mca.contacts_name as contractsName,
  185. mca.contacts_tel as contractsTel,
  186. mca.remarks as remarks,
  187. mca.create_time as createTime
  188. from
  189. mt_company_attestation mca
  190. where
  191. mca.is_certificated = #{isCertificated}
  192. <include refid="pageQuerySql"/>
  193. </select>
  194. <!-- 获取团队成员申请待办信息 -->
  195. <select id="getCompanyUserApplyTodo" parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  196. resultType="cn.com.ty.lift.system.homepage.dao.dto.response.CompanyUserApplyResponse">
  197. select
  198. ua.id as userApplyId,
  199. ui.avatar_url as avatarUrl,
  200. ui.name as userName,
  201. u.type as userType,
  202. u.mobile as mobile,
  203. u.type as type,
  204. u.create_date as applyDate
  205. from
  206. user_application ua
  207. left join
  208. user_info ui
  209. on
  210. ua.user_id = ui.user_id
  211. left join
  212. user_account u
  213. on
  214. ua.user_id = u.user_id
  215. where
  216. ua.mt_company_id = #{mtCompanyId}
  217. and
  218. ua.status = ${status}
  219. <include refid="pageQuerySql"/>
  220. </select>
  221. <!-- 获取急修待办条数 -->
  222. <select id="getEmergencyTodoCount"
  223. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  224. resultType="java.lang.Long">
  225. select
  226. count(1)
  227. from
  228. emergency_repair er
  229. left join
  230. lift l
  231. on
  232. er.lift_id = l.id
  233. left join
  234. project p
  235. on
  236. er.project_id = p.id
  237. <include refid="emergencyTodoQuerySql"/>
  238. <include refid="regionProjectSql"/>
  239. </select>
  240. <!-- 获取维保待办条数 -->
  241. <select id="getMaintenanceTodoCount"
  242. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  243. resultType="java.lang.Long">
  244. select
  245. count(1)
  246. from
  247. maintenance_plan mp
  248. left join
  249. lift l
  250. on
  251. mp.lift_id = l.id
  252. left join
  253. project_lift_relevance plr
  254. on
  255. l.id = plr.lift_id
  256. left join
  257. project p
  258. on
  259. plr.project_id = p.id
  260. <include refid="maintenanceTodoQuerySql"/>
  261. <include refid="regionProjectSql"/>
  262. </select>
  263. <!-- 获取大修待办条数 -->
  264. <select id="getCapitalTodoCount"
  265. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  266. resultType="java.lang.Long">
  267. select
  268. count(1)
  269. from
  270. capital_repair p
  271. <include refid="capitalTodoQuerySql"/>
  272. <include refid="regionProjectSql"/>
  273. </select>
  274. <!-- 获取年检待办条数 -->
  275. <select id="getAnnualTodoCount"
  276. parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
  277. resultType="java.lang.Long">
  278. select
  279. count(1)
  280. from
  281. annual_inspection ai
  282. left join
  283. lift l
  284. on
  285. ai.lift_id = l.id
  286. left join
  287. project_lift_relevance plr
  288. on
  289. plr.lift_id = l.id
  290. left join
  291. project p
  292. on
  293. plr.project_id = p.id
  294. <include refid="annualInspectionTodoSql"/>
  295. <include refid="regionProjectSql"/>
  296. </select>
  297. </mapper>