WindFarmDayCountMapper.xml 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  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="com.dskj.znzn.transData.web.dataTransfer.mapper.WindFarmDayCountMapper">
  4. <select id="getTimeRange" resultType="com.dskj.znzn.transData.web.dataTransfer.outData.GetTimeRangeOutData">
  5. select min(add_date) as 'startTime',
  6. max(latest_data_time)as 'endTime'
  7. from wind_farm_day_count t
  8. where t.wind_farm_code = #{windFarmCode}
  9. and t.type in
  10. <foreach collection="transferType" item="value" separator="," open="(" close=")">
  11. #{value}
  12. </foreach>
  13. and t.sync_status = 1
  14. and t.del_status = 0
  15. </select>
  16. <select id="platformAutoAnalysisTime"
  17. resultType="com.dskj.znzn.transData.web.dataTransfer.outData.PltAutoAnalysisTimeOutData">
  18. select
  19. min(add_date) as 'startTime',
  20. max(add_date) as 'endTime'
  21. from wind_farm_day_count t
  22. where
  23. t.type in ('minute', 'second')
  24. <if test="windFarmCode != null and windFarmCode != ''">
  25. AND t.wind_farm_code = #{windFarmCode}
  26. </if>
  27. and t.sync_status = 1
  28. and t.del_status = 0
  29. </select>
  30. <select id="getHistoryDataSummary"
  31. resultType="com.dskj.znzn.transData.web.dataTransfer.outData.HistoryDataSummaryOutData">
  32. SELECT t.wind_farm_code,
  33. t.wind_farm_name,
  34. t.type,
  35. DATEDIFF(max(add_date),min(add_date))+1 AS 'totalDays',
  36. sum(t.count) AS 'totalDataCount',
  37. max(t.latest_data_time) AS 'latestDataTime',
  38. max(t.update_time) as 'update_time',
  39. if(a.param_value &lt; DATEDIFF(max(add_date),min(add_date))+1,1,0) as 'canAnalysis'
  40. FROM wind_farm_day_count t
  41. LEFT JOIN sys_conf a on t.type = a.param_key
  42. WHERE a.type = 'system_analysis'
  43. # AND t.type IN ('minute', 'second')
  44. AND t.sync_status = 1
  45. AND t.del_status = 0
  46. <if test="windFarmCode != null and windFarmCode != ''">
  47. AND t.wind_farm_code = #{windFarmCode}
  48. </if>
  49. <if test="type != null and type != ''">
  50. AND t.type = #{type}
  51. </if>
  52. <if test="beginDate != null and beginDate != ''">
  53. AND t.add_date &gt;= #{beginDate}
  54. </if>
  55. <if test="endDate != null and endDate != ''">
  56. AND t.latest_data_time &lt;= #{endDate}
  57. </if>
  58. GROUP BY t.wind_farm_code,
  59. t.wind_farm_name,
  60. t.type,
  61. a.param_value
  62. ORDER BY t.wind_farm_code,t.type
  63. </select>
  64. <select id="getIndexOnlineData"
  65. resultType="com.dskj.znzn.transData.web.dataTransfer.outData.HistoryDataSummaryOutData">
  66. SELECT b.wind_farm_code,
  67. b.wind_farm_name,
  68. if(COUNT(1) = SUM(b.canAnalysis), 1, 0) as 'canAnalysis'
  69. FROM (SELECT t.wind_farm_code,
  70. t.wind_farm_name,
  71. if(a.param_value &lt; DATEDIFF(max(add_date), min(add_date)) + 1, 1, 0) as 'canAnalysis'
  72. FROM wind_farm_day_count t
  73. LEFT JOIN sys_conf a on t.type = a.param_key
  74. WHERE a.type = 'system_analysis'
  75. AND t.type IN ('minute', 'second')
  76. AND t.sync_status = 1
  77. AND t.del_status = 0
  78. GROUP BY t.wind_farm_code, t.wind_farm_name, t.type, a.param_value) b
  79. GROUP BY b.wind_farm_code, b.wind_farm_name
  80. ORDER BY b.wind_farm_code
  81. </select>
  82. </mapper>