Commit 2d64a218 authored by 纪泽龙's avatar 纪泽龙
parents d3e994b2 8bb3c143
......@@ -38,6 +38,14 @@ public interface TTaskInspectMapper
* @return
*/
public List<UserTaskInspect> selectJMinspect(UserTaskInspect ut);
/**
* 当派生表数据量小时,优化器全表扫描导致数量统计慢,手动创建数量统计
* @param ut
* @return
*/
Long selectJMinspect_COUNT(UserTaskInspect ut);
public List<UserTaskInspect> selectCYinspect(UserTaskInspect ut);
/**
......
......@@ -106,7 +106,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
dept.dept_name as deptName
FROM
sys_user su
LEFT JOIN t_group_member_info member ON member.user_id = su.user_id
LEFT JOIN sys_dept dept ON dept.dept_id = su.dept_id
<where>
<!--<if test="groupId != null">
......
......@@ -135,6 +135,36 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</where>
order by inspect.create_time desc
</select>
<select id="selectJMinspect_COUNT" parameterType="com.zehong.system.domain.vo.UserTaskInspect" resultType="java.lang.Long">
SELECT STRAIGHT_JOIN COUNT(0)
FROM t_user u
LEFT JOIN t_area t ON t.`id` = u.`county`
LEFT JOIN t_area ts ON ts.id = u.`street`
LEFT JOIN t_community c ON c.id = u.village
LEFT JOIN (
SELECT i.*,d.totalMissNum FROM t_task_inspect i,
(SELECT MAX(id) AS id,SUM(IF(`status` = 0, 1, 0)) totalMissNum FROM t_task_inspect WHERE `status` !=-1 AND task_id = #{taskId} GROUP BY receive_id)d where i.id = d.id
) inspect ON u.id = inspect.receive_id
LEFT JOIN sys_user su ON su.user_id = inspect.member_id
<where>
<if test="username!=null and username!=''"> and u.username like concat('%',#{username},'%')</if>
<if test="usernum!=null and usernum!=''"> and u.usernum like concat('%',#{usernum},'%')</if>
<if test="meternum!=null and meternum!=''"> and u.meternum like concat('%',#{meternum},'%')</if>
<if test="satisfy!=null"> and inspect.satisfy = #{satisfy}</if>
<if test="inspectStatus!=null and inspectStatus != -1" > and inspect.status = #{inspectStatus}</if>
<if test="inspectStatus!=null and inspectStatus== -1"> and inspect.status is null</if>
<if test="nickName!=null and nickName!=''"> and su.nick_name like concat('%',#{nickName},'%')</if>
<if test="taskType!=null and taskType != ''"> and u.task_type = #{taskType}</if>
<if test="village!=null"> and u.village = #{village}</if>
<if test="missNum != 0">and inspect.totalMissNum = #{ missNum }</if>
<if test="village == null ">
and u.village in (SELECT re.relation_id FROM t_task_relation_info re WHERE re.task_id = #{taskId} and re.type = '1' )
</if>
</where>
order by inspect.create_time desc
</select>
<select id="selectCYinspect" parameterType="com.zehong.system.domain.vo.UserTaskInspect" resultType="com.zehong.system.domain.vo.UserTaskInspect">
SELECT inspect.id,
IFNULL(inspect.status,-1) AS inspectStatus,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment