<?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.ruoyi.app.task.mapper.ArdAppTaskMapper">
|
|
<resultMap type="ArdAppTask" id="ArdAppTaskResult">
|
<result property="id" column="id"/>
|
<result property="name" column="name"/>
|
<result property="text" column="text"/>
|
<result property="voice" column="voice"/>
|
<result property="deptId" column="dept_id"/>
|
<result property="userId" column="user_id"/>
|
<result property="createBy" column="create_by"/>
|
<result property="createTime" column="create_time"/>
|
<result property="updateBy" column="update_by"/>
|
<result property="updateTime" column="update_time"/>
|
</resultMap>
|
|
<resultMap id="ArdAppTaskArdAppTaskPicResult" type="ArdAppTask" extends="ArdAppTaskResult">
|
<collection property="ardAppTaskPicList" notNullColumn="sub_id" javaType="java.util.List"
|
resultMap="ArdAppTaskPicResult"/>
|
</resultMap>
|
<resultMap id="ArdAppTaskArdAppTaskDetailResult" type="ArdAppTask" extends="ArdAppTaskResult">
|
<collection property="ardAppTaskDetailList" notNullColumn="sub_id" javaType="java.util.List"
|
resultMap="ArdAppTaskDetailResult"/>
|
</resultMap>
|
|
<resultMap type="ArdAppTaskDetail" id="ArdAppTaskDetailResult">
|
<result property="id" column="sub_id"/>
|
<result property="name" column="sub_name"/>
|
<result property="longitude" column="sub_longitude"/>
|
<result property="latitude" column="sub_latitude"/>
|
<result property="altitude" column="sub_altitude"/>
|
<result property="userId" column="sub_user_id"/>
|
<result property="text" column="sub_text"/>
|
<result property="voice" column="sub_voice"/>
|
<result property="taskId" column="sub_task_id"/>
|
</resultMap>
|
<resultMap type="ArdAppTaskPic" id="ArdAppTaskPicResult">
|
<result property="id" column="sub_id"/>
|
<result property="taskId" column="sub_task_id"/>
|
<result property="picUrl" column="sub_pic_url"/>
|
</resultMap>
|
|
<sql id="selectArdAppTaskVo">
|
select c.id,
|
c.name,
|
c.text,
|
c.voice,
|
c.dept_id,
|
c.user_id,
|
c.create_by,
|
c.create_time,
|
c.update_by,
|
c.update_time
|
from ard_app_task c
|
left join sys_dept d on d.dept_id = c.dept_id
|
left join sys_user u on u.user_id = c.user_id
|
</sql>
|
|
<select id="selectArdAppTaskList" parameterType="ArdAppTask" resultMap="ArdAppTaskResult">
|
<include refid="selectArdAppTaskVo"/>
|
<where>
|
<if test="name != null and name != ''">and name like '%'||#{name}||'%'</if>
|
<if test="text != null and text != ''">and text = #{text}</if>
|
<if test="voice != null and voice != ''">and voice = #{voice}</if>
|
<if test="deptId != null ">and (c.dept_id = #{deptId} OR c.dept_id IN ( SELECT t.dept_id FROM sys_dept t
|
WHERE cast(#{deptId} as varchar) = any(string_to_array(ancestors,',')) ))
|
</if>
|
<if test="userId != null and userId != ''">and user_id = #{userId}</if>
|
<!-- 数据范围过滤 -->
|
${params.dataScope}
|
</where>
|
</select>
|
|
<select id="selectArdAppTaskById" parameterType="String" resultMap="ArdAppTaskArdAppTaskPicResult">
|
select a.id,
|
a.name,
|
a.text,
|
a.voice,
|
a.dept_id,
|
a.user_id,
|
a.create_by,
|
a.create_time,
|
a.update_by,
|
a.update_time,
|
b.id as sub_id,
|
b.task_id as sub_task_id,
|
b.pic_url as sub_pic_url
|
from ard_app_task a
|
left join ard_app_task_pic b on b.task_id = a.id
|
left join ard_app_task_detail c on c.task_id = a.id
|
where a.id = #{id}
|
</select>
|
|
<insert id="insertArdAppTask" parameterType="ArdAppTask">
|
insert into ard_app_task
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="id != null">id,</if>
|
<if test="name != null">name,</if>
|
<if test="text != null">text,</if>
|
<if test="voice != null">voice,</if>
|
<if test="deptId != null">dept_id,</if>
|
<if test="userId != null">user_id,</if>
|
<if test="createBy != null">create_by,</if>
|
<if test="createTime != null">create_time,</if>
|
<if test="updateBy != null">update_by,</if>
|
<if test="updateTime != null">update_time,</if>
|
</trim>
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<if test="id != null">#{id},</if>
|
<if test="name != null">#{name},</if>
|
<if test="text != null">#{text},</if>
|
<if test="voice != null">#{voice},</if>
|
<if test="deptId != null">#{deptId},</if>
|
<if test="userId != null">#{userId},</if>
|
<if test="createBy != null">#{createBy},</if>
|
<if test="createTime != null">#{createTime},</if>
|
<if test="updateBy != null">#{updateBy},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
</trim>
|
</insert>
|
|
<update id="updateArdAppTask" parameterType="ArdAppTask">
|
update ard_app_task
|
<trim prefix="SET" suffixOverrides=",">
|
<if test="name != null">name = #{name},</if>
|
<if test="text != null">text = #{text},</if>
|
<if test="voice != null">voice = #{voice},</if>
|
<if test="deptId != null">dept_id = #{deptId},</if>
|
<if test="userId != null">user_id = #{userId},</if>
|
<if test="createBy != null">create_by = #{createBy},</if>
|
<if test="createTime != null">create_time = #{createTime},</if>
|
<if test="updateBy != null">update_by = #{updateBy},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
</trim>
|
where id = #{id}
|
</update>
|
|
<delete id="deleteArdAppTaskById" parameterType="String">
|
delete
|
from ard_app_task
|
where id = #{id}
|
</delete>
|
|
<delete id="deleteArdAppTaskByIds" parameterType="String">
|
delete from ard_app_task where id in
|
<foreach item="id" collection="array" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
</delete>
|
|
<delete id="deleteArdAppTaskPicByTaskIds" parameterType="String">
|
delete from ard_app_task_pic where task_id in
|
<foreach item="taskId" collection="array" open="(" separator="," close=")">
|
#{taskId}
|
</foreach>
|
</delete>
|
|
<delete id="deleteArdAppTaskPicByTaskId" parameterType="String">
|
delete
|
from ard_app_task_pic
|
where task_id = #{taskId}
|
</delete>
|
|
<insert id="batchArdAppTaskPic">
|
insert into ard_app_task_pic( id, task_id, pic_url) values
|
<foreach item="item" index="index" collection="list" separator=",">
|
( #{item.id}, #{item.taskId}, #{item.picUrl})
|
</foreach>
|
</insert>
|
<delete id="deleteArdAppTaskDetailByTaskIds" parameterType="String">
|
delete from ard_app_task_detail where task_id in
|
<foreach item="taskId" collection="array" open="(" separator="," close=")">
|
#{taskId}
|
</foreach>
|
</delete>
|
|
<delete id="deleteArdAppTaskDetailByTaskId" parameterType="String">
|
delete from ard_app_task_detail where task_id = #{taskId}
|
</delete>
|
|
<insert id="batchArdAppTaskDetail">
|
insert into ard_app_task_detail( id, name, longitude, latitude, altitude, user_id, text, voice, task_id) values
|
<foreach item="item" index="index" collection="list" separator=",">
|
( #{item.id}, #{item.name}, #{item.longitude}, #{item.latitude}, #{item.altitude}, #{item.userId}, #{item.text}, #{item.voice}, #{item.taskId})
|
</foreach>
|
</insert>
|
</mapper>
|