LampInfoLogMapper.xml 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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.welampiot.dao.LampInfoLogDao">
  4. <delete id="deleteByLampId">
  5. delete from lamp_info_log where lampid=#{lampId};
  6. </delete>
  7. <select id="getListByVO" parameterType="com.welampiot.vo.LampLogVO" resultType="com.welampiot.dto.LampInfoLogDTO">
  8. select gridvolt as voltage,gridcurr as current,grid_active_power as power,dim_value as dimValue,updatetime as updateTime from lamp_info_log where lampid=#{lampId}
  9. <if test="startDate != null">
  10. and updateTime >= #{startDate}
  11. </if>
  12. <if test="endDate != null">
  13. and updateTime &lt;= #{endDate}
  14. </if>
  15. order by updatetime DESC
  16. </select>
  17. <select id="getDayEleUsedList" resultType="LampInfoLogDTO">
  18. SELECT
  19. SUM(A.minEle) AS sumMinEle,
  20. SUM(A.maxEle) AS sumMaxEle,
  21. SUM(A.minSave) AS sumMinSave,
  22. SUM(A.maxSave) AS sumMaxSave,
  23. SUM(A.minLightTime) AS sumMinLightTime,
  24. SUM(A.maxLightTime) AS sumMaxLightTime,
  25. DATE_FORMAT(A.minTime,'%Y-%m-%d %H:00:00') AS updateTime
  26. FROM
  27. (SELECT MIN(l.used_energy_total) AS minEle,
  28. MAX(l.used_energy_total) AS maxEle,
  29. MIN(l.work_time_total) AS minLightTime,
  30. MAX(l.work_time_total) AS maxLightTime,
  31. MIN(l.total_ele_save) AS minSave,
  32. MAX(l.total_ele_save) AS maxSave,
  33. l.updatetime AS minTime
  34. FROM lamp_info_log l
  35. LEFT JOIN lampinfo l1
  36. ON l.lampid = l1.id
  37. WHERE l.updatetime <![CDATA[ >= ]]> DATE_FORMAT(NOW(), '%Y-%m-%d 00:00:00')
  38. AND l.updatetime <![CDATA[ <= ]]> DATE_FORMAT(NOW(), '%Y-%m-%d 23:59:59')
  39. <choose>
  40. <when test="type == 0 and value != 0">
  41. AND l.lampid = #{value}
  42. </when>
  43. <when test="type == 1 and value != 0">
  44. AND l1.sectionid = #{value}
  45. </when>
  46. <when test="type == 2 and value != 0">
  47. AND l1.areaid = #{value}
  48. </when>
  49. </choose>
  50. GROUP BY DATE_FORMAT(l.updatetime, '%Y-%m-%d %H'),l.lampid) AS A
  51. GROUP BY DATE_FORMAT(A.minTime,'%Y-%m-%d %H')
  52. </select>
  53. <delete id="deleteLampInfoLogData">
  54. delete
  55. from lamp_info_log
  56. where lampid = #{lampId}
  57. <if test="startDate != null and startDate != ''">
  58. and updatetime <![CDATA[ >= ]]> #{startDate}
  59. </if>
  60. <if test="endDate != null and endDate != ''">
  61. and updatetime <![CDATA[ <= ]]> #{endDate}
  62. </if>
  63. </delete>
  64. </mapper>