102 lines
4.5 KiB
XML
102 lines
4.5 KiB
XML
<?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.ycwl.basic.mapper.TaskMapper">
|
|
<insert id="add">
|
|
insert into task(id, worker_id, member_id, face_id, template_id, scenic_id, task_params, video_url, `status`, result, automatic)
|
|
values (#{id}, #{workerId}, #{memberId}, #{faceId}, #{templateId}, #{scenicId}, #{taskParams}, #{videoUrl}, #{status}, #{result}, #{automatic})
|
|
</insert>
|
|
<update id="update">
|
|
update task
|
|
<set>
|
|
<if test="workerId!= null">worker_id = #{workerId}, </if>
|
|
<if test="memberId!= null">member_id = #{memberId}, </if>
|
|
<if test="faceId!= null">face_id = #{faceId}, </if>
|
|
<if test="templateId!= null">template_id = #{templateId}, </if>
|
|
<if test="scenicId!= null">scenic_id = #{scenicId}, </if>
|
|
<if test="taskParams!= null">task_params = #{taskParams}, </if>
|
|
<if test="videoUrl!= null">video_url = #{videoUrl}, </if>
|
|
<if test="status!= null">status = #{status}, </if>
|
|
<if test="result!= null">result = #{result}, </if>
|
|
</set>
|
|
where id = #{id}
|
|
</update>
|
|
<update id="updateStatus">
|
|
update task
|
|
set status = #{status}
|
|
where id = #{id}
|
|
</update>
|
|
<update id="assignToWorker">
|
|
update task
|
|
set worker_id = #{workerId}, status = 2
|
|
where id = #{taskId}
|
|
</update>
|
|
<update id="deassign">
|
|
update task
|
|
set worker_id = null
|
|
where id = #{taskId}
|
|
</update>
|
|
<update id="setStart">
|
|
update task
|
|
set start_time = now(), worker_id = #{workerId}
|
|
where id = #{id}
|
|
</update>
|
|
<update id="setSuccess">
|
|
update task
|
|
set end_time = now(), status = 1, result = #{result}
|
|
where id = #{id}
|
|
</update>
|
|
<update id="setFail">
|
|
update task
|
|
set end_time = now(), status = 3, result = #{result}
|
|
where id = #{id}
|
|
</update>
|
|
<delete id="deleteById">
|
|
delete from task where id = #{id}
|
|
</delete>
|
|
<select id="list" resultType="com.ycwl.basic.model.pc.task.resp.TaskRespVO">
|
|
select id, worker_id, member_id, template_id, scenic_id, task_params, video_url, `status`, result, create_time, update_time, start_time, end_time
|
|
from task
|
|
<where>
|
|
<if test="workerId!= null">and worker_id = #{workerId} </if>
|
|
<if test="memberId!= null">and member_id = #{memberId} </if>
|
|
<if test="templateId!= null">and template_id = #{templateId} </if>
|
|
<if test="scenicId!= null">and scenic_id = #{scenicId} </if>
|
|
<if test="status!= null">and `status` = #{status} </if>
|
|
<if test="startTime!= null">and create_time >= #{startTime} </if>
|
|
<if test="endTime!= null">and create_time <= #{endTime} </if>
|
|
</where>
|
|
</select>
|
|
<select id="getById" resultType="com.ycwl.basic.model.pc.task.resp.TaskRespVO">
|
|
select id, worker_id, member_id, template_id, scenic_id, task_params, video_url, `status`, result, create_time, update_time
|
|
from task
|
|
where id = #{id}
|
|
</select>
|
|
<select id="countByMemberIdStau" resultType="java.lang.Integer">
|
|
select count(1) from task
|
|
where member_id = #{userId} and status IN (0,2)
|
|
</select>
|
|
<select id="countByMemberIdStauFinish" resultType="java.lang.Integer">
|
|
select count(1)
|
|
from task
|
|
where member_id = #{userId}
|
|
and status = 1
|
|
</select>
|
|
<select id="selectNotRunning" resultType="com.ycwl.basic.model.pc.task.resp.TaskRespVO">
|
|
select id, worker_id, member_id, template_id, scenic_id, task_params, video_url, `status`, result, create_time, update_time
|
|
from task
|
|
where status = 0 and worker_id is null
|
|
</select>
|
|
<select id="countTask" resultType="java.lang.Integer">
|
|
select count(1) from task
|
|
<where>
|
|
<if test="workerId!= null">and worker_id = #{workerId} </if>
|
|
<if test="memberId!= null">and member_id = #{memberId} </if>
|
|
<if test="templateId!= null">and template_id = #{templateId} </if>
|
|
<if test="scenicId!= null">and scenic_id = #{scenicId} </if>
|
|
<if test="status!= null">and `status` = #{status} </if>
|
|
<if test="startTime!= null">and create_time >= #{startTime} </if>
|
|
<if test="endTime!= null">and create_time <= #{endTime} </if>
|
|
</where>
|
|
</select>
|
|
</mapper>
|