WatchTemperatureDataMapper.xml 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  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.fs.watch.mapper.WatchTemperatureDataMapper">
  6. <resultMap id="BaseResultMap" type="com.fs.watch.domain.WatchTemperatureData">
  7. <result property="id" column="id" jdbcType="OTHER" typeHandler="com.fs.watch.handler.UUIDTypeHandler"/>
  8. <result property="deviceId" column="device_id" jdbcType="VARCHAR"/>
  9. <result property="envTemp" column="env_temp" jdbcType="FLOAT"/>
  10. <result property="estTemp" column="est_temp" jdbcType="FLOAT"/>
  11. <result property="axillaryTemp" column="axillary_temp" jdbcType="FLOAT"/>
  12. <result property="shellTemp" column="shell_temp" jdbcType="FLOAT"/>
  13. <result property="status" column="status" jdbcType="INTEGER"/>
  14. <result property="createTime" column="create_time" jdbcType="VARCHAR"/>
  15. </resultMap>
  16. <sql id="Base_Column_List">
  17. id,device_id,env_temp,
  18. est_temp,axillary_temp,shell_temp,status,
  19. create_time
  20. </sql>
  21. <!-- 查询创建时间是否存在 -->
  22. <select id="queryByCreateTime" parameterType="String" resultType="Integer">
  23. SELECT COUNT(*)
  24. FROM watch_temperature_data
  25. WHERE create_time = #{createTime}
  26. </select>
  27. <!-- 插入温度数据 -->
  28. <update id="insert" parameterType="com.fs.watch.domain.WatchTemperatureData">
  29. INSERT INTO watch_temperature_data
  30. <trim prefix="(" suffix=")" suffixOverrides=",">
  31. <if test="data.id != null">
  32. id,
  33. </if>
  34. <if test="data.deviceId != null">
  35. device_id,
  36. </if>
  37. <if test="data.envTemp != null">
  38. env_temp,
  39. </if>
  40. <if test="data.estTemp != null">
  41. est_temp,
  42. </if>
  43. <if test="data.axillaryTemp != null">
  44. axillary_temp,
  45. </if>
  46. <if test="data.shellTemp != null">
  47. shell_temp,
  48. </if>
  49. <if test="data.status != null">
  50. `status`,
  51. </if>
  52. <if test="data.createTime != null">
  53. create_time,
  54. </if>
  55. </trim>
  56. <trim prefix="VALUES (" suffix=")" suffixOverrides=",">
  57. <if test="data.id != null">
  58. #{data.id},
  59. </if>
  60. <if test="data.deviceId != null">
  61. #{data.deviceId},
  62. </if>
  63. <if test="data.envTemp != null">
  64. #{data.envTemp},
  65. </if>
  66. <if test="data.estTemp != null">
  67. #{data.estTemp},
  68. </if>
  69. <if test="data.axillaryTemp != null">
  70. #{data.axillaryTemp},
  71. </if>
  72. <if test="data.shellTemp != null">
  73. #{data.shellTemp},
  74. </if>
  75. <if test="data.status != null">
  76. #{data.status},
  77. </if>
  78. <if test="data.createTime != null">
  79. #{data.createTime},
  80. </if>
  81. </trim>
  82. </update>
  83. <!-- 查询某天某个设备的温度数据 -->
  84. <select id="queryByDateAndDeviceId" parameterType="map" resultMap="BaseResultMap">
  85. SELECT id, device_id, env_temp, est_temp, axillary_temp, shell_temp, `status`,create_time
  86. FROM watch_temperature_data
  87. WHERE device_id = #{deviceId}
  88. AND toDate(create_time) = #{date}
  89. ORDER BY create_time ASC
  90. </select>
  91. <select id="getLatest" resultMap="BaseResultMap">
  92. SELECT
  93. <include refid="Base_Column_List"/>
  94. FROM
  95. watch_temperature_data
  96. WHERE
  97. device_id = #{deviceId}
  98. ORDER BY
  99. create_time DESC LIMIT 1
  100. </select>
  101. <select id="page" resultMap="BaseResultMap">
  102. select <include refid="Base_Column_List"></include>
  103. from watch_temperature_data
  104. where device_id = #{deviceId}
  105. <if test="beginTime != null">
  106. and create_time <![CDATA[>=]]> #{beginTime}
  107. </if>
  108. <if test="endTime != null">
  109. and create_time <![CDATA[<=]]> #{endTime}
  110. </if>
  111. <!-- 数据范围过滤 -->
  112. ORDER BY create_time ASC
  113. ${params.dataScope}
  114. </select>
  115. <select id="list" resultMap="BaseResultMap">
  116. select <include refid="Base_Column_List"></include>
  117. from watch_temperature_data
  118. where device_id = #{deviceId}
  119. <if test="startTime != null">
  120. and create_time <![CDATA[>=]]> #{startTime}
  121. </if>
  122. <if test="endTime != null">
  123. and create_time <![CDATA[<=]]> #{endTime}
  124. </if>
  125. <!-- 数据范围过滤 -->
  126. ORDER BY create_time ASC
  127. </select>
  128. <select id="countByDate" resultType="java.util.Map">
  129. SELECT
  130. status,
  131. COUNT(*) AS count
  132. FROM
  133. watch_temperature_data
  134. WHERE
  135. create_time BETWEEN #{startTime} AND #{endTime}
  136. AND device_id = #{deviceId}
  137. GROUP BY
  138. status
  139. </select>
  140. </mapper>