TkDataViewInterfaceMapper.xml 3.99 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.TkDataViewInterfaceMapper">

    <resultMap id="dataViewInterfaceMap" type="org.thingsboard.server.common.data.yunteng.dto.TkDataViewInterfaceDTO">
        <result property="id" column="id"/>
        <result property="interfaceName" column="interface_name"/>
        <result property="requestContentType" column="request_content_type"/>
        <result property="requestOriginUrl" column="request_origin_url"/>
        <result property="filter" column="filter"/>
        <result property="requestHttpType" column="request_http_type"/>
        <result property="requestUrl" column="request_url"/>
        <result property="requestParams" column="request_params"/>
        <result property="state" column="state"/>
        <result property="interfaceType" column="interface_type" typeHandler="org.apache.ibatis.type.EnumTypeHandler"/>
        <result property="remark" column="remark"/>
        <result property="updateTime" column="update_time"/>
        <result property="createTime" column="create_time"/>
        <result property="creator" column="creator"/>
        <result property="tenantId" column="tenant_id"/>
        <result property="updater" column="updater"/>
    </resultMap>

    <sql id="columns">
        id,interface_name,interface_type, request_content_type, request_origin_url, request_http_type, request_url, request_params, state,
        filter,creator, create_time, updater, update_time, tenant_id, remark
    </sql>

    <select id="getInterfaceDetails" resultMap="dataViewInterfaceMap">
        SELECT
        <include refid="columns"/>
        FROM tk_data_view_interface
        <where>
            <if test="ids !=null">
                id IN
                <foreach collection="ids" item="id" open="(" separator="," close=")">
                    #{id}
                </foreach>
            </if>
        </where>
    </select>


    <select id="filterByInterfaceType" resultMap="dataViewInterfaceMap">
        SELECT
        <include refid="columns"/>
        FROM tk_data_view_interface
        <where>
            <if test="type !=null and type !=''">
                AND request_http_type = #{type}
            </if>

            <if test="tenantIds !=null">
                AND tenant_id IN
                <foreach collection="tenantIds" item="tenantId" open="(" separator="," close=")">
                    #{tenantId}
                </foreach>
            </if>
        </where>
    </select>


    <select id="findAll" resultMap="dataViewInterfaceMap">
        SELECT
        <include refid="columns"/>
        FROM tk_data_view_interface
        <where>

            <if test="state !=null and state !=''">
                state = #{state}
            </if>

            <if test="tenantIds !=null">
                AND tenant_id IN
                <foreach collection="tenantIds" item="tenantId" open="(" separator="," close=")">
                    #{tenantId}
                </foreach>
            </if>
        </where>
    </select>


    <select id="executeSql"  parameterType="java.lang.String"  resultType="java.util.LinkedHashMap">
        #{sqlStr}
    </select>

    <select id="selectPage" resultMap="dataViewInterfaceMap">
        SELECT
        <include refid="columns"/>
        FROM tk_data_view_interface
        <where>
            <if test="queryMap.tenantId !=null and queryMap.tenantId != ''">
                AND tenant_id = #{queryMap.tenantId}
            </if>
            <if test="queryMap.interfaceType !=null">
                AND interface_type = #{queryMap.interfaceType}
            </if>
            <if test="queryMap.state !=null">
                AND state = #{queryMap.state}
            </if>
            <if test="queryMap.name !=null and queryMap.name !=''">
                AND interface_name LIKE concat('%',#{queryMap.name},'%')
            </if>
        </where>
    </select>
</mapper>