up
lyfO_o
2022-04-26 24aeee2fe7b76c7e9a8731f7bef93b48a47da17f
src/main/java/com/nanometer/smartlab/dao/SysContainerSensorsDao.xml
@@ -21,7 +21,7 @@
    id, container_id, temp, humidity, voc1, flag, type, update_time
  </sql>
  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
    select
    select
    <include refid="Base_Column_List" />
    from sys_container_sensors
    where id = #{id,jdbcType=VARCHAR}
@@ -156,6 +156,9 @@
      <if test="beginUpdateTime != null ">
        and s.update_time >= #{beginUpdateTime}
      </if>
      <if test="endUpdateTime != null ">
        and s.update_time &lt;= #{endUpdateTime}
      </if>
    </where>
  </sql>
  <sql id="sql_limit">
@@ -243,4 +246,52 @@
    ORDER BY
    slc.update_time DESC
  </select>
</mapper>
    <select id="getRowData" resultType="com.nanometer.smartlab.entity.dto.ContainerStatusMngDto">
        SELECT slc.id,slc.temp, slc.humidity,slc.voc1 ,sl.name as laboratoryName,slc.name laboratoryContainerName,slc.flag,
    CASE
    WHEN substring(flag, 1,1) = '1' THEN TRUE ELSE FALSE END AS lowTempAlert,
    CASE
    WHEN substring(flag, 2,1) = '1' THEN TRUE ELSE FALSE END AS highTempAlert,
    CASE
    WHEN substring(flag, 3,1) = '1' THEN TRUE ELSE FALSE END AS lowHumidityAlert,
    CASE
    WHEN substring(flag, 4,1) = '1' THEN TRUE ELSE FALSE END AS highHumidityAlert,
    CASE
    WHEN substring(flag, 5,1) = '1' THEN TRUE ELSE FALSE END AS voc1Alert
    from sys_laboratory_container  slc
    LEFT JOIN sys_laboratory sl ON sl.id = slc.laboratory_id
    where slc.id = #{id}
    </select>
  <select id="selectMaxTemperature" resultType="java.util.Map">
    select max(s.temp) maxTemperature,min(s.temp) minTemperature
    from sys_container_sensors as s
    where
    s.container_id = #{id}
    and s.update_time &gt;= #{beginDate}
      <if test="endDate != null">
        and s.update_time &lt; #{endDate}
      </if>
  </select>
  <select id="selectMaxHumidity" resultType="java.util.Map">
    select max(s.humidity) maxHumidity, min(s.humidity) minHumidity
    from sys_container_sensors as s
    where
    s.container_id = #{id}
    and s.update_time &gt;= #{beginDate}
    <if test="endDate != null">
      and s.update_time &lt; #{endDate}
    </if>
  </select>
  <select id="selectMaxVoc" resultType="java.util.Map">
    select max(s.voc1) maxVoc, min(s.voc1) minVoc
    from sys_container_sensors as s
    where
    s.container_id = #{id}
    and s.update_time &gt;= #{beginDate}
    <if test="endDate != null">
      and s.update_time &lt; #{endDate}
    </if>
  </select>
</mapper>