飞行员信息查询与修改

This commit is contained in:
lihongbiao 2025-07-17 17:05:15 +08:00
parent f6f591a870
commit eedc56e346
8 changed files with 112 additions and 52 deletions

View File

@ -8,6 +8,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
@ -20,7 +21,7 @@ import java.time.LocalDateTime;
*/
@Data
@TableName("cp_label")
public class CpLabel {
public class CpLabel implements Serializable {
private static final long serialVersionUID = 1L;

View File

@ -28,6 +28,7 @@ import com.aircraft.modules.security.service.UserDetailsServiceImpl;
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.EmScenic;
import com.aircraft.modules.system.domain.vo.EmEmployeesDetailVo;
import com.aircraft.modules.system.domain.vo.EmEmployeesVo;
import com.aircraft.modules.system.service.EmEmployeesService;
@ -74,7 +75,7 @@ public class EmEmployeesController {
private final LoginProperties loginProperties;
private final PasswordEncoder passwordEncoder;
private final UserDetailsServiceImpl userDetailsService;
// private final EmEmployeesService emEmployeesService;
private final EmEmployeesService emEmployeesService;
// @ApiOperation("导出数据")
// @GetMapping(value = "/download")
@ -100,14 +101,26 @@ public class EmEmployeesController {
// return new ResponseEntity<>(HttpStatus.CREATED);
// }
//
// @PutMapping
// @Log("修改员工管理")
// @ApiOperation("修改员工管理")
// @PreAuthorize("@el.check('emEmployees:edit')")
// public ResponseEntity<Object> updateEmEmployees(@Validated @RequestBody EmEmployeesVo resources){
// emEmployeesService.update(resources);
// return new ResponseEntity<>(HttpStatus.NO_CONTENT);
// }
@PutMapping
@Log("设置个人信息")
@ApiOperation("设置个人信息")
public ResponseEntity<Object> updateEmEmployees(@Validated @RequestBody EmEmployeesVo resources){
emEmployeesService.update(resources);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@Log("查询详细信息")
@ApiOperation(value = "查询详细信息")
@RequestMapping(value = "{id}", method = {RequestMethod.GET})
@ApiImplicitParam(name = "id", value = "飞行员id", required = true, paramType = "path")
public ResponseEntity<Object> one(@PathVariable final Integer id) {
try {
EmEmployeesDetailVo entity = emEmployeesService.findById(id);
return new ResponseEntity<>(entity,HttpStatus.OK);
} catch (Exception e) {
throw new RuntimeException("查询详细信息失败");
}
}
//
// @DeleteMapping
// @Log("删除员工管理")

View File

@ -51,6 +51,9 @@ public class EmEmployees extends BaseEntity {
@ApiModelProperty(value = "userid")
private Long userid;
@ApiModelProperty(value = "入职时间")
private Timestamp hireDate;
public void copy(EmEmployees source){
BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
}

View File

@ -8,15 +8,14 @@ import lombok.Data;
@Data
public class EmEmployeesDetailVo extends EmEmployees {
@ApiModelProperty(value = "账号")
private String username;
@ApiModelProperty(value = "区域名称")
private String areaName;
@ApiModelProperty(value = "景区名称")
private String scenicName;
@ApiModelProperty(value = "角色名称")
private String roleName;
@ApiModelProperty(value = "用户性别")
private String gender;
}

View File

@ -11,13 +11,16 @@ import java.util.Set;
@Data
public class EmEmployeesVo extends EmEmployees {
@ApiModelProperty(value = "用户账号")
private String username;
@ApiModelProperty(value = "登录密码")
private String password;
@TableField(exist = false)
@ApiModelProperty(value = "用户角色")
private Set<Role> roles;
@ApiModelProperty(value = "性别")
private String gender;
@ApiModelProperty(value = "区域id")
private Long areaId;
@ApiModelProperty(value = "景区id")
private Long scenicId;
}

View File

@ -57,11 +57,11 @@ public interface EmEmployeesService extends IService<EmEmployees> {
// */
// void create(EmEmployeesVo resources);
//
// /**
// * 编辑
// * @param resources /
// */
// void update(EmEmployeesVo resources);
/**
* 编辑
* @param resources /
*/
void update(EmEmployeesVo resources);
//
// /**
// * 多选删除
@ -98,4 +98,11 @@ public interface EmEmployeesService extends IService<EmEmployees> {
* @return
*/
EmEmployees findByUserId(Long id);
/**
* 查询详细信息
* @param id
* @return
*/
EmEmployeesDetailVo findById(Integer id);
}

View File

@ -16,12 +16,15 @@
package com.aircraft.modules.system.service.impl;
import com.aircraft.exception.EntityExistException;
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;
@ -51,6 +54,11 @@ import javax.servlet.http.HttpServletResponse;
public class EmEmployeesServiceImpl extends ServiceImpl<EmEmployeesMapper, EmEmployees> implements EmEmployeesService {
private final EmEmployeesMapper emEmployeesMapper;
private final RedisUtils redisUtils;
private final UserCacheManager userCacheManager;
private final UserMapper userMapper;
private final EmAreaService areaService;
private final EmScenicService scenicService;
@Override
public PageResult<EmEmployees> queryAll(EmEmployeesQueryCriteria criteria, Page<Object> page){
@ -83,32 +91,38 @@ public class EmEmployeesServiceImpl extends ServiceImpl<EmEmployeesMapper, EmEmp
// emEmployeesMapper.insert(resources);
// }
//
// @Override
// @Transactional(rollbackFor = Exception.class)
// public void update(EmEmployeesVo resources) {
// User user1 = userMapper.findByUsername(resources.getUsername());
// EmEmployees emEmployees = getById(resources.getId());
// emEmployees.copy(resources);
// // 如果用户的角色改变
// if (!resources.getRoles().equals(resources.getRoles())) {
// redisUtils.del(CacheKey.DATA_USER + resources.getId());
// redisUtils.del(CacheKey.MENU_USER + resources.getId());
// redisUtils.del(CacheKey.ROLE_AUTH + resources.getId());
// redisUtils.del(CacheKey.ROLE_USER + resources.getId());
// }
// user1.setUsername(resources.getUsername());
// user1.setRoles(resources.getRoles());
// user1.setPhone(resources.getPhone());
// user1.setNickName(resources.getName());
// user1.setGender(resources.getGender());
// userMapper.updateById(user1);
// // 清除缓存
// userService.delCaches(user1.getId(), user1.getUsername());
// emEmployeesMapper.updateById(emEmployees);
// // 更新用户角色
// userRoleMapper.deleteByUserId(resources.getId());
// userRoleMapper.insertData(resources.getId(), resources.getRoles());
// }
@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.setPhone(resources.getPhone());
user1.setScenicId(resources.getScenicId());
user1.setAreaId(resources.getAreaId());
user1.setNickName(resources.getName());
userMapper.updateById(user1);
emEmployeesMapper.updateById(emEmployees);
}
/**
* 清理缓存
*
* @param id /
*/
public void delCaches(Long id, String username) {
redisUtils.del(CacheKey.USER_ID + id);
flushCache(username);
}
/**
* 清理 登陆时 用户缓存信息
*
* @param username /
*/
private void flushCache(String username) {
userCacheManager.cleanUserCache(username);
}
//
// @Override
// @Transactional(rollbackFor = Exception.class)
@ -181,4 +195,20 @@ public class EmEmployeesServiceImpl extends ServiceImpl<EmEmployeesMapper, EmEmp
return this.baseMapper.selectOne(wrapper);
}
@Override
public EmEmployeesDetailVo findById(Integer id) {
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());
}
}
return emEmployeesDetailVo;
}
}

View File

@ -38,6 +38,8 @@ 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.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
@ -66,6 +68,8 @@ 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