Browse Source

20211123优化查询项目列表

yanyuan
zy_Java 4 years ago
parent
commit
f53ae8f38d
  1. 78
      signin/src/main/resources/mapper_dao/ProjectDap.xml

78
signin/src/main/resources/mapper_dao/ProjectDap.xml

@ -13,47 +13,43 @@
<select id="queryProjectList" resultType="com.ccsens.signin.bean.vo.ProjectVo$QueryProject">
SELECT
p.project_id as id,
p.`name`,
p.project_start_time as startTime,
p.project_end_time as endTime,
p.project_status as `status`,
if(t.url is null, p.url, t.url) as url,
t.template_code as templateCode
FROM
t_sys_project_list p
LEFT JOIN t_sys_user_project u ON p.project_id = u.project_id
AND u.rec_status = 0
LEFT JOIN t_sys_template AS t ON p.template_id = t.id AND t.rec_status = 0
WHERE
p.rec_status = 0
AND u.user_id = #{userId}
and p.project_start_time &lt;= #{endTime}
and (
p.project_end_time &gt;= #{startTime}
or
p.project_end_time = 0
)
AND p.project_id NOT IN (
SELECT
sp.project_id
FROM
t_sys_project_list sp
LEFT JOIN (
SELECT
*
FROM
t_sys_project_list
WHERE
rec_status = 0
) pp ON sp.parent_project_id = pp.project_id
LEFT JOIN t_sys_user_project u ON pp.project_id = u.project_id
AND u.rec_status = 0
WHERE
sp.rec_status = 0
AND u.user_id = #{userId}
)
ORDER BY u.sort
p.*
FROM
(
SELECT
p.project_id as id,
p.`name`,
p.project_start_time as startTime,
p.project_end_time as endTime,
p.project_status as `status`,
if(t.url is null, p.url, t.url) as url,
t.template_code as templateCode,
p.parent_project_id as parentId,
u.sort
FROM
t_sys_project_list p
LEFT JOIN t_sys_user_project u ON p.project_id = u.project_id
AND u.rec_status = 0
LEFT JOIN t_sys_template AS t ON p.template_id = t.id AND t.rec_status = 0
WHERE
p.rec_status = 0
AND u.user_id = #{userId}
and p.project_start_time &lt;= #{endTime}
and (
p.project_end_time &gt;= #{startTime}
or
p.project_end_time = 0
)
GROUP BY p.project_id
) p
LEFT JOIN t_sys_project_list pl on p.parentId = pl.project_id and rec_status = 0
LEFT JOIN t_sys_user_project u on pl.project_id = u.project_id
and u.user_id = #{userId}
and u.rec_status = 0
WHERE
u.id is null
ORDER BY p.sort
</select>
<select id="querySonProject" resultType="com.ccsens.signin.bean.vo.ProjectVo$QueryProject">

Loading…
Cancel
Save