2021与蓝度共同重构项目,服务端
liuhaonan
2022-05-11 7b43c04dd530bdd193e0cf02c4e19ba7c2ee2c11
dao/src/main/resources/mapper/WaterQualityDataMapper.xml
@@ -7,7 +7,6 @@
    <resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.WaterQualityData">
        <id property="id" column="id" jdbcType="BIGINT"/>
        <result property="waterQualityEquipmentCode" column="water_quality_equipment_code" jdbcType="VARCHAR"/>
        <result property="belongTo" column="belong_to" jdbcType="VARCHAR"/>
        <result property="waterQualityPh" column="water_quality_ph" jdbcType="VARCHAR"/>
        <result property="waterQualityDo" column="water_quality_do" jdbcType="VARCHAR"/>
        <result property="waterQualityEc" column="water_quality_ec" jdbcType="VARCHAR"/>
@@ -16,4 +15,43 @@
        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
    </resultMap>
    <select id="listWaterQualityDataByIds" resultType="com.sandu.ximon.dao.bo.WaterQualityDataBo">
        SELECT
        t1.*, t2.pole_id,
        t3.pole_name
        FROM
        water_quality_data t1
        LEFT JOIN pole_binding t2 ON t1.water_quality_equipment_code = t2.device_code
        AND t2.device_type = 4
        LEFT JOIN pole t3 ON t3.id = t2.pole_id
        <where>
            t1.id IN
            <foreach collection="WaterQualityDataIdList" open="(" close=")" item="airId" separator=",">
                #{airId}
            </foreach>
        </where>
    </select>
    <select id="listWaterQualityDataId" resultType="java.lang.Long">
        SELECT
        MAX(t1.id) AS water_quality_data_id
        FROM
        water_quality_data t1
        <if test="keyword != null and keyword != ''">
            LEFT JOIN pole_binding t2 ON t1.water_quality_equipment_code = t2.device_code
            AND t2.device_type = 4
            LEFT JOIN pole t3 ON t3.id = t2.pole_id
        </if>
        <where>
            <if test="keyword != null and keyword != ''">
                AND t3.pole_name LIKE CONCAT(CONCAT('%', #{keyword}), '%')
            </if>
            <if test="userid != null">
                AND (t3.user_id = #{userid} OR t3.client_id = #{userid})
            </if>
        </where>
        GROUP BY
        t1.water_quality_equipment_code
    </select>
</mapper>