WatchBloodGlucoseDataMapper.xml 4.7 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.WatchBloodGlucoseDataMapper">
  6. <resultMap id="BaseResultMap" type="com.fs.watch.domain.WatchBloodGlucoseData">
  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="bloodGlucose" column="blood_glucose" jdbcType="INTEGER"/>
  10. <result property="status" column="status" jdbcType="INTEGER"/>
  11. <result property="createTime" column="create_time" jdbcType="VARCHAR"/>
  12. </resultMap>
  13. <sql id="Base_Column_List">
  14. id,device_id,blood_glucose,
  15. status,create_time
  16. </sql>
  17. <!-- 插入数据 -->
  18. <update id="insert" parameterType="com.fs.watch.domain.WatchBloodGlucoseData">
  19. INSERT INTO watch_blood_glucose_data
  20. <trim prefix="(" suffix=")" suffixOverrides=",">
  21. <if test="data.id != null">
  22. id,
  23. </if>
  24. <if test="data.deviceId != null">
  25. device_id,
  26. </if>
  27. <if test="data.bloodGlucose != null">
  28. blood_glucose,
  29. </if>
  30. <if test="data.status != null">
  31. status,
  32. </if>
  33. <if test="data.createTime != null">
  34. create_time,
  35. </if>
  36. </trim>
  37. <trim prefix="VALUES (" suffix=")" suffixOverrides=",">
  38. <if test="data.id != null">
  39. #{data.id},
  40. </if>
  41. <if test="data.deviceId != null">
  42. #{data.deviceId},
  43. </if>
  44. <if test="data.bloodGlucose != null">
  45. #{data.bloodGlucose},
  46. </if>
  47. <if test="data.status != null">
  48. #{data.status},
  49. </if>
  50. <if test="data.createTime != null">
  51. #{data.createTime},
  52. </if>
  53. </trim>
  54. </update>
  55. <!-- 根据创建时间查询记录数 -->
  56. <select id="queryByCreateTime" resultType="java.lang.Integer">
  57. SELECT COUNT(*)
  58. FROM watch_blood_glucose_data
  59. WHERE create_time = #{createTime}
  60. </select>
  61. <!-- 根据日期和设备ID查询数据 -->
  62. <select id="queryByDateAndDeviceId" parameterType="map" resultMap="BaseResultMap">
  63. SELECT id, device_id, blood_glucose,status, create_time
  64. FROM watch_blood_glucose_data
  65. WHERE device_id = #{deviceId}
  66. AND toDate(create_time) = #{date}
  67. ORDER BY create_time ASC
  68. </select>
  69. <select id="queryBgByDate" resultMap="BaseResultMap">
  70. SELECT
  71. <include refid="Base_Column_List"/>
  72. FROM
  73. watch_blood_glucose_data
  74. WHERE
  75. device_id = #{deviceId}
  76. <if test="status != null and status !=''" >
  77. AND status = #{status}
  78. </if>
  79. AND create_time BETWEEN #{startTime} AND #{endTime}
  80. ORDER BY
  81. create_time ASC
  82. </select>
  83. <select id="countBpByDate" resultType="java.util.Map">
  84. SELECT
  85. status,
  86. COUNT(*) AS count
  87. FROM
  88. watch_blood_glucose_data
  89. WHERE
  90. create_time BETWEEN #{startTime} AND #{endTime}
  91. AND device_id = #{deviceId}
  92. GROUP BY
  93. status
  94. </select>
  95. <select id="getLatest" resultMap="BaseResultMap">
  96. SELECT
  97. <include refid="Base_Column_List"/>
  98. FROM
  99. watch_blood_glucose_data
  100. WHERE
  101. device_id = #{deviceId}
  102. ORDER BY
  103. create_time DESC LIMIT 1
  104. </select>
  105. <select id="countBgPageByDate" resultType="java.lang.Integer">
  106. SELECT count(0)
  107. FROM watch_blood_glucose_data
  108. WHERE
  109. device_id = #{deviceId}
  110. <if test="status!=null and status !=''">
  111. and status = #{status}
  112. </if>
  113. AND (create_time BETWEEN #{startTime} AND #{endTime})
  114. </select>
  115. <select id="queryBgPageByDate" resultMap="BaseResultMap">
  116. SELECT
  117. <include refid="Base_Column_List"/>
  118. FROM watch_blood_glucose_data
  119. WHERE
  120. device_id = #{deviceId}
  121. <if test="status!=null and status !=''">
  122. and status = #{status}
  123. </if>
  124. AND create_time BETWEEN #{startTime} AND #{endTime}
  125. ORDER BY create_time ASC LIMIT #{num},#{size}
  126. </select>
  127. <select id="queryByMonth" resultMap="BaseResultMap">
  128. SELECT *
  129. FROM watch.watch_blood_glucose_data
  130. WHERE device_id like #{deviceId} and toYYYYMM(create_time) = #{monthStr}
  131. </select>
  132. </mapper>