You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
223 lines
11 KiB
223 lines
11 KiB
<?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="com.fastbee.iot.mapper.SceneScriptMapper">
|
|
|
|
<resultMap type="SceneScript" id="SceneScriptResult">
|
|
<result property="scriptId" column="script_id"/>
|
|
<result property="sceneId" column="scene_id"/>
|
|
<result property="productId" column="product_id"/>
|
|
<result property="productName" column="product_name"/>
|
|
<result property="source" column="source"/>
|
|
<result property="scriptPurpose" column="script_purpose"/>
|
|
<result property="id" column="id"/>
|
|
<result property="name" column="name"/>
|
|
<result property="value" column="value"/>
|
|
<result property="operator" column="operator"/>
|
|
<result property="type" column="type"/>
|
|
<result property="deviceCount" column="device_count"/>
|
|
<result property="jobId" column="job_id"/>
|
|
<result property="cronExpression" column="cron_expression"/>
|
|
<result property="isAdvance" column="is_advance"/>
|
|
<result property="parentId" column="parent_id"/>
|
|
<result property="parentName" column="parent_name"/>
|
|
<result property="arrayIndex" column="array_index"/>
|
|
<result property="arrayIndexName" column="array_index_name"/>
|
|
<result property="createBy" column="create_by"/>
|
|
<result property="createTime" column="create_time"/>
|
|
</resultMap>
|
|
|
|
<sql id="selectSceneScriptVo">
|
|
select script_id,
|
|
scene_id,
|
|
product_id,
|
|
product_name,
|
|
source,
|
|
script_purpose,
|
|
id,
|
|
name,
|
|
value,
|
|
operator,
|
|
type,
|
|
device_count,
|
|
job_id,
|
|
cron_expression,
|
|
is_advance,
|
|
parent_id,
|
|
parent_name,
|
|
array_index,
|
|
array_index_name,
|
|
create_by,
|
|
create_time
|
|
from iot_scene_script
|
|
</sql>
|
|
|
|
<select id="selectSceneScriptList" parameterType="SceneScript" resultMap="SceneScriptResult">
|
|
<include refid="selectSceneScriptVo"/>
|
|
<where>
|
|
<if test="scriptId != null ">and script_id = #{scriptId}</if>
|
|
<if test="sceneId != null ">and scene_id = #{sceneId}</if>
|
|
<if test="productId != null ">and product_id = #{productId}</if>
|
|
<if test="productName != null ">and product_name = #{productName}</if>
|
|
<if test="source != null ">and source = #{source}</if>
|
|
<if test="scriptPurpose != null ">and script_purpose = #{scriptPurpose}</if>
|
|
<if test="id != null ">and id = #{id}</if>
|
|
<if test="name != null and name != ''">and name like concat('%', #{name}, '%')</if>
|
|
<if test="value != null and value != ''">and value = #{value}</if>
|
|
<if test="operator != null and operator != ''">and operator = #{operator}</if>
|
|
<if test="type != null ">and type = #{type}</if>
|
|
<if test="jobId != null ">and job_id = #{jobId}</if>
|
|
<if test="cronExpression != null and cronExpression != ''">and cron_expression = #{cronExpression}</if>
|
|
<if test="isAdvance != null ">and is_advance = #{isAdvance}</if>
|
|
<if test="parentId != null and parentId != ''">and parent_id = #{parentId}</if>
|
|
<if test="parentName != null and parentName != ''">and parent_name like concat('%', #{parentName}, '%')
|
|
</if>
|
|
<if test="arrayIndex != null and arrayIndex != ''">and array_index = #{arrayIndex}</if>
|
|
<if test="arrayIndexName != null and arrayIndexName != ''">and array_index_name like concat('%',
|
|
#{arrayIndexName}, '%')
|
|
</if>
|
|
</where>
|
|
</select>
|
|
|
|
<select id="selectSceneScriptBySceneScriptId" parameterType="String" resultMap="SceneScriptResult">
|
|
<include refid="selectSceneScriptVo"/>
|
|
where script_id = #{scriptId}
|
|
</select>
|
|
|
|
<select id="listSceneScriptByPurpose" resultMap="SceneScriptResult">
|
|
<include refid="selectSceneScriptVo"/>
|
|
where scene_id in
|
|
<foreach collection="sceneIdList" item="sceneId" open="(" separator="," close=")">
|
|
#{sceneId}
|
|
</foreach>
|
|
and script_purpose = #{scriptPurpose}
|
|
</select>
|
|
|
|
<insert id="insertSceneScript" parameterType="SceneScript" useGeneratedKeys="false">
|
|
insert into iot_scene_script
|
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
|
<if test="scriptId != null">script_id,</if>
|
|
<if test="sceneId != null">scene_id,</if>
|
|
<if test="productId != null">product_id,</if>
|
|
<if test="productName != null">product_name,</if>
|
|
<if test="source != null">source,</if>
|
|
<if test="scriptPurpose != null">script_purpose,</if>
|
|
<if test="id != null">id,</if>
|
|
<if test="name != null">name,</if>
|
|
<if test="value != null">value,</if>
|
|
<if test="operator != null">operator,</if>
|
|
<if test="type != null">type,</if>
|
|
<if test="deviceCount != null">device_count,</if>
|
|
<if test="jobId != null">job_id,</if>
|
|
<if test="cronExpression != null">cron_expression,</if>
|
|
<if test="isAdvance != null">is_advance,</if>
|
|
<if test="parentId != null">parent_id,</if>
|
|
<if test="parentName != null">parent_name,</if>
|
|
<if test="arrayIndex != null">array_index,</if>
|
|
<if test="arrayIndexName != null">array_index_name,</if>
|
|
<if test="createBy != null">create_by,</if>
|
|
<if test="createTime != null">create_time,</if>
|
|
</trim>
|
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
|
<if test="scriptId != null">#{scriptId},</if>
|
|
<if test="sceneId != null">#{sceneId},</if>
|
|
<if test="productId != null">#{productId},</if>
|
|
<if test="productName != null">#{productName},</if>
|
|
<if test="source != null">#{source},</if>
|
|
<if test="scriptPurpose != null">#{scriptPurpose},</if>
|
|
<if test="id != null">#{id},</if>
|
|
<if test="name != null">#{name},</if>
|
|
<if test="value != null">#{value},</if>
|
|
<if test="operator != null">#{operator},</if>
|
|
<if test="type != null">#{type},</if>
|
|
<if test="deviceCount != null">#{deviceCount},</if>
|
|
<if test="jobId != null">#{jobId},</if>
|
|
<if test="cronExpression != null">#{cronExpression},</if>
|
|
<if test="isAdvance != null">#{isAdvance},</if>
|
|
<if test="parentId != null">#{parentId},</if>
|
|
<if test="parentName != null">#{parentName},</if>
|
|
<if test="arrayIndex != null">#{arrayIndex},</if>
|
|
<if test="arrayIndexName != null">#{arrayIndexName},</if>
|
|
<if test="createBy != null">#{createBy},</if>
|
|
<if test="createTime != null">#{createTime},</if>
|
|
</trim>
|
|
</insert>
|
|
|
|
<update id="updateSceneScript" parameterType="SceneScript">
|
|
update iot_scene_script
|
|
<trim prefix="SET" suffixOverrides=",">
|
|
<if test="scriptId != null">script_id = #{scriptId},</if>
|
|
<if test="sceneId != null">scene_id = #{sceneId},</if>
|
|
<if test="productId != null">product_id = #{productId},</if>
|
|
<if test="productName != null">product_name = #{productName},</if>
|
|
<if test="source != null">source = #{source},</if>
|
|
<if test="scriptPurpose != null">script_purpose = #{scriptPurpose},</if>
|
|
<if test="id != null">id = #{id},</if>
|
|
<if test="name != null">name = #{name},</if>
|
|
<if test="value != null">value = #{value},</if>
|
|
<if test="operator != null">operator = #{operator},</if>
|
|
<if test="type != null">type = #{type},</if>
|
|
<if test="deviceCount != null">device_count = #{deviceCount},</if>
|
|
<if test="jobId != null">job_id = #{jobId},</if>
|
|
<if test="cronExpression != null">cron_expression = #{cronExpression},</if>
|
|
<if test="isAdvance != null">is_advance = #{isAdvance},</if>
|
|
<if test="parentId != null">parent_id = #{parentId},</if>
|
|
<if test="parentName != null">parent_name = #{parentName},</if>
|
|
<if test="arrayIndex != null">array_index = #{arrayIndex},</if>
|
|
<if test="arrayIndexName != null">array_index_name = #{arrayIndexName},</if>
|
|
<if test="createBy != null">create_by = #{createBy},</if>
|
|
<if test="createTime != null">create_time = #{createTime},</if>
|
|
</trim>
|
|
where script_id = #{scriptId}
|
|
</update>
|
|
|
|
<delete id="deleteSceneScriptBySceneScriptId" parameterType="String">
|
|
delete
|
|
from iot_scene_script
|
|
where script_id = #{scriptId}
|
|
</delete>
|
|
|
|
<delete id="deleteSceneScriptBySceneScriptIds" parameterType="String">
|
|
delete from iot_scene_script where script_id in
|
|
<foreach item="sceneScriptId" collection="array" open="(" separator="," close=")">
|
|
#{scriptId}
|
|
</foreach>
|
|
</delete>
|
|
|
|
<insert id="insertSceneScriptList" parameterType="java.util.List">
|
|
insert into iot_scene_script (script_id,scene_id,product_id,product_name,source,script_purpose,id, name,value,operator,type,device_count,job_id,
|
|
cron_expression,is_advance,parent_id,parent_name,array_index,array_index_name,create_by,create_time)
|
|
VALUES
|
|
<foreach collection="list" item="sceneScript" separator=",">
|
|
(#{sceneScript.scriptId},
|
|
#{sceneScript.sceneId},
|
|
#{sceneScript.productId},
|
|
#{sceneScript.productName},
|
|
#{sceneScript.source},
|
|
#{sceneScript.scriptPurpose},
|
|
#{sceneScript.id},
|
|
#{sceneScript.name},
|
|
#{sceneScript.value},
|
|
#{sceneScript.operator},
|
|
#{sceneScript.type},
|
|
#{sceneScript.deviceCount},
|
|
#{sceneScript.jobId},
|
|
#{sceneScript.cronExpression},
|
|
#{sceneScript.isAdvance},
|
|
#{sceneScript.parentId},
|
|
#{sceneScript.parentName},
|
|
#{sceneScript.arrayIndex},
|
|
#{sceneScript.arrayIndexName},
|
|
#{sceneScript.createBy},
|
|
#{sceneScript.createTime})
|
|
</foreach>
|
|
</insert>
|
|
|
|
<delete id="deleteSceneScriptBySceneIds" parameterType="String">
|
|
delete from iot_scene_script where scene_id in
|
|
<foreach item="sceneId" collection="array" open="(" separator="," close=")">
|
|
#{sceneId}
|
|
</foreach>
|
|
</delete>
|
|
</mapper>
|