IbmsDeviceAlarmsMapper.xml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  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.pm.device.mapper.IbmsDeviceAlarmsMapper">
  6. <resultMap type="pd" id="IbmsDeviceAlarmResult">
  7. <result property="id" column="id" />
  8. <result property="alarmCode" column="alarm_code" />
  9. <result property="deviceCode" column="device_code" />
  10. <result property="deviceName" column="device_name" />
  11. <result property="deviceType" column="device_type" />
  12. <result property="subsystemType" column="subsystem_type" />
  13. <result property="alarmLevel" column="alarm_level" />
  14. <result property="alarmType" column="alarm_type" />
  15. <result property="alarmDesc" column="alarm_desc" />
  16. <result property="buildingName" column="building_name" />
  17. <result property="floorName" column="floor_name" />
  18. <result property="roomName" column="room_name" />
  19. <result property="spaceLocation" column="space_location" />
  20. <result property="alarmTime" column="alarm_time" />
  21. <result property="isReset" column="is_reset" />
  22. <result property="resetTime" column="reset_time" />
  23. <result property="resetBy" column="reset_by" />
  24. <result property="serviceOrderNo" column="service_order_no" />
  25. <result property="handleStatus" column="handle_status" />
  26. <result property="createTime" column="create_time" />
  27. <result property="updateTime" column="update_time" />
  28. </resultMap>
  29. <sql id="selectIbmsDeviceAlarmVo">
  30. select id, alarm_code, device_code, device_name, device_type, subsystem_type,
  31. alarm_level, alarm_type, alarm_desc, building_name, floor_name, room_name,
  32. space_location, alarm_time, is_reset, reset_time, reset_by,
  33. service_order_no, handle_status, create_time, update_time
  34. from ibms_device_alarms
  35. </sql>
  36. <select id="selectIbmsDeviceAlarmList" parameterType="pd" resultMap="IbmsDeviceAlarmResult">
  37. <include refid="selectIbmsDeviceAlarmVo"/>
  38. <where>
  39. <if test="alarmCode != null and alarmCode != ''">
  40. and alarm_code like concat('%', #{alarmCode}, '%')
  41. </if>
  42. <if test="deviceCode != null and deviceCode != ''">
  43. and device_code = #{deviceCode}
  44. </if>
  45. <if test="deviceName != null and deviceName != ''">
  46. and device_name like concat('%', #{deviceName}, '%')
  47. </if>
  48. <if test="deviceType != null and deviceType != ''">
  49. and device_type = #{deviceType}
  50. </if>
  51. <if test="alarmLevel != null">
  52. and alarm_level = #{alarmLevel}
  53. </if>
  54. <if test="buildingName != null and buildingName != ''">
  55. and building_name = #{buildingName}
  56. </if>
  57. <if test="floorName != null and floorName != ''">
  58. and floor_name = #{floorName}
  59. </if>
  60. <if test="isReset != null">
  61. and is_reset = #{isReset}
  62. </if>
  63. <if test="beginTime != null and beginTime != ''">
  64. and alarm_time &gt;= #{beginTime}
  65. </if>
  66. <if test="endTime != null and endTime != ''">
  67. and alarm_time &lt;= #{endTime}
  68. </if>
  69. </where>
  70. order by alarm_time desc
  71. </select>
  72. <select id="selectIbmsDeviceAlarmById" parameterType="Long" resultMap="IbmsDeviceAlarmResult">
  73. <include refid="selectIbmsDeviceAlarmVo"/>
  74. where id = #{id}
  75. </select>
  76. <!-- 统计查询 -->
  77. <select id="selectAlarmStatistics" resultType="pd">
  78. select
  79. count(1) as total,
  80. sum(case when is_reset = 0 then 1 else 0 end) as unreset,
  81. sum(case when alarm_level >= 3 then 1 else 0 end) as highLevel,
  82. sum(case when date(alarm_time) = curdate() then 1 else 0 end) as today
  83. from ibms_device_alarms
  84. <where>
  85. <if test="beginTime != null and beginTime != ''">
  86. and alarm_time &gt;= #{beginTime}
  87. </if>
  88. <if test="endTime != null and endTime != ''">
  89. and alarm_time &lt;= #{endTime}
  90. </if>
  91. </where>
  92. </select>
  93. <insert id="insertIbmsDeviceAlarm" parameterType="pd" useGeneratedKeys="true" keyProperty="id">
  94. insert into ibms_device_alarms
  95. <trim prefix="(" suffix=")" suffixOverrides=",">
  96. <if test="alarmCode != null and alarmCode != ''">alarm_code,</if>
  97. <if test="deviceCode != null and deviceCode != ''">device_code,</if>
  98. <if test="deviceName != null and deviceName != ''">device_name,</if>
  99. <if test="deviceType != null and deviceType != ''">device_type,</if>
  100. <if test="subsystemType != null and subsystemType != ''">subsystem_type,</if>
  101. <if test="alarmLevel != null">alarm_level,</if>
  102. <if test="alarmType != null and alarmType != ''">alarm_type,</if>
  103. <if test="alarmDesc != null and alarmDesc != ''">alarm_desc,</if>
  104. <if test="buildingName != null and buildingName != ''">building_name,</if>
  105. <if test="floorName != null and floorName != ''">floor_name,</if>
  106. <if test="roomName != null and roomName != ''">room_name,</if>
  107. <if test="spaceLocation != null and spaceLocation != ''">space_location,</if>
  108. <if test="alarmTime != null">alarm_time,</if>
  109. <if test="isReset != null">is_reset,</if>
  110. <if test="resetTime != null">reset_time,</if>
  111. <if test="resetBy != null and resetBy != ''">reset_by,</if>
  112. <if test="serviceOrderNo != null and serviceOrderNo != ''">service_order_no,</if>
  113. <if test="handleStatus != null">handle_status,</if>
  114. <if test="createTime != null">create_time,</if>
  115. <if test="updateTime != null">update_time,</if>
  116. </trim>
  117. <trim prefix="values (" suffix=")" suffixOverrides=",">
  118. <if test="alarmCode != null and alarmCode != ''">#{alarmCode},</if>
  119. <if test="deviceCode != null and deviceCode != ''">#{deviceCode},</if>
  120. <if test="deviceName != null and deviceName != ''">#{deviceName},</if>
  121. <if test="deviceType != null and deviceType != ''">#{deviceType},</if>
  122. <if test="subsystemType != null and subsystemType != ''">#{subsystemType},</if>
  123. <if test="alarmLevel != null">#{alarmLevel},</if>
  124. <if test="alarmType != null and alarmType != ''">#{alarmType},</if>
  125. <if test="alarmDesc != null and alarmDesc != ''">#{alarmDesc},</if>
  126. <if test="buildingName != null and buildingName != ''">#{buildingName},</if>
  127. <if test="floorName != null and floorName != ''">#{floorName},</if>
  128. <if test="roomName != null and roomName != ''">#{roomName},</if>
  129. <if test="spaceLocation != null and spaceLocation != ''">#{spaceLocation},</if>
  130. <if test="alarmTime != null">#{alarmTime},</if>
  131. <if test="isReset != null">#{isReset},</if>
  132. <if test="resetTime != null">#{resetTime},</if>
  133. <if test="resetBy != null and resetBy != ''">#{resetBy},</if>
  134. <if test="serviceOrderNo != null and serviceOrderNo != ''">#{serviceOrderNo},</if>
  135. <if test="handleStatus != null">#{handleStatus},</if>
  136. <if test="createTime != null">#{createTime},</if>
  137. <if test="updateTime != null">#{updateTime},</if>
  138. </trim>
  139. </insert>
  140. <update id="updateIbmsDeviceAlarm" parameterType="pd">
  141. update ibms_device_alarms
  142. <trim prefix="SET" suffixOverrides=",">
  143. <if test="alarmCode != null and alarmCode != ''">alarm_code = #{alarmCode},</if>
  144. <if test="deviceCode != null and deviceCode != ''">device_code = #{deviceCode},</if>
  145. <if test="deviceName != null and deviceName != ''">device_name = #{deviceName},</if>
  146. <if test="deviceType != null and deviceType != ''">device_type = #{deviceType},</if>
  147. <if test="subsystemType != null and subsystemType != ''">subsystem_type = #{subsystemType},</if>
  148. <if test="alarmLevel != null">alarm_level = #{alarmLevel},</if>
  149. <if test="alarmType != null and alarmType != ''">alarm_type = #{alarmType},</if>
  150. <if test="alarmDesc != null and alarmDesc != ''">alarm_desc = #{alarmDesc},</if>
  151. <if test="buildingName != null and buildingName != ''">building_name = #{buildingName},</if>
  152. <if test="floorName != null and floorName != ''">floor_name = #{floorName},</if>
  153. <if test="roomName != null and roomName != ''">room_name = #{roomName},</if>
  154. <if test="spaceLocation != null and spaceLocation != ''">space_location = #{spaceLocation},</if>
  155. <if test="alarmTime != null">alarm_time = #{alarmTime},</if>
  156. <if test="isReset != null">is_reset = #{isReset},</if>
  157. <if test="resetTime != null">reset_time = #{resetTime},</if>
  158. <if test="resetBy != null and resetBy != ''">reset_by = #{resetBy},</if>
  159. <if test="serviceOrderNo != null and serviceOrderNo != ''">service_order_no = #{serviceOrderNo},</if>
  160. <if test="handleStatus != null">handle_status = #{handleStatus},</if>
  161. <if test="createTime != null">create_time = #{createTime},</if>
  162. <if test="updateTime != null">update_time = #{updateTime},</if>
  163. </trim>
  164. where id = #{id}
  165. </update>
  166. <!-- 复位告警 -->
  167. <update id="resetAlarm" parameterType="pd">
  168. update ibms_device_alarms
  169. set is_reset = 1,
  170. reset_time = #{resetTime},
  171. reset_by = #{resetBy},
  172. update_time = #{updateTime}
  173. where id = #{id}
  174. </update>
  175. <!-- 更新服务单号 -->
  176. <update id="updateServiceOrderNo" parameterType="pd">
  177. update ibms_device_alarms
  178. set service_order_no = #{serviceOrderNo},
  179. handle_status = 1,
  180. update_time = #{updateTime}
  181. where id = #{id}
  182. </update>
  183. <delete id="deleteIbmsDeviceAlarmById" parameterType="Long">
  184. delete from ibms_device_alarms where id = #{id}
  185. </delete>
  186. <delete id="deleteIbmsDeviceAlarmByIds" parameterType="String">
  187. delete from ibms_device_alarms where id in
  188. <foreach item="id" collection="array" open="(" separator="," close=")">
  189. #{id}
  190. </foreach>
  191. </delete>
  192. </mapper>