PlatCarMapper.xml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.project.zcustom.mapper.car.PlatCarMapper">
  6. <resultMap type="com.project.zcustom.domain.addional.LargeCar" id="LargePlatPublicCarResult">
  7. <result property="appEncode" column="app_encode" />
  8. <result property="appOrg" column="app_org" />
  9. <result property="totalCarNum" column="total_car_num" />
  10. <result property="carNumOne" column="car_num_one" />
  11. <result property="carNumTwo" column="car_num_two" />
  12. <result property="carNumThree" column="car_num_three" />
  13. <result property="carNumFour" column="car_num_four" />
  14. <result property="carNumFive" column="car_num_five" />
  15. <result property="enterpriseCarNum" column="enterprise_car_num" />
  16. <result property="headCarNum" column="head_car_num" />
  17. <result property="oilCarNum" column="oil_car_num" />
  18. <result property="newPowerCarNum" column="new_power_car_num" />
  19. <result property="establishmentsCarNum" column="establishments_car_num" />
  20. <result property="yearAddNum" column="year_add_num" />
  21. <result property="yearReduceNum" column="year_reduce_num" />
  22. <result property="notArchivedNum" column="not_archived_num" />
  23. <result property="noPidNum" column="no_pid_num" />
  24. <result property="overSpeedNum" column="over_speed_num" />
  25. <result property="holidayNum" column="holiday_num" />
  26. <result property="pcdNum" column="pcd_num" />
  27. <result property="avgPcdNum" column="avg_pcd_num" />
  28. <result property="mileCount" column="mile_count" />
  29. <result property="avgMile" column="avg_mile" />
  30. </resultMap>
  31. <resultMap type="com.project.zcustom.domain.addional.LargeCarDetail" id="LargePlatPublicCarChangeDetailResult">
  32. <result property="appName" column="app_name" />
  33. <result property="appEncode" column="app_encode" />
  34. <result property="vehicleNum" column="vehicle_num" />
  35. <result property="useProperty" column="use_property" />
  36. <result property="assetsCard" column="assets_card" />
  37. <result property="orgDate" column="org_date" />
  38. <result property="handleDate" column="handle_date" />
  39. <result property="handleReason" column="handle_reason" />
  40. <result property="flag" column="flag" />
  41. </resultMap>
  42. <resultMap type="com.project.zcustom.domain.addional.LargeWarnDetail" id="LargePlatPublicCarWarnDetailResult">
  43. <result property="appName" column="app_name" />
  44. <result property="appEncode" column="app_encode" />
  45. <result property="vehicleNum" column="vehicle_num" />
  46. <result property="alertType" column="alert_type" />
  47. <result property="startTime" column="start_time" />
  48. <result property="endTime" column="end_time" />
  49. </resultMap>
  50. <resultMap type="com.project.zcustom.domain.addional.LargeCarRank" id="LargeCarRankResult">
  51. <result property="orgName" column="app_name" />
  52. <result property="appEncode" column="app_encode" />
  53. <result property="pcdCount" column="pcd_count" />
  54. <result property="vehicleNum" column="vehicle_num" />
  55. </resultMap>
  56. <resultMap type="com.project.zcustom.domain.addional.LargeUnitRank" id="LargeUnitRankResult">
  57. <result property="id" column="id" />
  58. <result property="appName" column="app_name" />
  59. <result property="pcdNum" column="pcd_num" />
  60. <result property="totalCarNum" column="total_car_num" />
  61. <result property="appEncode" column="app_encode" />
  62. </resultMap>
  63. <select id="getResourceNumber" parameterType="String" resultMap="LargePlatPublicCarResult">
  64. SELECT
  65. SUM(total_car_num) AS total_car_num,
  66. SUM(car_num_one) AS car_num_one,
  67. SUM(car_num_two) AS car_num_two,
  68. SUM(car_num_three) AS car_num_three,
  69. SUM(car_num_four) AS car_num_four,
  70. SUM(car_num_five) AS car_num_five,
  71. SUM(enterprise_car_num) AS enterprise_car_num,
  72. SUM(head_car_num) AS head_car_num,
  73. SUM(oil_car_num) AS oil_car_num,
  74. SUM(new_power_car_num) AS new_power_car_num,
  75. SUM(establishments_car_num) AS establishments_car_num,
  76. SUM(year_add_num) AS year_add_num,
  77. SUM(year_reduce_num) AS year_reduce_num
  78. FROM
  79. large_plat_public_car a
  80. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  81. <if test="appOrg != '0000'">
  82. WHERE
  83. b.app_org = #{appOrg}
  84. </if>
  85. </select>
  86. <select id="getCarDetail" resultMap="LargePlatPublicCarChangeDetailResult">
  87. SELECT
  88. app_name,
  89. vehicle_num,
  90. use_property,
  91. assets_card,
  92. org_date,
  93. handle_date,
  94. handle_reason
  95. FROM
  96. large_plat_public_car_change_detail a
  97. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  98. WHERE
  99. flag = #{flag}
  100. <if test="appOrg != '0000'">AND b.app_org = #{appOrg}</if>
  101. <if test="flag == 0">ORDER BY org_date DESC</if>
  102. <if test="flag == 1">ORDER BY handle_date DESC</if>
  103. LIMIT #{pageSize} OFFSET #{page}
  104. </select>
  105. <select id="getCarDetailNum" resultType="int">
  106. SELECT
  107. count(1)
  108. FROM
  109. large_plat_public_car_change_detail a
  110. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  111. WHERE
  112. flag = #{flag}
  113. <if test="appOrg != '0000'">AND b.app_org = #{appOrg}</if>
  114. </select>
  115. <select id="getMonitorNumber" parameterType="String" resultMap="LargePlatPublicCarResult">
  116. SELECT
  117. SUM(not_archived_num) AS not_archived_num,
  118. SUM(no_pid_num) AS no_pid_num,
  119. SUM(over_speed_num) AS over_speed_num,
  120. SUM(holiday_num) AS holiday_num,
  121. SUM(terminal_total) AS terminal_total,
  122. SUM(terminal_install) AS terminal_install,
  123. SUM(terminal_online) AS terminal_online
  124. FROM
  125. large_plat_public_car a
  126. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  127. <if test="appOrg != '0000'">
  128. WHERE
  129. b.app_org = #{appOrg}
  130. </if>
  131. </select>
  132. <select id="getWarnDetail" resultMap="LargePlatPublicCarWarnDetailResult">
  133. SELECT
  134. app_name,
  135. vehicle_num,
  136. alert_type,
  137. start_time,
  138. end_time
  139. FROM
  140. large_plat_public_car_warn_detail a
  141. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  142. WHERE
  143. alert_type = #{alertType}
  144. <if test="appOrg != '0000'">AND b.app_org = #{appOrg}</if>
  145. ORDER BY start_time DESC
  146. LIMIT #{pageSize} OFFSET #{page}
  147. </select>
  148. <select id="getWarnDetailNum" resultType="int">
  149. SELECT
  150. count(1)
  151. FROM
  152. large_plat_public_car_warn_detail a
  153. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  154. WHERE
  155. alert_type = #{alertType}
  156. <if test="appOrg != '0000'">AND b.app_org = #{appOrg}</if>
  157. </select>
  158. <select id="getOperationManageTopHalf" parameterType="String" resultMap="LargePlatPublicCarResult">
  159. SELECT
  160. AVG(avg_mile) AS avg_mile,
  161. SUM(mile_count) AS mile_count,
  162. AVG(avg_pcd_num) AS avg_pcd_num,
  163. SUM(pcd_num) AS pcd_num
  164. FROM
  165. large_plat_public_car a
  166. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  167. <if test="appOrg != '0000'">
  168. WHERE
  169. b.app_org = #{appOrg}
  170. </if>
  171. </select>
  172. <select id="getUnitRankTop" resultMap="LargeUnitRankResult">
  173. SELECT
  174. app_name,
  175. total_car_num,
  176. pcd_num
  177. FROM
  178. large_plat_public_car a
  179. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  180. WHERE app_parent_org = '10001'
  181. ORDER BY
  182. pcd_num
  183. LIMIT 3
  184. </select>
  185. <select id="getUnitRankLast" resultMap="LargeUnitRankResult">
  186. SELECT
  187. app_name,
  188. total_car_num,
  189. pcd_num
  190. FROM
  191. large_plat_public_car a
  192. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  193. WHERE app_parent_org = '10001'
  194. ORDER BY
  195. pcd_num DESC
  196. LIMIT 3
  197. </select>
  198. <select id="getCarRank" resultMap="LargeCarRankResult">
  199. SELECT
  200. app_name,
  201. vehicle_num,
  202. pcd_count
  203. FROM
  204. large_plat_public_car_rank_person a
  205. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  206. ORDER BY
  207. pcd_count DESC
  208. LIMIT 10
  209. </select>
  210. <select id="getUnitRankList" resultMap="LargeUnitRankResult">
  211. SELECT
  212. a.id,
  213. a.app_encode,
  214. app_name,
  215. total_car_num,
  216. pcd_num
  217. FROM
  218. large_plat_public_car a
  219. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  220. WHERE app_parent_org = '10001'
  221. ORDER BY
  222. pcd_num
  223. </select>
  224. <select id="getSelfCarNum" parameterType="String" resultMap="LargePlatPublicCarResult">
  225. SELECT
  226. total_car_num, b.app_org
  227. FROM
  228. large_plat_public_car a
  229. LEFT JOIN large_plat_app_org b ON a.app_encode = b.app_encode
  230. WHERE app_org IN
  231. <foreach collection="list" item="item" open="(" separator="," close=")">
  232. #{item}
  233. </foreach>
  234. ORDER BY
  235. pcd_num
  236. </select>
  237. <delete id="deleteAllCarDetail" parameterType="integer">
  238. delete from large_plat_public_car_change_detail where flag = #{flag}
  239. </delete>
  240. <delete id="deleteAllWarnDetail" parameterType="String">
  241. delete from large_plat_public_car_warn_detail where alert_type = #{alertType}
  242. </delete>
  243. <delete id="deleteAllCarRank">
  244. delete from large_plat_public_car_rank_person
  245. </delete>
  246. </mapper>