Browse Source

执法端-人员查询修改

master
niujiyi 3 weeks ago
parent
commit
11d7c559c7
  1. 56
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/BureauUnitController.java
  2. 2
      zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeVirtualUnitMapper.xml
  3. 17
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java
  4. 2
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java
  5. 4
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java
  6. 2
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/ISysUserService.java
  7. 8
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java
  8. 48
      zdxt-modules/zdxt-system/src/main/resources/mapper/system/SysUserMapper.xml

56
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/BureauUnitController.java

@ -1,17 +1,24 @@
package com.zdxt.enforcementcode.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.convert.Convert;
import com.zdxt.enforcementcode.common.util.CommonUtil;
import com.zdxt.enforcementcode.common.util.IdCardCryptoUtil;
import com.zdxt.enforcementcode.domain.vo.UnitUserVo;
import com.zdxt.enforcementcode.service.IEfcodeVirtualUnitService;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.system.domain.bo.QuerySysUserBo;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.ISysUserService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
@Validated
@RequiredArgsConstructor
@ -19,7 +26,9 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/enforcementcode/bureauUnit")
public class BureauUnitController {
private final IEfcodeVirtualUnitService efcodeVirtualUnitService;
private final ISysUserService userService;
// 手机号解密key
private static String KEY="VRJHzFqJpsSZhwnsKTWNspv_GZMxTWl-bgH6DyE9Ty0";
@GetMapping("/users")
public TableDataInfo<UnitUserVo> queryUsers(
@RequestParam(required = false) String sysDeptId,
@ -33,4 +42,41 @@ public class BureauUnitController {
}
return result;
}
/**
* 查询用户列表
*/
@PostMapping("/queryUsersByPage")
public TableDataInfo<SysUserVo> queryUsersByPage(@RequestBody SysUserBo user, PageQuery pageQuery) {
if (null != user.getNotUserId()) {
Map<String, Object> params = user.getParams();
params.put("notUserIds", Convert.toStrArray(user.getNotUserId()));
}
if (null != user.getIsShowCardId()) {
Map<String, Object> params = user.getParams();
params.put("showCardId", user.getIsShowCardId());
}
user.setDataScopeId(null);
// 分页查询:service 内部已通过 PageQuery.build() 构建 MyBatis-Plus Page 并返回 TableDataInfo
TableDataInfo<SysUserVo> result = userService.queryUsersByPage(user, pageQuery);
// 对手机号进行按需解密后返回明文,便于前端直接展示与使用
List<SysUserVo> rows = result.getRows();
if (rows != null && !rows.isEmpty()) {
rows.forEach(li -> {
if (StringUtils.isEmpty(li.getPhonenumber())) {
return;
}
if (li.getPhonenumber().matches("^\\d+$")) {
li.setDecryptPhoneNum(li.getPhonenumber());
} else {
li.setDecryptPhoneNum(IdCardCryptoUtil.symmetricDecryptIdCard(KEY, li.getPhonenumber()));
}
});
}
return result;
}
}

2
zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeVirtualUnitMapper.xml

@ -14,7 +14,7 @@
u.fullname AS fullname,
u.mobileNumber AS mobileNumber,
u.user_source AS userSource,
u .law_certificate_num as lawCertificateNum,
u . as lawCertificateNum,
REPLACE(COALESCE(d.zzDisplayPath, ''), '深圳市/', '') AS zzDisplayPath,
<choose>
<when test="!globalSearch and sysDeptId != null and sysDeptId != ''">

17
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java

@ -1,5 +1,6 @@
package org.dromara.system.domain.bo;
import com.google.common.collect.Maps;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;
@ -12,6 +13,8 @@ import org.dromara.common.core.xss.Xss;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.system.domain.SysUser;
import java.util.Map;
/**
* 用户信息业务对象 sys_user
*
@ -123,6 +126,7 @@ public class SysUserBo extends BaseEntity {
*/
private Integer isShowCardId;
/**
* 数据权限ID
*/
@ -136,4 +140,17 @@ public class SysUserBo extends BaseEntity {
return SystemConstants.SUPER_ADMIN_ID.equals(this.userId);
}
private Map<String, Object> params;
public Map<String, Object> getParams()
{
if (params == null)
{
params = Maps.newHashMap();
}
return params;
}
private String loginName;
}

2
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java

@ -170,4 +170,6 @@ public class SysUserVo implements Serializable {
*/
private SysDeptVo dept;
private String decryptPhoneNum;
}

4
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java

@ -10,8 +10,10 @@ import org.dromara.common.mybatis.annotation.DataColumn;
import org.dromara.common.mybatis.annotation.DataPermission;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.system.domain.SysUser;
import org.dromara.system.domain.bo.QuerySysUserBo;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.vo.SysUserExportVo;
import org.dromara.system.domain.vo.SysUserVo;
@ -152,4 +154,6 @@ public interface SysUserMapper extends BaseMapperPlus<SysUser, SysUserVo> {
List<SysUserVo> selectUserByIds(String[] ids);
List<SysUserVo> queryUserByIds(String[] ids);
Page<SysUserVo> queryUsersByPage(@Param("user") SysUserBo user, Page<SysUserVo> page);
}

2
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/ISysUserService.java

@ -273,4 +273,6 @@ public interface ISysUserService {
*/
List<SysUserVo> selectUserByIds(List<Long> userIds);
List<SysUserVo> queryUserByIds(List<Long> userIds);
TableDataInfo<SysUserVo> queryUsersByPage(SysUserBo user, PageQuery pageQuery);
}

8
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java

@ -808,6 +808,13 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
return TableDataInfo.build(result);
}
@Override
public TableDataInfo<SysUserVo> queryUsersByPage(SysUserBo user, PageQuery pageQuery) {
Page<SysUserVo> page = pageQuery.build();
Page<SysUserVo> result = baseMapper.queryUsersByPage(user, page);
return TableDataInfo.build(result);
}
/**
* 通过登录账号查询用户(同步过来的用户可能存在重复)
*
@ -900,6 +907,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
return this.baseMapper.selectUserByIds(Convert.toStrArray(userIds));
}
/**
* 判断是否为机构
* @param deptBeanDataSource

48
zdxt-modules/zdxt-system/src/main/resources/mapper/system/SysUserMapper.xml

@ -105,6 +105,54 @@
ORDER BY u.create_time DESC
</select>
<select id="queryUsersByPage" resultType="org.dromara.system.domain.vo.SysUserVo" parameterType="org.dromara.system.domain.bo.SysUserBo">
select u.user_id, u.dept_id, u.login_name, u.user_name, u.phonenumber, u.password, d.dept_name,u.law_certificate_num
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
where u.del_flag = '0'
<if test="user.userId != null and user.userId != ''">
AND u.user_id = #{user.userId}
</if>
<if test="user.loginName != null and user.loginName != ''">
AND u.login_name like concat('%', #{user.loginName}, '%')
</if>
<if test="user.userName != null and user.userName != ''">
AND (
u.user_name like concat('%', #{user.userName}, '%')
or
u.law_certificate_num like concat('%', #{user.userName}, '%')
)
</if>
<if test="user.deptId != null and user.deptId != ''">
and u.dept_id = #{user.deptId}
</if>
<if test="user.notUserId != null and user.notUserId != ''">
and u.user_id not in
<foreach item="uid" collection="user.params.notUserIds" open="(" separator="," close=")">
#{uid}
</foreach>
</if>
<if test="user.params.showCardId != null and user.params.showCardId == 0">
AND (
(u.law_certificate_num is not null AND u.law_certificate_num !="")
or (d.`zone` = 5 or d.`zone` = 15)
or (d.parent_id in (select dept_id from sys_dept where `zone` = 5 or `zone` = 15))
)
</if>
and u.dept_id != 405
<!-- <if test="params.dataScope != null and params.dataScope != ''">
&lt;!&ndash; 数据范围过滤 &ndash;&gt;
${params.dataScope}
</if>-->
<!-- <if test="params.pageNum != null and params.pageSize != null">
LIMIT #{params.pageNum}, #{params.pageSize}
</if>-->
</select>
<sql id="selectUserVo">
select
u.user_id,

Loading…
Cancel
Save