TkPreserveDetailStatusMapper.xml 3.44 KB
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.thingsboard.server.dao.yunteng.mapper.TkPreserveDetailStatusMapper">
    <resultMap type="org.thingsboard.server.common.data.yunteng.dto.TkPreserveDetailStatusDTO"
               id="preserveDetailStatusMap">
        <result property="id" column="id"/>
        <result property="preserveRecordId" column="preserve_record_id"/>
        <result property="preserveDetailId" column="preserve_detail_id"/>
        <result property="status" column="status" typeHandler="org.apache.ibatis.type.EnumTypeHandler"/>
        <result property="preserveDetail" column="preserve_detail"/>
        <result property="detailCode" column="detail_code"/>
        <association property="deviceInfo" javaType="org.thingsboard.server.common.data.yunteng.dto.TkDeviceAccountDTO">
            <id property="id" column="device_id"/>
            <result property="name" column="daName"/>
            <result property="code" column="daCode"/>
            <result property="categoryId" column="category_id"/>
            <result property="status" column="daStatus" typeHandler="org.apache.ibatis.type.EnumTypeHandler"/>
            <result property="directorId" column="director_id"/>
            <result property="isOnline" column="is_online"/>
            <result property="deviceImg" column="device_img"/>
            <result property="brand" column="brand"/>
            <result property="modelNum" column="model_num"/>
            <result property="specifications" column="specifications"/>
            <result property="manufacturer" column="manufacturer"/>
            <result property="buyDate" column="buy_date"/>
            <result property="price" column="price"/>
            <result property="productDate" column="product_date"/>
            <result property="receiveDate" column="receive_date"/>
            <result property="registeDate" column="registe_date"/>
            <result property="supplierId" column="supplier_id"/>
            <result property="description" column="daDescription"/>
        </association>
    </resultMap>
    <select id="listByPreserveRecordId" resultMap="preserveDetailStatusMap">
        SELECT pds.id
        , pds.preserve_record_id
        , pds.preserve_detail_id
        , pds.status
        , pd.preserve_detail,pd.detail_code,
        da.name as daName,da.code as daCode,da.category_id,da.status as daStatus,da.director_id,da.is_online,
        da.brand,da.model_num,da.specifications,da.manufacturer,da.buy_date,da.price,da.product_date,
        da.receive_date,da.registe_date,da.supplier_id,da.device_img,da.description as daDescription
        , pds.tenant_id
        , pds.create_time
        , pds.updater
        , pds.update_time
        , pds.creator
        from qg_preserve_detail_status pds
        inner join qg_preserve_detail pd on pd.id = pds.preserve_detail_id
        inner join qg_device_account da on da.id=pd.device_id
        <where>
            <if test="tenantId !=null and tenantId !=''">
                AND pds.tenant_id = #{tenantId}
            </if>
            <if test="preserveRecordId !=null">
                AND pds.preserve_record_id in
                <foreach collection="preserveRecordId" item="item" index="index"
                         separator="," open="(" close=")">
                    #{item}
                </foreach>
            </if>
        </where>

    </select>
</mapper>