AttentionPoolStatisticsMapper.xml 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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.ruoyi.demo.mapper.AttentionPoolStatisticsDao">
  6. <resultMap type="com.ruoyi.demo.entity.AttentionPoolStatistics" id="StatisticsResult">
  7. <result property="statId" column="stat_id"/>
  8. <result property="attentionCount" column="attention_count"/>
  9. <result property="clueCount" column="clue_count"/>
  10. <result property="onlineCount" column="online_count"/>
  11. <result property="offlineCount" column="offline_count"/>
  12. <result property="userId" column="user_id"/>
  13. <result property="statTime" column="stat_time"/>
  14. </resultMap>
  15. <resultMap type="com.ruoyi.demo.entity.bo.AttentionPoolStatisticsBo" id="StatisticsBoResult">
  16. <result property="attentionCount" column="attention_count"/>
  17. <result property="clueCount" column="clue_count"/>
  18. <result property="onlineCount" column="online_count"/>
  19. <result property="offlineCount" column="offline_count"/>
  20. <result property="time" column="stat_time"/>
  21. </resultMap>
  22. <select id="searchAllByUserId" resultMap="StatisticsResult">
  23. select * from `bl_attention_pool_statistics`
  24. <where>
  25. <if test="userId != null">
  26. user_id = #{userId}
  27. </if>
  28. </where>
  29. </select>
  30. <select id="selectAllByUserIdAndDay" resultMap="StatisticsBoResult">
  31. SELECT
  32. SUM(attention_count) attention_count,
  33. SUM(clue_count) clue_count,
  34. SUM(online_count) online_count,
  35. SUM(offline_count) offline_count,
  36. DATE_FORMAT(stat_time,'%Y-%m-%d') stat_time
  37. FROM
  38. `bl_attention_pool_statistics`
  39. WHERE
  40. user_id = #{userId}
  41. <foreach collection="days" item="day" open="and DATE_FORMAT(stat_time,'%Y-%m-%d') in (" separator="," close=")">
  42. #{day,jdbcType=VARCHAR}
  43. </foreach>
  44. GROUP BY
  45. DATE_FORMAT(stat_time,'%Y-%m-%d');
  46. </select>
  47. <select id="selectAllByUserIdAndMonth" resultMap="StatisticsBoResult">
  48. SELECT
  49. SUM(attention_count) attention_count,
  50. SUM(clue_count) clue_count,
  51. SUM(online_count) online_count,
  52. SUM(offline_count) offline_count,
  53. DATE_FORMAT(stat_time,'%Y-%m') stat_time
  54. FROM
  55. `bl_attention_pool_statistics`
  56. WHERE
  57. user_id = #{userId}
  58. <foreach collection="months" item="month" open="and DATE_FORMAT(stat_time,'%Y-%m') in (" separator="," close=")">
  59. #{month,jdbcType=VARCHAR}
  60. </foreach>
  61. GROUP BY
  62. DATE_FORMAT(stat_time,'%Y-%m');
  63. </select>
  64. <select id="selectAllByUserIdAndYear" resultMap="StatisticsBoResult">
  65. SELECT
  66. SUM(attention_count) attention_count,
  67. SUM(clue_count) clue_count,
  68. SUM(online_count) online_count,
  69. SUM(offline_count) offline_count,
  70. DATE_FORMAT(stat_time,'%Y') stat_time
  71. FROM
  72. `bl_attention_pool_statistics`
  73. WHERE
  74. user_id = #{userId}
  75. <foreach collection="years" item="year" open="and DATE_FORMAT(stat_time,'%Y') in (" separator="," close=")">
  76. #{year,jdbcType=VARCHAR}
  77. </foreach>
  78. GROUP BY
  79. DATE_FORMAT(stat_time,'%Y');
  80. </select>
  81. </mapper>