<?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.springblade.modules.taskqd.mapper.TaskqdMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="taskResultMap" type="org.springblade.modules.taskqd.vo.TaskqdVO">
|
<id column="id" property="id"/>
|
<result column="rname" property="rname"/>
|
<result column="content" property="content"/>
|
<result column="time" property="time"/>
|
<result column="province" property="province"/>
|
<result column="city" property="city"/>
|
<result column="jnum" property="jnum"/>
|
<result column="line" property="line"/>
|
<result column="rtype" property="rtype"/>
|
<result column="serid" property="serid"/>
|
<result column="integral" property="integral"/>
|
<result column="url" property="url"/>
|
<result column="captain" property="captain"/>
|
<result column="team" property="team"/>
|
<result column="iscation" property="iscation"/>
|
<result column="publisher" property="publisher"/>
|
<result column="fid" property="fid"/>
|
<result column="fname" property="fname"/>
|
<result column="gather" property="gather"/>
|
<result column="gathername" property="gathername"/>
|
<result column="tasktype" property="tasktype"/>
|
<result column="phone" property="phone"/>
|
<result column="train" property="train"/>
|
</resultMap>
|
|
|
<update id="updatet">
|
update sys_taskqd
|
SET serid=#{serid},
|
num=#{num}
|
<if test="param4!='' and param4!=null">
|
,captain =#{param4}
|
</if>
|
<if test="param5!='' and param5!=null">
|
,team =#{param5}
|
</if>
|
where id = #{id}
|
</update>
|
<update id="updateRtype">
|
UPDATE sys_taskqd
|
<set>
|
<if test='type == "0" '>rtype=#{type},stime = now(),</if>
|
<if test='type == "1" '>rtype=#{type},sendtime = now(),</if>
|
</set>
|
WHERE id = #{rid}
|
</update>
|
|
<update id="updateSerid">
|
update sys_taskqd
|
SET serid=#{serid},team=#{newteam},num=#{newnum}
|
where id = #{rid}
|
</update>
|
|
<!--日常任务列表-->
|
<select id="getlist" resultMap="taskResultMap">
|
SELECT
|
*
|
FROM
|
sys_taskqd
|
WHERE
|
serid LIKE concat("%",#{id},"%")
|
<if test="type == 3">
|
and rtype = 1
|
</if>
|
<if test="type == 2">
|
AND ( rtype = "0" OR rtype = "2" )
|
</if>
|
</select>
|
|
<!--任务统计-->
|
<select id="selectList" resultMap="taskResultMap">
|
select jnum, num, serid, team ,time,endtime
|
from sys_taskqd
|
where id = #{id}
|
</select>
|
<select id="taskCount" resultType="java.util.HashMap">
|
SELECT
|
count( * ) AS count
|
FROM
|
sys_taskqd
|
WHERE
|
serid LIKE concat("%",#{id},"%")
|
AND rtype = "1" UNION ALL
|
SELECT
|
count( * ) AS count
|
FROM
|
sys_taskqd
|
WHERE
|
serid LIKE concat("%",#{id},"%")
|
AND ( rtype = "0" OR rtype = "2" )
|
</select>
|
<select id="allTask" resultType="java.util.HashMap">
|
SELECT
|
*
|
FROM
|
sys_taskqd
|
WHERE 1 = 1
|
AND ( rtype = "0" OR rtype = "2" )
|
|
</select>
|
|
<select id="queryReceiver" resultType="java.util.HashMap">
|
SELECT u.*,
|
r.role_name
|
FROM blade_user u
|
LEFT JOIN (SELECT id, role_name FROM blade_role) r on u.role_id = r.id
|
WHERE u.id in (${serid})
|
</select>
|
|
<select id="selectLi" resultMap="taskResultMap">
|
SELECT A.*,IFNULL(B.num,0) as nums FROM (
|
select qd.* from sys_taskqd qd LEFT JOIN sys_jurisdiction j ON j.id = qd.jurisdiction where 1=1
|
<if test="type==0">
|
<if test="serid != '1123598821738675201'">
|
AND find_in_set(#{serid}, serid)
|
</if>
|
AND (qd.rtype = "2" or qd.rtype = "0")
|
AND qd.tasktype=#{tasktype}
|
) A LEFT JOIN (
|
SELECT COUNT(*) as num,hdid,serid
|
FROM
|
sys_taskfk WHERE 1 = 1
|
<if test="serid != '1123598821738675201'">
|
and serid=#{serid}
|
</if>
|
GROUP BY hdid,serid
|
) B ON A.id=B.hdid
|
</if>
|
<if test="type==2">
|
<if test="serid != '1123598821738675201'">
|
AND find_in_set(#{serid}, serid)
|
</if>
|
AND qd.rtype = "1"
|
and qd.tasktype=#{tasktype}
|
) A LEFT JOIN (SELECT COUNT(*) as num,hdid,serid
|
FROM
|
sys_taskfk WHERE 1 = 1
|
<if test="serid != '1123598821738675201'">
|
and serid=#{serid}
|
</if>
|
GROUP BY hdid,serid) B ON A.id=B.hdid
|
</if>
|
<if test="type==1">
|
and qd.tasktype=#{tasktype}
|
<if test="jurisdiction!='1372091709474910209'">
|
AND qd.rtype = "2"
|
<if test="tasktype !=2">
|
AND qd.jnum!=qd.num
|
</if>
|
<if test="serid != '1123598821738675201'">
|
and (!find_in_set(#{serid}, serid) OR serid IS NULL )
|
</if>
|
and
|
((j.id =#{jurisdiction} or
|
j.parent_id = #{jurisdiction}) or (j.id =#{workjurisdiction} or
|
j.parent_id = #{workjurisdiction}))
|
</if>
|
) A LEFT JOIN (
|
SELECT COUNT(*) as num,hdid FROM sys_taskfk GROUP BY hdid
|
) B ON A.id=B.hdid
|
</if>
|
</select>
|
|
<select id="selectNum" resultType="java.util.HashMap">
|
SELECT COUNT(*) as num, tasktype
|
FROM sys_taskqd qd
|
LEFT JOIN sys_jurisdiction j ON j.id = qd.jurisdiction
|
WHERE jnum!=num AND qd.rtype = "2" AND
|
(!find_in_set(#{serid}
|
, serid)
|
OR serid IS NULL )
|
and ((j.id =#{jurisdiction}
|
or j.parent_id = #{jurisdiction})
|
or (j.id =#{workjurisdiction}
|
or j.parent_id = #{workjurisdiction}))
|
GROUP BY tasktype
|
</select>
|
|
<select id="querySerid" resultType="java.lang.String">
|
SELECT serid
|
from sys_taskqd
|
where id = #{rid}
|
</select>
|
|
<select id="countTaskByJur" resultType="org.springblade.modules.taskqd.entity.Taskqd">
|
SELECT *
|
FROM sys_taskqd qd
|
WHERE qd.jurisdiction = #{jurisdiction}
|
<choose>
|
<when test='period=="day" '>
|
AND TO_DAYS(qd.time) = TO_DAYS(#{startTime})
|
</when>
|
<when test='period == "week" '>
|
AND YEARWEEK(DATE_FORMAT(qd.time,"%Y-%m-%d"),1) = YEARWEEK(#{startTime},1)
|
</when>
|
<when test='period == "month" '>
|
AND DATE_FORMAT(qd.time,"%Y-%m") = DATE_FORMAT(#{startTime},"%Y-%m")
|
</when>
|
<when test='period == "all" '></when>
|
</choose>
|
LIMIT 0,15
|
</select>
|
|
<select id="getRealTime" resultType="java.lang.Integer">
|
SELECT (UNIX_TIMESTAMP(sendtime)-UNIX_TIMESTAMP(stime))
|
subsecond
|
FROM sys_taskqd
|
WHERE id = #{hdid}
|
</select>
|
|
<!--自定义分页查询-->
|
<select id="selectTaskQdPage" resultType="org.springblade.modules.taskqd.vo.TaskqdVO">
|
select * from sys_taskqd where 1=1
|
</select>
|
|
<!--导出任务数据-->
|
<select id="selectTaskList" resultType="org.springblade.modules.taskqd.excel.TaskExcel">
|
select
|
st.id,st.rname,st.time,st.endtime,st.content,st.gathername,st.fname,st.integral,
|
sr.role_name as trainName,
|
case when rtype='0' then '正在进行'
|
when rtype='1' then '已结束'
|
when rtype='2' then '任务未开始'
|
end as rtypeName,
|
sj.dept_name as jurisdictionName
|
from sys_taskqd st
|
left join sys_jurisdiction sj on sj.id = st.jurisdiction
|
left join blade_role sr on sr.id = st.train
|
where 1=1
|
<if test="task.tasktype!=null and task.tasktype!=''">
|
and st.tasktype = #{task.tasktype}
|
</if>
|
<if test="task.rtype!=null and task.rtype!='' and task.rtype!='undefined'">
|
and st.rtype = #{task.rtype}
|
</if>
|
<if test="task.rname!=null and task.rname!='' and task.rname!='undefined'">
|
and st.rname like concat('%',#{task.rname},'%')
|
</if>
|
<if test="task.jurisdiction!=null and task.jurisdiction!='' and task.jurisdiction!='undefined'">
|
and st.jurisdiction = #{task.jurisdiction}
|
</if>
|
</select>
|
</mapper>
|