From 61ca1bc9f8298375eabc00f56420bff89c12ebb9 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Sat, 14 Aug 2021 09:54:08 +0800
Subject: [PATCH] 新增带坐标用户列表查询
---
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml | 53 ++++++++++++++++++++++++++
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java | 8 +++
src/main/java/org/springblade/modules/system/controller/UserController.java | 20 +++++++++-
src/main/java/org/springblade/modules/system/mapper/UserMapper.java | 14 ++++++
src/main/java/org/springblade/modules/system/service/IUserService.java | 13 ++++++
5 files changed, 102 insertions(+), 6 deletions(-)
diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java
index fa5bd22..5f1f779 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -117,6 +117,22 @@
/**
* 自定义用户列表
*/
+ @GetMapping("/pages")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "account", value = "账号名", paramType = "query", dataType = "string"),
+ @ApiImplicitParam(name = "realName", value = "姓名", paramType = "query", dataType = "string")
+ })
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "列表", notes = "传入account和realName")
+ //@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+ public R<IPage<UserVO>> pages(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
+ IPage<UserVO> pages = userService.selectUserPages(Condition.getPage(query), user, deptId, "000000");
+ return R.data(pages);
+ }
+
+ /**
+ * 自定义用户列表
+ */
@GetMapping("/page")
@ApiImplicitParams({
@ApiImplicitParam(name = "account", value = "账号名", paramType = "query", dataType = "string"),
@@ -126,8 +142,8 @@
@ApiOperation(value = "列表", notes = "传入account和realName")
//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
- IPage<UserVO> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, "000000");
- return R.data(pages);
+ IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
+ return R.data(UserWrapper.build().pageVO(pages));
}
/**
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.java b/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
index 0323497..a4ce154 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
@@ -38,6 +38,18 @@
public interface UserMapper extends BaseMapper<User> {
/**
+ * 自定义分页,带坐标
+ *
+ * @param page
+ * @param user
+ * @param deptIdList
+ * @param tenantId
+ * @return
+ */
+ List<UserVO> selectUserPages(IPage<UserVO> page, @Param("user") User user, @Param("deptIdList") List<Long> deptIdList, @Param("tenantId") String tenantId);
+
+
+ /**
* 自定义分页
*
* @param page
@@ -46,7 +58,7 @@
* @param tenantId
* @return
*/
- List<UserVO> selectUserPage(IPage<UserVO> page, @Param("user") User user, @Param("deptIdList") List<Long> deptIdList, @Param("tenantId") String tenantId);
+ List<User> selectUserPage(IPage<User> page, @Param("user") User user, @Param("deptIdList") List<Long> deptIdList, @Param("tenantId") String tenantId);
/**
* 获取用户
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
index 18ab95e..b320444 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -47,7 +47,8 @@
<result column="birthtime" property="birthtime"/>
</resultMap>
- <select id="selectUserPage" resultMap="userResultMap">
+ <!--带坐标-->
+ <select id="selectUserPages" resultMap="userResultMap">
select
bu.*,
sll.longitude,sll.latitude,
@@ -113,6 +114,56 @@
ORDER BY bu.id
</select>
+ <select id="selectUserPage" resultMap="userResultMap">
+ select * from blade_user where is_deleted = 0
+ <if test="user.tenantId!=null and user.tenantId != ''">
+ and tenant_id = #{user.tenantId}
+ </if>
+ <if test="user.account!=null and user.account != ''">
+ and account != #{user.account}
+ </if>
+ <if test="user.realName!=null and user.realName != ''">
+ and real_name like concat(concat('%', #{user.realName}),'%')
+ </if>
+ <if test="user.deptId!=null and user.deptId != ''">
+ and dept_id like concat(concat('%', #{user.deptId}),'%')
+ </if>
+ <if test="user.userType!=null and user.userType != ''">
+ and user_type = #{user.userType}
+ </if>
+ <if test="user.nativeplace!=null and user.nativeplace != ''">
+ and nativeplace = #{user.nativeplace}
+ </if>
+ <if test="user.sex!=null and user.sex != ''">
+ and sex = #{user.sex}
+ </if>
+ <if test="user.status!=null and user.status != ''">
+ and status = #{user.status}
+ </if>
+ <if test="user.hold!=null and user.hold != ''">
+ and hold = #{user.hold}
+ </if> <if test="user.jurisdiction!=null and user.jurisdiction != ''">
+ and jurisdiction = #{user.jurisdiction}
+ </if>
+ <if test="user.securitynumber!=null and user.securitynumber != ''">
+ and securitynumber = #{user.securitynumber}
+ </if>
+ <if test="deptIdList!=null and deptIdList.size>0">
+ and id in (
+ SELECT
+ user_id
+ FROM
+ blade_user_dept
+ WHERE
+ dept_id IN
+ <foreach collection="deptIdList" index="index" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ )
+ </if>
+ ORDER BY id
+ </select>
+
<select id="getUser" resultMap="userResultMap">
SELECT *
FROM blade_user
diff --git a/src/main/java/org/springblade/modules/system/service/IUserService.java b/src/main/java/org/springblade/modules/system/service/IUserService.java
index a04e4e8..36927ba 100644
--- a/src/main/java/org/springblade/modules/system/service/IUserService.java
+++ b/src/main/java/org/springblade/modules/system/service/IUserService.java
@@ -73,7 +73,18 @@
* @param tenantId
* @return
*/
- IPage<UserVO> selectUserPage(IPage<UserVO> page, User user, Long deptId, String tenantId);
+ IPage<UserVO> selectUserPages(IPage<UserVO> page, User user, Long deptId, String tenantId);
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param user
+ * @param deptId
+ * @param tenantId
+ * @return
+ */
+ IPage<User> selectUserPage(IPage<User> page, User user, Long deptId, String tenantId);
/**
* 自定义分页
diff --git a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
index 4cedde8..4b535a8 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -138,7 +138,13 @@
}
@Override
- public IPage<UserVO> selectUserPage(IPage<UserVO> page, User user, Long deptId, String tenantId) {
+ public IPage<UserVO> selectUserPages(IPage<UserVO> page, User user, Long deptId, String tenantId) {
+ List<Long> deptIdList = SysCache.getDeptChildIds(deptId);
+ return page.setRecords(baseMapper.selectUserPages(page, user, deptIdList, tenantId));
+ }
+
+ @Override
+ public IPage<User> selectUserPage(IPage<User> page, User user, Long deptId, String tenantId) {
List<Long> deptIdList = SysCache.getDeptChildIds(deptId);
return page.setRecords(baseMapper.selectUserPage(page, user, deptIdList, tenantId));
}
--
Gitblit v1.9.3