用户管理

This commit is contained in:
lihongbiao 2025-07-19 21:08:46 +08:00
parent 563455a412
commit 254e0ac233
11 changed files with 195 additions and 257 deletions

View File

@ -63,9 +63,9 @@ public class UserDetailsServiceImpl implements UserDetailsService {
// 获取用户的权限
List<AuthorityDto> authorities = roleService.buildPermissions(user);
EmEmployees emEmployees = null;
if (user.getUserType()==1) {
emEmployees = emEmployeesService.findByUserId(user.getId());
}
// if (user.getUserType()==1) {
// emEmployees = emEmployeesService.findByUserId(user.getId());
// }
// 初始化JwtUserDto
jwtUserDto = new JwtUserDto(BeanUtil.copyProperties(user, LoginUserDto.class), UserTypeEnum.getByValue(user.getUserType()),dataService.getDeptIds(user), authorities,emEmployees);
// 添加缓存数据

View File

@ -28,6 +28,7 @@ import com.aircraft.modules.security.service.dto.AuthUserDto;
import com.aircraft.modules.security.service.dto.JwtUserDto;
import com.aircraft.modules.system.domain.EmEmployees;
import com.aircraft.modules.system.domain.User;
import com.aircraft.modules.system.domain.dto.EmEmployeesQueryCriteria;
import com.aircraft.modules.system.domain.dto.UserPassVo;
import com.aircraft.modules.system.domain.vo.EmEmployeesDetailVo;
import com.aircraft.modules.system.domain.vo.EmEmployeesVo;
@ -36,12 +37,14 @@ import com.aircraft.modules.system.service.UserService;
import com.aircraft.utils.*;
import com.aircraft.utils.enums.UserTypeEnum;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.RequiredArgsConstructor;
import java.util.HashMap;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.crypto.password.PasswordEncoder;
@ -49,8 +52,10 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.*;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
@ -79,7 +84,7 @@ public class EmEmployeesController {
// public void exportEmEmployees(HttpServletResponse response, EmEmployeesQueryCriteria criteria) throws IOException {
// emEmployeesService.download(emEmployeesService.queryAll(criteria), response);
// }
//
// @GetMapping
// @ApiOperation("查询员工管理")
// @PreAuthorize("@el.check('emEmployees:list')")
@ -87,16 +92,16 @@ public class EmEmployeesController {
// Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize());
// return new ResponseEntity<>(emEmployeesService.queryAll(criteria,page),HttpStatus.OK);
// }
//
// @PostMapping
// @Log("新增员工管理")
// @ApiOperation("新增员工管理")
// @PreAuthorize("@el.check('emEmployees:add')")
// public ResponseEntity<Object> createEmEmployees(@Validated @RequestBody EmEmployeesVo resources){
// emEmployeesService.create(resources);
// return new ResponseEntity<>(HttpStatus.CREATED);
// }
//
@PostMapping
@Log("新增员工管理")
@ApiOperation("新增员工管理")
@PreAuthorize("@el.check('emEmployees:add')")
public ResponseEntity<Object> createEmEmployees(@Validated @RequestBody EmEmployeesVo resources){
emEmployeesService.create(resources);
return new ResponseEntity<>(HttpStatus.CREATED);
}
@PutMapping
@Log("设置个人信息")
@ApiOperation("设置个人信息")
@ -111,7 +116,7 @@ public class EmEmployeesController {
@ApiImplicitParam(name = "id", value = "飞行员id", required = true, paramType = "path")
public ResponseEntity<Object> one(@PathVariable final Integer id) {
try {
EmEmployees emEmployees = JSON.parseObject(SecurityUtils.getCurrentEmployee(), EmEmployees.class);
// EmEmployees emEmployees = JSON.parseObject(SecurityUtils.getCurrentEmployee(), EmEmployees.class);
EmEmployeesDetailVo entity = emEmployeesService.findById(id);
return new ResponseEntity<>(entity,HttpStatus.OK);
} catch (Exception e) {
@ -136,22 +141,22 @@ public class EmEmployeesController {
return new ResponseEntity<>(HttpStatus.OK);
}
//
// @DeleteMapping
// @Log("删除员工管理")
// @ApiOperation("删除员工管理")
// @PreAuthorize("@el.check('emEmployees:del')")
// public ResponseEntity<Object> deleteEmEmployees(@ApiParam(value = "传ID数组[]") @RequestBody List<Long> ids) {
// emEmployeesService.deleteAll(ids);
// return new ResponseEntity<>(HttpStatus.OK);
// }
// @GetMapping("findByPage")
// @ApiOperation("分页查询员工管理")
// public ResponseEntity<PageResult<EmEmployeesDetailVo>> findByPage(final EmEmployeesDetailVo example, final Page page){
// PageResult<EmEmployeesDetailVo> records = emEmployeesService.page(example,page);
// return new ResponseEntity<>(records,HttpStatus.OK);
// }
@DeleteMapping
@Log("删除员工管理")
@ApiOperation("删除员工管理")
@PreAuthorize("@el.check('emEmployees:del')")
public ResponseEntity<Object> deleteEmEmployees(@ApiParam(value = "传ID数组[]") @RequestBody List<Long> ids) {
emEmployeesService.deleteAll(ids);
return new ResponseEntity<>(HttpStatus.OK);
}
@GetMapping("findByPage")
@ApiOperation("分页查询员工管理")
public ResponseEntity<PageResult<EmEmployeesDetailVo>> findByPage(final EmEmployeesDetailVo example, final Page page){
PageResult<EmEmployeesDetailVo> records = emEmployeesService.page(example,page);
return new ResponseEntity<>(records,HttpStatus.OK);
}
@Log("用户登录")
@ApiOperation("登录授权")

View File

@ -16,6 +16,7 @@
package com.aircraft.modules.system.domain;
import com.aircraft.base.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import cn.hutool.core.bean.BeanUtil;
import io.swagger.annotations.ApiModelProperty;
@ -48,12 +49,24 @@ public class EmEmployees extends BaseEntity {
@ApiModelProperty(value = "员工状态")
private String status;
@ApiModelProperty(value = "userid")
private Long userid;
@ApiModelProperty(value = "入职时间")
private Timestamp hireDate;
@ApiModelProperty(value = "飞行资质")
private String qualification;
@ApiModelProperty(value = "飞行资质附件")
private String qualificationAttachment;
@ApiModelProperty(value = "区域id")
private Long areaId;
@ApiModelProperty(value = "景区id")
private Long scenicId;
@ApiModelProperty(value = "密码")
private String password;
public void copy(EmEmployees source){
BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
}

View File

@ -73,9 +73,9 @@ public class User extends BaseEntity implements Serializable {
@ApiModelProperty(value = "用户昵称")
private String nickName;
@Email
@ApiModelProperty(value = "邮箱")
private String email;
// @Email
// @ApiModelProperty(value = "邮箱")
// private String email;
@NotBlank
@ApiModelProperty(value = "电话号码")
@ -109,12 +109,6 @@ public class User extends BaseEntity implements Serializable {
@ApiModelProperty(value = "景区id")
private Long scenicId;
@ApiModelProperty(value = "飞行资质")
private String qualification;
@ApiModelProperty(value = "飞行资质附件")
private String qualificationAttachment;
@TableField(exist = false)
@ApiModelProperty(value = "区域名称")
private String areaName;

View File

@ -14,8 +14,5 @@ public class EmEmployeesDetailVo extends EmEmployees {
@ApiModelProperty(value = "景区名称")
private String scenicName;
@ApiModelProperty(value = "用户性别")
private String gender;
}

View File

@ -182,19 +182,19 @@ public class UserController {
return new ResponseEntity<>(userService.updateAvatar(avatar), HttpStatus.OK);
}
@Log("修改邮箱")
@ApiOperation("修改邮箱")
@PostMapping(value = "/updateEmail/{code}")
public ResponseEntity<Object> updateUserEmail(@PathVariable String code, @RequestBody User resources) throws Exception {
String password = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,resources.getPassword());
User user = userService.findByName(SecurityUtils.getCurrentUsername());
if(!passwordEncoder.matches(password, user.getPassword())){
throw new BadRequestException("密码错误");
}
verificationCodeService.validated(CodeEnum.EMAIL_RESET_EMAIL_CODE.getKey() + resources.getEmail(), code);
userService.updateEmail(user.getUsername(),resources.getEmail());
return new ResponseEntity<>(HttpStatus.OK);
}
// @Log("修改邮箱")
// @ApiOperation("修改邮箱")
// @PostMapping(value = "/updateEmail/{code}")
// public ResponseEntity<Object> updateUserEmail(@PathVariable String code, @RequestBody User resources) throws Exception {
// String password = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,resources.getPassword());
// User user = userService.findByName(SecurityUtils.getCurrentUsername());
// if(!passwordEncoder.matches(password, user.getPassword())){
// throw new BadRequestException("密码错误");
// }
// verificationCodeService.validated(CodeEnum.EMAIL_RESET_EMAIL_CODE.getKey() + resources.getEmail(), code);
// userService.updateEmail(user.getUsername(),resources.getEmail());
// return new ResponseEntity<>(HttpStatus.OK);
// }
/**
* 如果当前用户的角色级别低于创建用户的角色级别则抛出权限不足的错误

View File

@ -51,53 +51,46 @@ public interface EmEmployeesService extends IService<EmEmployees> {
*/
List<EmEmployees> queryAll(EmEmployeesQueryCriteria criteria);
// /**
// * 创建
// * @param resources /
// */
// void create(EmEmployeesVo resources);
//
/**
* 创建
* @param resources /
*/
void create(EmEmployeesVo resources);
/**
* 编辑
* @param resources /
*/
void update(EmEmployeesVo resources);
//
// /**
// * 多选删除
// * @param ids /
// */
// void deleteAll(List<Long> ids);
//
// /**
// * 导出数据
// * @param all 待导出的数据
// * @param response /
// * @throws IOException /
// */
// void download(List<EmEmployees> all, HttpServletResponse response) throws IOException;
//
// /**
// * 分页查询
// * @param example
// * @param page
// * @return
// */
// PageResult<EmEmployeesDetailVo> page(EmEmployeesDetailVo example, Page page);
//
// /**
// * 获取景区下的用户
// * @param id
// * @return
// */
// List<EmEmployees> findByScenicId(Long id);
/**
* 根据userid查找用户
* 多选删除
* @param ids /
*/
void deleteAll(List<Long> ids);
/**
* 导出数据
* @param all 待导出的数据
* @param response /
* @throws IOException /
*/
void download(List<EmEmployees> all, HttpServletResponse response) throws IOException;
/**
* 分页查询
* @param example
* @param page
* @return
*/
PageResult<EmEmployeesDetailVo> page(EmEmployeesDetailVo example, Page page);
/**
* 获取景区下的用户
* @param id
* @return
*/
EmEmployees findByUserId(Long id);
List<EmEmployees> findByScenicId(Long id);
/**
* 查询详细信息

View File

@ -15,17 +15,15 @@
*/
package com.aircraft.modules.system.service.impl;
import com.aircraft.exception.EntityExistException;
import com.aircraft.base.BaseEntity;
import com.aircraft.modules.security.service.UserCacheManager;
import com.aircraft.modules.system.domain.EmEmployees;
import com.aircraft.modules.system.domain.vo.EmEmployeesDetailVo;
import com.aircraft.modules.system.domain.vo.EmEmployeesVo;
import com.aircraft.modules.system.domain.User;
import com.aircraft.modules.system.mapper.UserMapper;
import com.aircraft.modules.system.mapper.UserRoleMapper;
import com.aircraft.modules.system.service.EmAreaService;
import com.aircraft.modules.system.service.EmScenicService;
import com.aircraft.modules.system.service.UserService;
import com.aircraft.utils.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.RequiredArgsConstructor;
@ -35,8 +33,7 @@ import com.aircraft.modules.system.service.EmEmployeesService;
import com.aircraft.modules.system.domain.dto.EmEmployeesQueryCriteria;
import com.aircraft.modules.system.mapper.EmEmployeesMapper;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -59,6 +56,7 @@ public class EmEmployeesServiceImpl extends ServiceImpl<EmEmployeesMapper, EmEmp
private final UserMapper userMapper;
private final EmAreaService areaService;
private final EmScenicService scenicService;
private final PasswordEncoder passwordEncoder;
@Override
public PageResult<EmEmployees> queryAll(EmEmployeesQueryCriteria criteria, Page<Object> page){
@ -70,33 +68,24 @@ public class EmEmployeesServiceImpl extends ServiceImpl<EmEmployeesMapper, EmEmp
return emEmployeesMapper.findAll(criteria);
}
// @Override
// @Transactional(rollbackFor = Exception.class)
// public void create(EmEmployeesVo resources) {
// if (userMapper.findByUsername(resources.getUsername()) != null) {
// throw new EntityExistException(User.class, "username", resources.getUsername());
// }
// User user = new User();
// BeanUtils.copyProperties(resources, user);
// user.setNickName(resources.getName());
// user.setEnabled(true);
// userMapper.insert(user);
// // 保存用户角色
// userRoleMapper.insertData(user.getId(), resources.getRoles());
// EmEmployees emEmployees = new EmEmployees();
// BeanUtils.copyProperties(resources, emEmployees);
// emEmployees.setDelFlag(0);
// emEmployees.setStatus("1");
// emEmployees.setUserid(user.getId());
// emEmployeesMapper.insert(resources);
// }
//
@Override
@Transactional(rollbackFor = Exception.class)
public void create(EmEmployeesVo resources) {
EmEmployees emEmployees = new EmEmployees();
BeanUtils.copyProperties(resources, emEmployees);
emEmployees.setPassword(passwordEncoder.encode("123456"));
emEmployees.setDelFlag(0);
emEmployees.setStatus("1");
emEmployeesMapper.insert(resources);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(EmEmployeesVo resources) {
User user1 = userMapper.findByPhone(resources.getPhone());
EmEmployees emEmployees = getById(resources.getId());
emEmployees.copy(resources);
user1.setPassword(passwordEncoder.encode(resources.getPassword()));
user1.setPhone(resources.getPhone());
user1.setScenicId(resources.getScenicId());
user1.setAreaId(resources.getAreaId());
@ -123,76 +112,56 @@ public class EmEmployeesServiceImpl extends ServiceImpl<EmEmployeesMapper, EmEmp
private void flushCache(String username) {
userCacheManager.cleanUserCache(username);
}
//
// @Override
// @Transactional(rollbackFor = Exception.class)
// public void deleteAll(List<Long> ids) {
// Set<Long> userIds = new HashSet<>();
// for (Long id : ids) {
// EmEmployees emEmployees = getById(id);
// emEmployees.setDelFlag(1);
// emEmployeesMapper.updateById(emEmployees);
// // 清理缓存
// User user = userService.getById(emEmployees.getUserid());
// userService.delCaches(user.getId(), user.getUsername());
// userIds.add(emEmployees.getUserid());
// }
// userMapper.deleteBatchIds(ids);
// // 删除用户角色
// userRoleMapper.deleteByUserIds(userIds);
// }
//
// @Override
// public void download(List<EmEmployees> all, HttpServletResponse response) throws IOException {
// List<Map<String, Object>> list = new ArrayList<>();
// for (EmEmployees emEmployees : all) {
// Map<String,Object> map = new LinkedHashMap<>();
// map.put("姓名", emEmployees.getName());
// map.put("电话", emEmployees.getPhone());
// map.put("员工状态", emEmployees.getStatus());
// map.put("创建时间", emEmployees.getCreateTime());
// map.put("更新时间", emEmployees.getUpdateTime());
// map.put("userid", emEmployees.getUserid());
// list.add(map);
// }
// FileUtil.downloadExcel(list, response);
// }
//
// @Override
// public PageResult<EmEmployeesDetailVo> page(EmEmployeesDetailVo example, Page page) {
// page.setOptimizeCountSql(false);
// return PageUtil.toPage(this.baseMapper.findByExample(buildWrapper(example),page));
// }
//
// /**
// * 构建查询
// *
// * @param example
// * @return
// */
// private QueryWrapper<EmEmployeesDetailVo> buildWrapper(EmEmployeesDetailVo example) {
// String name = example.getName();
// QueryWrapper<EmEmployeesDetailVo> wrapper = new QueryWrapper<>();
// wrapper.lambda()
// .like(StringUtils.isNotEmpty(name), EmEmployees::getName, name);
// return wrapper;
// }
//
// @Override
// public List<EmEmployees> findByScenicId(Long areaId) {
// QueryWrapper<EmEmployees> wrapper = new QueryWrapper<>();
// wrapper.lambda()
// .eq(EmEmployees::getAreaId, areaId)
// .eq(EmEmployees::getDelFlag, 0);
// return super.list(wrapper);
// }
//
@Override
public EmEmployees findByUserId(Long id) {
@Transactional(rollbackFor = Exception.class)
public void deleteAll(List<Long> ids) {
this.removeByIds(ids);
}
@Override
public void download(List<EmEmployees> all, HttpServletResponse response) throws IOException {
List<Map<String, Object>> list = new ArrayList<>();
for (EmEmployees emEmployees : all) {
Map<String,Object> map = new LinkedHashMap<>();
map.put("姓名", emEmployees.getName());
map.put("电话", emEmployees.getPhone());
map.put("员工状态", emEmployees.getStatus());
map.put("创建时间", emEmployees.getCreateTime());
map.put("更新时间", emEmployees.getUpdateTime());
list.add(map);
}
FileUtil.downloadExcel(list, response);
}
@Override
public PageResult<EmEmployeesDetailVo> page(EmEmployeesDetailVo example, Page page) {
page.setOptimizeCountSql(false);
return PageUtil.toPage(this.baseMapper.findByExample(buildWrapper(example),page));
}
/**
* 构建查询
*
* @param example
* @return
*/
private QueryWrapper<EmEmployeesDetailVo> buildWrapper(EmEmployeesDetailVo example) {
String name = example.getName();
QueryWrapper<EmEmployeesDetailVo> wrapper = new QueryWrapper<>();
wrapper.lambda()
.like(StringUtils.isNotEmpty(name), EmEmployees::getName, name)
.eq(BaseEntity::getDelFlag,0);
return wrapper;
}
@Override
public List<EmEmployees> findByScenicId(Long areaId) {
QueryWrapper<EmEmployees> wrapper = new QueryWrapper<>();
wrapper.lambda()
.eq(EmEmployees::getUserid,id);
return this.baseMapper.selectOne(wrapper);
.eq(EmEmployees::getAreaId, areaId)
.eq(EmEmployees::getDelFlag, 0);
return super.list(wrapper);
}
@Override
@ -200,12 +169,10 @@ public class EmEmployeesServiceImpl extends ServiceImpl<EmEmployeesMapper, EmEmp
EmEmployeesDetailVo emEmployeesDetailVo = new EmEmployeesDetailVo();
EmEmployees emEmployees = getById(id);
BeanUtils.copyProperties(emEmployees, emEmployeesDetailVo);
User user = userMapper.findByPhone(emEmployees.getPhone());
emEmployeesDetailVo.setGender(user.getGender());
if (user.getAreaId()!=null){
emEmployeesDetailVo.setAreaName(areaService.findById(user.getAreaId()).getName());
if (user.getScenicId() != null) {
user.setScenicName(scenicService.findByAreaIdAndName(user.getScenicId(), user.getAreaName()).getName());
if (emEmployees.getAreaId()!=null){
emEmployeesDetailVo.setAreaName(areaService.findById(emEmployees.getAreaId()).getName());
if (emEmployees.getScenicId() != null) {
emEmployeesDetailVo.setScenicName(scenicService.findByAreaIdAndName(emEmployeesDetailVo.getScenicId(), emEmployeesDetailVo.getAreaName()).getName());
}
}
return emEmployeesDetailVo;

View File

@ -15,11 +15,9 @@
*/
package com.aircraft.modules.system.service.impl;
import com.aircraft.modules.system.domain.EmEmployees;
import com.aircraft.config.properties.RsaProperties;
import com.aircraft.modules.system.service.EmAreaService;
import com.aircraft.modules.system.service.EmEmployeesService;
import com.aircraft.modules.system.service.EmScenicService;
import com.aircraft.utils.enums.UserTypeEnum;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -33,13 +31,11 @@ import com.aircraft.modules.system.domain.Role;
import com.aircraft.modules.system.domain.User;
import com.aircraft.exception.EntityExistException;
import com.aircraft.modules.system.domain.dto.UserQueryCriteria;
import com.aircraft.modules.system.mapper.UserJobMapper;
import com.aircraft.modules.system.mapper.UserMapper;
import com.aircraft.modules.system.mapper.UserRoleMapper;
import com.aircraft.modules.system.service.UserService;
import com.aircraft.utils.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
@ -60,7 +56,7 @@ import java.util.stream.Collectors;
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
private final UserMapper userMapper;
private final UserJobMapper userJobMapper;
private final PasswordEncoder passwordEncoder;
private final UserRoleMapper userRoleMapper;
private final FileProperties properties;
private final RedisUtils redisUtils;
@ -68,22 +64,11 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
private final OnlineUserService onlineUserService;
private final EmAreaService areaService;
private final EmScenicService scenicService;
@Lazy
@Autowired
private final EmEmployeesService employeesService;
@Override
public PageResult<User> queryAll(UserQueryCriteria criteria, Page<Object> page) {
criteria.setOffset(page.offset());
List<User> users = userMapper.findAll(criteria);
for (User user : users) {
if (user.getAreaId() != null) {
user.setAreaName(areaService.findById(user.getAreaId()).getName());
}
if (user.getScenicId() != null) {
user.setScenicName(scenicService.getById(user.getScenicId()).getName());
}
}
Long total = userMapper.countAll(criteria);
return PageUtil.toPage(users, total);
}
@ -121,14 +106,9 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
throw new EntityExistException(User.class, "phone", resources.getPhone());
}
save(resources);
if (Objects.equals(UserTypeEnum.getByValue(resources.getUserType()), UserTypeEnum.EMPLOYEES)) {
EmEmployees emEmployees = new EmEmployees();
emEmployees.setDelFlag(0);
emEmployees.setPhone(resources.getPhone());
emEmployees.setName(resources.getNickName());
emEmployees.setUserid(resources.getId());
employeesService.save(emEmployees);
}
// if (Objects.equals(UserTypeEnum.getByValue(resources.getUserType()), UserTypeEnum.EMPLOYEES)) {
// EmEmployees emEmployees = new EmEmployees();
// }
// 保存用户角色
userRoleMapper.insertData(resources.getId(), resources.getRoles());
}
@ -156,8 +136,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
if(!resources.getEnabled()){
onlineUserService.kickOutForUsername(resources.getUsername());
}
user.setQualification(resources.getQualification());
user.setQualificationAttachment(resources.getQualificationAttachment());
user.setPassword(passwordEncoder.encode(RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,resources.getPassword())));
user.setUsername(resources.getUsername());
user.setScenicId(resources.getScenicId());
user.setEnabled(resources.getEnabled());
@ -168,12 +147,6 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
user.setNickName(resources.getNickName());
user.setGender(resources.getGender());
saveOrUpdate(user);
if (Objects.equals(UserTypeEnum.getByValue(resources.getUserType()), UserTypeEnum.EMPLOYEES)) {
EmEmployees emEmployees = employeesService.findByUserId(resources.getId());
emEmployees.setPhone(resources.getPhone());
emEmployees.setName(resources.getNickName());
employeesService.saveOrUpdate(emEmployees);
}
// 清除缓存
delCaches(user.getId(), user.getUsername());
// 更新用户角色
@ -203,10 +176,6 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
for (Long id : ids) {
// 清理缓存
User user = getById(id);
if (Objects.equals(UserTypeEnum.getByValue(user.getUserType()), UserTypeEnum.EMPLOYEES)) {
EmEmployees emEmployees = employeesService.findByUserId(id);
employeesService.removeById(emEmployees.getId());
}
delCaches(user.getId(), user.getUsername());
}
userMapper.deleteBatchIds(ids);
@ -290,7 +259,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
map.put("角色", roles);
map.put("部门", user.getDept().getName());
map.put("岗位", user.getJobs().stream().map(Job::getName).collect(Collectors.toList()));
map.put("邮箱", user.getEmail());
// map.put("邮箱", user.getEmail());
map.put("状态", user.getEnabled() ? "启用" : "禁用");
map.put("手机号码", user.getPhone());
map.put("修改密码的时间", user.getPwdResetTime());

View File

@ -42,8 +42,6 @@
SELECT id,
name,
phone,
gender,
department_id,
status,
create_time,
update_time,
@ -53,13 +51,11 @@
qualification_attachment,
areaName,
scenicName,
roleName,
username
username,
del_flag
FROM (SELECT em_employees.id as id,
em_employees.name as name,
em_employees.phone as phone,
em_employees.gender as gender,
em_employees.department_id as department_id,
em_employees.status as status,
em_employees.create_time as create_time,
em_employees.update_time as update_time,
@ -69,14 +65,10 @@
em_employees.qualification_attachment as qualification_attachment,
em_area.name as areaName,
em_scenic.name as scenicName,
sys_user.username as username,
sys_role.name as roleName
em_employees.username as username,
em_employees.del_flag as del_flag
FROM em_employees
LEFT JOIN em_area
ON em_area.id = em_employees.area_id
left join sys_user on sys_user.user_id = em_employees.user_id
left join sys_users_roles on sys_users_roles.user_id = em_employees.user_id
left join sys_role on sys_users_roles.role_id = sys_role.role_id
LEFT JOIN em_area ON em_area.id = em_employees.area_id
left join em_scenic on em_scenic.id = em_employees.scenic_id) t
${ew.customSqlSegment}
</select>

View File

@ -7,7 +7,7 @@
<result column="user_type" property="userType"/>
<result column="user_username" property="username"/>
<result column="user_nick_name" property="nickName"/>
<result column="user_email" property="email"/>
<!-- <result column="user_email" property="email"/>-->
<result column="user_phone" property="phone"/>
<result column="user_gender" property="gender"/>
<result column="user_avatar_name" property="avatarName"/>
@ -22,8 +22,8 @@
<result column="user_update_time" property="updateTime"/>
<result column="user_area_id" property="areaId"/>
<result column="user_scenic_id" property="scenicId"/>
<result column="user_qualification" property="qualification"/>
<result column="user_qualification_attachment" property="qualificationAttachment"/>
<result column="area_name" property="areaName"/>
<result column="scenic_name" property="scenicName"/>
<association property="dept" javaType="com.aircraft.modules.system.domain.Dept">
<id column="dept_id" property="id"/>
<result column="dept_name" property="name"/>
@ -41,19 +41,23 @@
</resultMap>
<sql id="Base_Column_List">
u.user_id as user_user_id,u.user_type as user_type, u.dept_id as user_dept_id, u.username as user_username,
u.nick_name as user_nick_name, u.email as user_email, u.phone as user_phone,
u.gender as user_gender, u.avatar_name as user_avatar_name, u.avatar_path as user_avatar_path,
u.enabled as user_enabled, u.pwd_reset_time as user_pwd_reset_time, u.create_by as user_create_by,
u.update_by as user_update_by, u.create_time as user_create_time, u.update_time as user_update_time,
u.area_id as user_area_id, u.scenic_id as user_scenic_id,
u.qualification as user_qualification, u.qualification_attachment as user_qualification_attachment
u.user_id as user_user_id, u.user_type as user_type, u.dept_id as user_dept_id, u.username as user_username,
u.nick_name as user_nick_name, u.email as user_email, u.phone as user_phone,
u.gender as user_gender, u.avatar_name as user_avatar_name, u.avatar_path as user_avatar_path,
u.enabled as user_enabled, u.pwd_reset_time as user_pwd_reset_time, u.create_by as user_create_by,
u.update_by as user_update_by, u.create_time as user_create_time, u.update_time as user_update_time,
u.area_id as user_area_id, u.scenic_id as user_scenic_id
</sql>
<sql id="Job_Column_List">
j.job_id as job_id, j.name as job_name
</sql>
<sql id="Area_Column_List">
a.name as area_name
</sql>
<sql id="Scenic_Column_List">
s.name as scenic_name
</sql>
<sql id="Role_Column_List">
r.role_id as role_id, r.name as role_name, r.level as role_level, r.data_scope as role_data_scope
</sql>
@ -82,6 +86,8 @@
<select id="findAll" resultMap="BaseResultMap">
select u.*,
<include refid="Area_Column_List"/>,
<include refid="Scenic_Column_List"/>,
<include refid="Role_Column_List"/>
from (
select
@ -95,6 +101,8 @@
) u
left join sys_users_roles sur on u.user_user_id = sur.user_id
left join sys_role r on sur.role_id = r.role_id
left join em_area a on u.user_area_id = a.id
left join em_scenic s on u.user_scenic_id = s.id
order by u.user_user_id desc
</select>