From 53dea0ef5fc8b035397b73b10f7a819ebf381b1c Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 09 七月 2024 09:39:11 +0800 Subject: [PATCH] 分页优化 --- src/main/java/com/mindskip/xzs/domain/vo/TagVO.java | 2 ++ src/main/java/com/mindskip/xzs/controller/admin/TagController.java | 4 ++++ src/main/resources/mapper/TagMapper.xml | 14 +++++++++++++- 3 files changed, 19 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/controller/admin/TagController.java b/src/main/java/com/mindskip/xzs/controller/admin/TagController.java index f241fa3..b739e97 100644 --- a/src/main/java/com/mindskip/xzs/controller/admin/TagController.java +++ b/src/main/java/com/mindskip/xzs/controller/admin/TagController.java @@ -9,6 +9,7 @@ import com.mindskip.xzs.service.TagService; import lombok.Data; import org.apache.commons.lang3.ObjectUtils; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import java.util.List; @@ -35,6 +36,9 @@ @RequestMapping(value = "/page/list", method = RequestMethod.POST) public RestResponse<PageInfo<Tag>> pageList(@RequestBody TagVO tag) { + if (! CollectionUtils.isEmpty(webContext.getAdminDeptIds())) { + tag.setDeptId(webContext.getAdminDeptIds().get(0)); + } PageInfo<Tag> page = tagService.tagPage(tag); return RestResponse.ok(page); } diff --git a/src/main/java/com/mindskip/xzs/domain/vo/TagVO.java b/src/main/java/com/mindskip/xzs/domain/vo/TagVO.java index e47e579..87c0f8d 100644 --- a/src/main/java/com/mindskip/xzs/domain/vo/TagVO.java +++ b/src/main/java/com/mindskip/xzs/domain/vo/TagVO.java @@ -16,6 +16,8 @@ private String name; + private Integer deptId; + private String deptName; private Boolean deleted; diff --git a/src/main/resources/mapper/TagMapper.xml b/src/main/resources/mapper/TagMapper.xml index b164ec9..693b3bb 100644 --- a/src/main/resources/mapper/TagMapper.xml +++ b/src/main/resources/mapper/TagMapper.xml @@ -37,13 +37,25 @@ tt.id, tt.name, td.name as deptName FROM t_tag tt - INNER JOIN t_department td ON tt.dept_id = td.id + INNER JOIN t_department td ON tt.dept_id = td.id <if test="tag.deptId != null">AND tt.dept_id = #{tag.deptId}</if> <where> AND tt.deleted = 0 <if test="tag.name != null and tag.name != ''"> AND tt.name like concat('%', #{tag.name}, '%') </if> </where> + UNION ALL + SELECT + tt.id, tt.name, '鎵�鏈夐儴闂�' as deptName + FROM + t_tag tt + <where> + tt.dept_id is null + AND tt.deleted = 0 + <if test="tag.name != null and tag.name != ''"> + AND tt.name like concat('%', #{tag.name}, '%') + </if> + </where> </select> </mapper> -- Gitblit v1.8.0