2022/3/21 copy自RuoYi-vue-plusV4.0.1现在可以增加修改还没想好删除应该怎么实现

master
GPU is all you need 4 years ago
parent 8be96df11e
commit c5236ad07e
  1. 118
      awardBE/src/main/java/edu/ncst/award/common/constant/UserConstants.java
  2. 95
      awardBE/src/main/java/edu/ncst/award/controller/UserController.java
  3. 69
      awardBE/src/main/java/edu/ncst/award/mapper/system/UserMapper.java
  4. 149
      awardBE/src/main/java/edu/ncst/award/model/system/User.java
  5. 164
      awardBE/src/main/java/edu/ncst/award/service/impl/system/UserServiceImpl.java
  6. 100
      awardBE/src/main/resources/mapper/UserMapper.xml

@ -0,0 +1,118 @@
package edu.ncst.award.common.constant;
/**
* 用户常量信息
*
* @author ruoyi
*/
public interface UserConstants {
/**
* 平台内系统用户的唯一标志
*/
String SYS_USER = "SYS_USER";
/**
* 正常状态
*/
String NORMAL = "0";
/**
* 异常状态
*/
String EXCEPTION = "1";
/**
* 用户封禁状态
*/
String USER_DISABLE = "1";
/**
* 角色封禁状态
*/
String ROLE_DISABLE = "1";
/**
* 部门正常状态
*/
String DEPT_NORMAL = "0";
/**
* 部门停用状态
*/
String DEPT_DISABLE = "1";
/**
* 字典正常状态
*/
String DICT_NORMAL = "0";
/**
* 是否为系统默认
*/
String YES = "Y";
/**
* 是否菜单外链
*/
String YES_FRAME = "0";
/**
* 是否菜单外链
*/
String NO_FRAME = "1";
/**
* 菜单类型目录
*/
String TYPE_DIR = "M";
/**
* 菜单类型菜单
*/
String TYPE_MENU = "C";
/**
* 菜单类型按钮
*/
String TYPE_BUTTON = "F";
/**
* Layout组件标识
*/
String LAYOUT = "Layout";
/**
* ParentView组件标识
*/
String PARENT_VIEW = "ParentView";
/**
* InnerLink组件标识
*/
String INNER_LINK = "InnerLink";
/**
* 校验返回结果码
*/
String UNIQUE = "0";
String NOT_UNIQUE = "1";
/**
* 用户名长度限制
*/
int USERNAME_MIN_LENGTH = 2;
int USERNAME_MAX_LENGTH = 20;
/**
* 密码长度限制
*/
int PASSWORD_MIN_LENGTH = 5;
int PASSWORD_MAX_LENGTH = 20;
/**
* 管理员ID
*/
Long ADMIN_ID = 1L;
}

@ -1,49 +1,116 @@
package edu.ncst.award.controller;
import cn.hutool.core.util.ObjectUtil;
import edu.ncst.award.common.constant.UserConstants;
import edu.ncst.award.common.core.controller.BaseController;
import edu.ncst.award.common.core.page.TableDataInfo;
import edu.ncst.award.model.system.Role;
import edu.ncst.award.model.system.User;
import edu.ncst.award.service.ISysRoleService;
import edu.ncst.award.service.IUserService;
import edu.ncst.award.utils.ResponseUtils;
import edu.ncst.award.utils.ResultUtils;
import edu.ncst.award.vo.ListResultVO;
import edu.ncst.award.utils.StringUtils;
import edu.ncst.award.vo.ResultVO;
import edu.ncst.award.vo.param.CurrentUserDTO;
import edu.ncst.award.vo.param.query.UserQuery;
import io.swagger.annotations.Api;
import edu.ncst.award.vo.param.query.PageQuery;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.BindingResult;
import org.springframework.security.crypto.bcrypt.BCrypt;
import org.springframework.stereotype.Controller;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 用户 控制器
*/
@Api(description = "用户管理", tags = "UserController")
@Slf4j
@RestController
@Controller
@RequiredArgsConstructor
@RequestMapping("/api/user")
public class UserController {
public class UserController extends BaseController {
private final IUserService userService;
private final ISysRoleService roleService;
public UserController(IUserService userService) {
this.userService = userService;
}
/**
* 获取用户列表
*/
@ApiOperation("获取用户列表")
@GetMapping("/list")
public ResultVO<ListResultVO<User>> getUserList(UserQuery query) {
ListResultVO<User> userList = userService.getUserList(query);
public TableDataInfo<User> list(User user, PageQuery pageQuery) {
return userService.selectPageUserList(user, pageQuery);
}
return ResultUtils.success("ok", userList);
/**
* 根据用户编号获取详细信息
*/
@ApiOperation("根据用户编号获取详细信息")
@GetMapping(value = {"/", "/{id}"})
public ResultVO<Map<String, Object>> getInfo(@ApiParam("用户ID") @PathVariable(value = "id", required = false) Long userId) {
// admin 具有超级权限你不能修改他
Map<String, Object> ajax = new HashMap<>();
List<Role> roles = roleService.selectRoleAll();
ajax.put("roles", UserConstants.ADMIN_ID.equals(userId) ? roles : roles.stream().filter(r -> !r.isAdmin()).collect(Collectors.toList()));
if (ObjectUtil.isNotNull(userId)) {
User sysUser = userService.selectUserById(userId);
ajax.put("user", sysUser);
ajax.put("roleIds", sysUser.getRoles().stream().map(Role::getRoleId).collect(Collectors.toList()));
}
return ResultUtils.success(ajax);
}
/**
* 处理新增用户请求
*/
@ApiOperation("处理新增用户请求")
@PostMapping
public ResultVO<Void> list(@RequestBody User user) {
if (StringUtils.isNotEmpty(user.getUsername()) && UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) {
return ResultUtils.error("新增用户" + user.getUsername() + "失败,账号已存在");
} else if (StringUtils.isNotEmpty(user.getMobilePhone())
&& UserConstants.NOT_UNIQUE.equals(userService.checkUserMobilePhoneUnique(user))) {
return ResultUtils.error("新增用户" + user.getUsername() + "失败,用户手机号已存在");
} else if (StringUtils.isNotEmpty(user.getEmail())
&& UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
return ResultUtils.error("新增用户" + user.getUsername() + "失败,用户邮箱邮箱已存在");
}
if (StringUtils.isEmpty(user.getPassword())) {
user.setPassword(BCrypt.hashpw(user.getPassword(), BCrypt.gensalt("$2a")));
}
log.info("新增{}用户成功", user.getUsername());
return userService.insertUser(user) > 0 ? ResultUtils.success() : ResultUtils.error();
}
/**
* 修改用户
*/
@ApiOperation("修改用户")
@PutMapping
public ResultVO<Void> edit(@Validated @RequestBody User user) {
userService.checkUserAllowed(user);
if (StringUtils.isNotEmpty(user.getMobilePhone())
&& UserConstants.NOT_UNIQUE.equals(userService.checkUserMobilePhoneUnique(user))) {
return ResultUtils.error("修改用户'" + user.getUsername() + "'失败,手机号码已存在");
} else if (StringUtils.isNotEmpty(user.getEmail())
&& UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
return ResultUtils.error("修改用户'" + user.getUsername() + "'失败,邮箱账号已存在");
}
return toAjax(userService.updateUser(user));
}
@ApiOperation("获取当前用户信息")
@GetMapping("/current")
public ResponseEntity<?> getCurrentUser() {

@ -1,10 +1,14 @@
package edu.ncst.award.mapper.system;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import edu.ncst.award.model.system.Role;
import edu.ncst.award.model.system.User;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;
import org.springframework.stereotype.Repository;
@ -15,37 +19,50 @@ import java.util.List;
/**
* 用户 Mapper 接口
*/
@Repository
@Mapper
public interface UserMapper extends BaseMapper<User> {
Page<Integer> getUserPage(
@Param("pageRequest") Page<User> pageRequest,
@Param(Constants.WRAPPER) QueryWrapper queryWrapper
);
// Page<Integer> getUserPage(
// @Param("pageRequest") Page<User> pageRequest,
// @Param(Constants.WRAPPER) QueryWrapper queryWrapper
// );
//
// List<User> getUserList( @Param(Constants.WRAPPER) QueryWrapper queryWrapper);
List<User> getUserList( @Param(Constants.WRAPPER) QueryWrapper queryWrapper);
List<Role> getUserRolesById(long id);
User getUserDetail(Integer userId);
// User getUserDetail(Integer userId);
//
// User getUserByAccount(String account);
//
// User getUserByOpenId(String openId);
//
// @Update("UPDATE sys_user SET enable = #{ enable } WHERE id = #{ userId }")
// int setUserEnable(Integer userId, Boolean enable);
//
// // 更新用户的最后登录记录
// int updateUserLastLoginRecord(
// @Param("userId") Integer userId,
// @Param("lastLoginIp") String lastLoginIp,
// @Param("lastLoginTime") Date lastLoginTime
// );
//
// // 绑定用户微信号
// int bindUserOpenId(Integer userId, String openId);
//
// int getUserByUnitID(Integer unitID);
//
// void batchUpdatePassword(List<User> newuser);
User getUserByAccount(String account);
Page<User> selectPageUserList(@Param("page") Page<User> page, @Param("user") User user);
User getUserByOpenId(String openId);
@Update("UPDATE sys_user SET enable = #{ enable } WHERE id = #{ userId }")
int setUserEnable(Integer userId, Boolean enable);
// 更新用户的最后登录记录
int updateUserLastLoginRecord(
@Param("userId") Integer userId,
@Param("lastLoginIp") String lastLoginIp,
@Param("lastLoginTime") Date lastLoginTime
);
// 绑定用户微信号
int bindUserOpenId(Integer userId, String openId);
int getUserByUnitID(Integer unitID);
void batchUpdatePassword(List<User> newuser);
/**
* 通过用户ID查询用户
*
* @param userId 用户ID
* @return 用户对象信息
*/
User selectUserById(Long userId);
}

@ -1,8 +1,11 @@
package edu.ncst.award.model.system;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import edu.ncst.award.common.constant.UserConstants;
import edu.ncst.award.model.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -13,37 +16,143 @@ import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
import java.io.Serializable;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
@ApiModel(value="User", description="用户")
@Data
@ApiModel(value = "User", description = "用户")
@SuppressWarnings("all")
@EqualsAndHashCode(callSuper = false)
@Data
@TableName("sys_user")
public class User extends BaseEntity implements Serializable, UserDetails {
@ApiModelProperty(value = "用户id")
private Integer id;
@ApiModelProperty(value = "用户密码")
private String password;
@ApiModelProperty(value = "用户名")
private static final long serialVersionUID = 1L;
@ApiModelProperty("用户ID")
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@ApiModelProperty("用户名")
@TableField("username")
private String username;
@ApiModelProperty(value = "用户真实名")
@ApiModelProperty("用户昵称")
@TableField("nickname")
private String nickname;
@ApiModelProperty("密码")
@TableField("password")
private String password;
@ApiModelProperty("电子邮箱")
@TableField("email")
private String email;
@ApiModelProperty("手机号")
@TableField("mobile_phone")
private String mobilePhone;
@ApiModelProperty("工作单位ID")
@TableField("unit_id")
private Integer unitId;
@ApiModelProperty("二级单位(部门)ID")
@TableField("dept_id")
private Integer deptId;
@ApiModelProperty("行政职务")
@TableField("position")
private String position;
@ApiModelProperty("办公电话")
@TableField("office_phone")
private String officePhone;
@ApiModelProperty("真实姓名")
@TableField("full_name")
private String fullName;
@ApiModelProperty(value = "地址信息")
@ApiModelProperty("通讯地址")
@TableField("address")
private String address;
@ApiModelProperty(value = "手机号")
private String phone;
@ApiModelProperty(value = "所属单位")
private Integer unitId;
@ApiModelProperty("邮编")
@TableField("postal")
private String postal;
@ApiModelProperty("性别")
@TableField("sex")
private String sex;
@ApiModelProperty("国籍")
@TableField("country")
private String country;
@ApiModelProperty("民族")
@TableField("nation")
private String nation;
@ApiModelProperty("党派")
@TableField("party")
private String party;
@ApiModelProperty("出生日期")
@TableField("birth_date")
private LocalDate birthDate;
@ApiModelProperty("出生地")
@TableField("birth_area")
private String birthArea;
@ApiModelProperty("身份证号")
@TableField("ID_card")
private String idCard;
@ApiModelProperty("技术职称")
@TableField("title")
private String title;
@ApiModelProperty("最高学位{0:博士;1:硕士;2:学士;3:专科;4:其他}")
@TableField("degree")
private String degree;
@ApiModelProperty("最高学历{0:研究生;1:本科;2:专科;3:其他}")
@TableField("education")
private String education;
@ApiModelProperty("毕业学校")
@TableField("college")
private String college;
@ApiModelProperty("所学专业")
@TableField("major")
private String major;
@ApiModelProperty("毕业日期")
@TableField("graduate_date")
private LocalDate graduateDate;
@ApiModelProperty("是否归国人员")
@TableField("is_abroad")
private Boolean isAbroad;
@ApiModelProperty("归国日期")
@TableField("return_date")
private LocalDate returnDate;
@ApiModelProperty("个人签名图片id")
@TableField("sign")
private Integer sign;
@ApiModelProperty(value = "角色列表")
@TableField(exist = false)
private List<Role> roles;
@ApiModelProperty(value = "是否启用 1:启用 0:禁用")
private Boolean enable;
@ApiModelProperty(value = "是否启用 1:启用 0:禁用")
@TableField("enable")
private String enable;
@Override
@ -79,6 +188,12 @@ public class User extends BaseEntity implements Serializable, UserDetails {
@Override
public boolean isEnabled() {
return this.enable;
return enable.equals("1");
}//是否启用
@ApiModelProperty(value = "是否超级管理员")
public boolean isAdmin() {
return UserConstants.ADMIN_ID.equals(this.id);
}
}

@ -1,24 +1,39 @@
package edu.ncst.award.service.impl.system;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import edu.ncst.award.common.constant.UserConstants;
import edu.ncst.award.common.core.exception.ServiceException;
import edu.ncst.award.common.core.page.TableDataInfo;
import edu.ncst.award.mapper.system.UserMapper;
import edu.ncst.award.model.system.Role;
import edu.ncst.award.model.system.User;
import edu.ncst.award.service.IUserService;
import edu.ncst.award.vo.ListResultVO;
import edu.ncst.award.vo.param.CurrentUserDTO;
import edu.ncst.award.vo.param.query.PageQuery;
import edu.ncst.award.vo.param.query.UserQuery;
import edu.ncst.award.vo.result.UserInfoVO;
import lombok.RequiredArgsConstructor;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.ArrayList;
import java.util.List;
@RequiredArgsConstructor
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IUserService, UserDetailsService {
private final UserMapper baseMapper;
@Override
public UserInfoVO getUserInfo(UserQuery query) {
UserInfoVO vo = new UserInfoVO();
@ -28,19 +43,19 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
return vo;
}
@Override
public ListResultVO<User> getUserList(UserQuery query) {
User user = new User();
user.setPassword("$2a$10$1cDN8G8bEpqkvOHZUxrAk.qvnZzP8IAuCWzezPXCdZYOL4jKVgEb.");
user.setAddress("address 1111111");
user.setUsername("zhangsan");
user.setFullName("张三");
user.setEnable(true);
ListResultVO listResultVO = new ListResultVO();
List list = new ArrayList<>();
list.add(user);
listResultVO.setList(list);
return listResultVO;
public TableDataInfo<User> selectPageUserList(@RequestParam User user, PageQuery pageQuery) {
Page<User> page = baseMapper.selectPageUserList(pageQuery.build(), user);
return TableDataInfo.build(page);
}
@Override
public ListResultVO<User> getUserList() {
list();
// baseMapper.getUserPage()
// return listResultVO;
return new ListResultVO<>();
}
@Override
@ -51,19 +66,122 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
return user;
}
@Override
public List<Role> getRoles() {
final ArrayList<Role> roles = new ArrayList<>();
return roles;
}
/**
* 新增保存用户信息
*
* @param user 用户
* @return 结果
*/
@Override
@Transactional(rollbackFor = Exception.class)
public int insertUser(User user) {
// 新增用户信息
// 新增用户与角色管理
// insertUserRole(user);
return baseMapper.insert(user);
}
/**
* 校验用户名称是否唯一
*
* @param user 用户
* @return 结果
*/
@Override
public String checkUserNameUnique(User user) {
boolean exist = baseMapper.exists(new LambdaQueryWrapper<User>().eq(User::getUsername, user.getUsername())
.ne(ObjectUtil.isNotNull(user.getId()), User::getId, user.getId()));
if (exist) {
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
}
/**
* 校验用户手机号是否唯一
*
* @param user@return 结果
*/
@Override
public String checkUserMobilePhoneUnique(User user) {
boolean exist = baseMapper.exists(new LambdaQueryWrapper<User>().eq(User::getMobilePhone, user.getMobilePhone())
.ne(ObjectUtil.isNotNull(user.getId()), User::getId, user.getId()));
if (exist) {
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
}
/**
* 检查用户邮箱是否存在
*
* @param user 用户
* @return 结果
*/
@Override
public String checkEmailUnique(User user) {
boolean exist = baseMapper.exists(new LambdaQueryWrapper<User>().eq(User::getEmail, user.getEmail())
.ne(ObjectUtil.isNotNull(user.getId()), User::getId, user.getId()));
if (exist) {
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
}
/**
* 校验用户是否允许操作
*
* @param user 用户信息
*/
@Override
public void checkUserAllowed(User user) {
if (ObjectUtil.isNotNull(user.getId()) && user.isAdmin()) {
throw new ServiceException("不允许操作超级管理员用户");
}
}
/**
* 修改保存用户信息
*
* @param user 用户信息
* @return 结果
*/
@Override
@Transactional(rollbackFor = Exception.class)
public int updateUser(User user) {
// Long userId = user.getId();
// 删除用户与角色关联
// userRoleMapper.delete(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, userId));
// 新增用户与角色管理
// insertUserRole(user);
return baseMapper.updateById(user);
}
/**
* 通过用户ID查询用户
*
* @param userId 用户ID
* @return 用户对象信息
*/
@Override
public User selectUserById(Long userId) {
return baseMapper.selectUserById(userId);
}
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
User user = new User();
user.setPassword("$2a$10$1cDN8G8bEpqkvOHZUxrAk.qvnZzP8IAuCWzezPXCdZYOL4jKVgEb.");
user.setAddress("address 1111111");
user.setUsername("zhangsan");
user.setFullName("张三");
Role role=new Role();
role.setName("NORMAL");
List<Role> roles = new ArrayList<>();
roles.add(role);
user.setRoles(roles);
user.setEnable(true);
User user = getOne(new QueryWrapper<User>().lambda().eq(User::getUsername, username));
if (user == null) {
throw new UsernameNotFoundException("用户名不存在!");
}
user.setRoles(baseMapper.getUserRolesById(user.getId()));
return user;
}
}

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="edu.ncst.award.mapper.system.UserMapper">
<resultMap type="edu.ncst.award.model.system.User" id="SysUserResult">
<id property="id" column="id"/>
<result property="deptId" column="dept_id"/>
<result property="username" column="username"/>
<result property="nickname" column="nickname"/>
<result property="email" column="email"/>
<result property="mobilePhone" column="mobile_phone"/>
<result property="sex" column="sex"/>
<result property="password" column="password"/>
<result property="enable" column="enable"/>
<result property="createUserId" column="create_user_id"/>
<result property="createTime" column="create_time"/>
<result property="lastModifyUserId" column="last_modify_user_id"/>
<result property="lastModifyTime" column="last_modify_time"/>
<result property="sign" column="sign"/>
<collection property="roles" javaType="java.util.List" resultMap="RoleResult"/>
</resultMap>
<resultMap id="RoleResult" type="edu.ncst.award.model.system.Role">
<id property="roleId" column="id"/>
<result property="name" column="name"/>
<result property="enable" column="true"/>
</resultMap>
<sql id="selectUserVo">
SELECT u.`id`,
u.`dept_id`,
u.`username`,
u.`nickname`,
u.`email`,
u.`mobile_phone`,
u.`password`,
u.`sex`,
u.`enable`,
u.`create_user_id`,
u.`create_time`,
u.`sign`,
d.`parent_id`,
d.`enable` AS dept_status,
r.`id`,
r.`name`,
r.`enable` AS role_status
FROM sys_user u
LEFT JOIN sys_dept d ON u.`dept_id` = d.`id`
LEFT JOIN sys_user_role ur ON u.`id` = ur.`user_id`
LEFT JOIN sys_role r ON r.`id` = ur.role_id
</sql>
<select id="getUserRolesById" resultType="edu.ncst.award.model.system.Role">
SELECT *
FROM sys_role
WHERE id in (
SELECT `role_id`
FROM sys_user_role
INNER JOIN sys_user ON sys_user_role.user_id = sys_user.id
AND sys_user.id = #{id})
</select>
<select id="selectPageUserList" resultType="edu.ncst.award.model.system.User">
select u.id, u.nickname, u.username, u.email, u.mobile_phone,
u.enable, u.create_time, u.delete_time
from sys_user u where true
<if test="user.id != null and user.id != 0">
AND u.id = #{user.id}
</if>
-- 对userName进行模糊搜索
<if test="user.username != null and user.username != ''">
AND u.username like concat('%', #{user.username}, '%')
</if>
-- 对nickName进行模糊搜索
<if test="user.nickname != null and user.nickname != ''">
AND u.nickname like concat('%', #{user.nickname}, '%')
</if>
<if test="user.enable != null and user.enable != ''">
AND u.enable = #{user.enable}
</if>
<if test="user.mobilePhone != null and user.mobilePhone != ''">
AND u.mobile_phone like concat('%', #{user.mobilePhone}, '%')
</if>
<if test="user.params.beginTime != null and user.params.beginTime != ''"><!-- 开始时间检索 -->
AND date_format(u.create_time,'%y%m%d') &gt;= date_format(#{user.params.beginTime},'%y%m%d')
</if>
<if test="user.params.endTime != null and user.params.endTime != ''"><!-- 结束时间检索 -->
AND date_format(u.create_time,'%y%m%d') &lt;= date_format(#{user.params.endTime},'%y%m%d')
</if>
-- 等做到权限就有用了
<!-- <if test="user.deptId != null and user.deptId != 0">-->
<!-- AND (u.dept_id = #{user.deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{user.deptId},-->
<!-- ancestors) ))-->
<!-- </if>-->
</select>
<select id="selectUserById" parameterType="Long" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where true and u.`id` = #{userId}
</select>
</mapper>
Loading…
Cancel
Save