TkTaskCenterMapper.xml 2.95 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.TkTaskCenterMapper">
    <resultMap type="org.thingsboard.server.common.data.yunteng.dto.task.TkTaskCenterDTO" id="dataMap">
        <result property="id" column="id"/>
        <result property="name" column="name"/>
        <result property="targetType" column="target_type" typeHandler="org.apache.ibatis.type.EnumTypeHandler" />
        <result property="executeTarget" column="execute_target"
                typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
        <result property="executeContent" column="execute_content"
                typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
        <result property="executeTime" column="execute_time"
                typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
        <result property="createTime" column="create_time"/>
        <result property="state" column="state"/>
        <result property="creator" column="creator"/>
        <result property="updater" column="updater"/>
        <result property="updateTime" column="update_time"/>
        <result property="tenantId" column="tenant_id" />
        <association property="tkDeviceTaskCenter" javaType="org.thingsboard.server.common.data.yunteng.dto.task.TkDeviceTaskCenterDTO">
            <result property="allowState" column="allow_state"/>
            <result property="taskCenterId" column="task_center_id"/>
            <result property="tbDeviceId" column="tb_device_id"/>
        </association>
    </resultMap>



    <sql id="basicColumns">
        tc.id,tc.name,tc.target_type,tc.execute_target,tc.execute_content,tc.execute_time,tc.create_time,tc.creator,
        tc.updater,tc.update_time,tc.tenant_id,tc.state
    </sql>
    <select id="getPageData" resultMap="dataMap">
        SELECT
        <include refid="basicColumns"/>
        <if test="queryMap.tbDeviceId !=null and queryMap.tbDeviceId !=''">
            ,tdc.allow_state,tdc.task_center_id,tdc.tb_device_id
        </if>
        FROM tk_task_center tc
        <if test="queryMap.tbDeviceId !=null and queryMap.tbDeviceId !=''">
            LEFT JOIN tk_device_task_center tdc ON tc.id = tdc.task_center_id
        </if>
        <where>
            <if test="queryMap.tenantId !=null and queryMap.tenantId !=''">
                AND tc.tenant_id = #{queryMap.tenantId}
            </if>
            <if test="queryMap.state !=null">
                AND tc.state = #{queryMap.state}
            </if>
            <if test="queryMap.targetType !=null">
                AND tc.target_type = #{queryMap.targetType}
            </if>
            <if test="queryMap.tbDeviceId !=null and queryMap.tbDeviceId !=''">
                AND tdc.tb_device_id = #{queryMap.tbDeviceId}
            </if>
        </where>
    </select>
</mapper>