新增账号删除账号禁用接口

This commit is contained in:
dzl 2025-05-13 17:39:31 +08:00
parent e15bf17422
commit 3917e25642
2 changed files with 84 additions and 70 deletions

View File

@ -56,6 +56,9 @@ public class AuthController {
if (staff == null) {
return JsonResult.failed(Message.USERNAME_WRONG);
}
if ("0".equals(staff.getState())) {
return JsonResult.failed("该账号已禁用!");
}
String password = staff.getPassword();
String encrypt = AESUtils.encrypt(loginVo.getPassword());
if (password.equals(encrypt)) {

View File

@ -64,8 +64,7 @@ public class StaffController {
*/
@PostMapping("save")
public JsonResult<?> save(@RequestBody Staff staff) {
QueryWrapper queryWrapper = QueryWrapper.create()
.where(STAFF.PHONE.eq(staff.getPhone()));
QueryWrapper queryWrapper = QueryWrapper.create().where(STAFF.PHONE.eq(staff.getPhone()));
Staff one = staffService.getOne(queryWrapper);
if (one != null) {
return JsonResult.success(Message.REPEAT_PHONE);
@ -142,8 +141,7 @@ public class StaffController {
@GetMapping("getInfoByToken")
public JsonResult<?> getInfo(@RequestParam("token") String token) {
Object loginId = StpUtil.getLoginIdByToken(token);
QueryWrapper queryWrapper = QueryWrapper.create()
.where(STAFF.STAFF_ID.eq(loginId));
QueryWrapper queryWrapper = QueryWrapper.create().where(STAFF.STAFF_ID.eq(loginId));
StaffDto staff = staffService.getOneAs(queryWrapper, StaffDto.class);
return JsonResult.success(staff);
}
@ -156,8 +154,7 @@ public class StaffController {
*/
@PostMapping("getStaffsByIds")
public JsonResult<?> getStaffsByIds(@RequestBody @Validated StaffIds staffIds) {
QueryWrapper queryWrapper = QueryWrapper.create()
.where(STAFF.STAFF_ID.in(staffIds.getStaffIds()));
QueryWrapper queryWrapper = QueryWrapper.create().where(STAFF.STAFF_ID.in(staffIds.getStaffIds()));
List<StaffDto> staffDtos = staffService.listAs(queryWrapper, StaffDto.class);
return JsonResult.success(staffDtos);
}
@ -172,9 +169,7 @@ public class StaffController {
public JsonResult<?> getStaffsByIds(@Validated PageParam pageParam, @RequestParam("token") String token) {
String id = (String) StpUtil.getLoginIdByToken(token);
StaffDto staffDto = (StaffDto) StpUtil.getSessionByLoginId(id).get(id);
QueryWrapper queryWrapper = QueryWrapper.create()
.where(STAFF.ORG_ID.eq(staffDto.getOrgId()))
.where(STAFF.STAFF_ID.ne(staffDto.getStaffId()));
QueryWrapper queryWrapper = QueryWrapper.create().where(STAFF.ORG_ID.eq(staffDto.getOrgId())).where(STAFF.STAFF_ID.ne(staffDto.getStaffId()));
Page<StaffDto> staffDtos = staffService.pageAs(pageParam.getPage(), queryWrapper, StaffDto.class);
return JsonResult.success(staffDtos);
}
@ -194,29 +189,9 @@ public class StaffController {
QueryWrapper queryStaff = QueryWrapper.create().where(STAFF.STAFF_ID.eq(loginId));
StaffDto staff = staffService.getOneAs(queryStaff, StaffDto.class);
QueryWrapper queryZone = QueryWrapper.create()
.select(QueryMethods.groupConcat(STAFF_ZONE.ZONE_NAME).as("zone_name"),
QueryMethods.groupConcat(STAFF_ZONE.ZONE_ID).as("zone_id"),
STAFF_ZONE.STAFF_ID)
.from(STAFF_ZONE)
.groupBy(STAFF_ZONE.STAFF_ID);
QueryWrapper queryZone = QueryWrapper.create().select(QueryMethods.groupConcat(STAFF_ZONE.ZONE_NAME).as("zone_name"), QueryMethods.groupConcat(STAFF_ZONE.ZONE_ID).as("zone_id"), STAFF_ZONE.STAFF_ID).from(STAFF_ZONE).groupBy(STAFF_ZONE.STAFF_ID);
QueryWrapper queryWrapper = QueryWrapper.create()
.select(STAFF.STAFF_ID, STAFF.ORG_ID, STAFF.USERNAME, STAFF.PHONE, STAFF.STATE,
QueryMethods.groupConcat(ROLES.ROLE_NAME).as("role_name"),
QueryMethods.groupConcat(ROLES.ROLE_ID).as("role_id"),
STAFF.CREATED_AT)
.select(STAFF_ZONE.ZONE_NAME.getName(), STAFF_ZONE.ZONE_ID.getName())
.leftJoin(STAFF_ROLES).on(STAFF.STAFF_ID.eq(STAFF_ROLES.STAFF_ID))
.leftJoin(ROLES).on(STAFF_ROLES.ROLE_ID.eq(ROLES.ROLE_ID))
.leftJoin(queryZone).as("STAFF_ZONE").on(STAFF.STAFF_ID
.eq(new QueryColumn("STAFF_ZONE", "staff_id")))
.where(STAFF.ORG_ID.eq(staff.getOrgId()))
.and(STAFF.USERNAME.eq(accountListQueryDto.getAccountName(),
StringUtils.hasText(accountListQueryDto.getAccountName())))
.and(STAFF.PHONE.eq(accountListQueryDto.getAccount(),
StringUtils.hasText(accountListQueryDto.getAccount())))
.groupBy(STAFF.STAFF_ID).orderBy(STAFF.CREATED_AT.desc());
QueryWrapper queryWrapper = QueryWrapper.create().select(STAFF.STAFF_ID, STAFF.ORG_ID, STAFF.USERNAME, STAFF.PHONE, STAFF.STATE, QueryMethods.groupConcat(ROLES.ROLE_NAME).as("role_name"), QueryMethods.groupConcat(ROLES.ROLE_ID).as("role_id"), STAFF.CREATED_AT).select(STAFF_ZONE.ZONE_NAME.getName(), STAFF_ZONE.ZONE_ID.getName()).leftJoin(STAFF_ROLES).on(STAFF.STAFF_ID.eq(STAFF_ROLES.STAFF_ID)).leftJoin(ROLES).on(STAFF_ROLES.ROLE_ID.eq(ROLES.ROLE_ID)).leftJoin(queryZone).as("STAFF_ZONE").on(STAFF.STAFF_ID.eq(new QueryColumn("STAFF_ZONE", "staff_id"))).where(STAFF.ORG_ID.eq(staff.getOrgId())).and(STAFF.USERNAME.eq(accountListQueryDto.getAccountName(), StringUtils.hasText(accountListQueryDto.getAccountName()))).and(STAFF.PHONE.eq(accountListQueryDto.getAccount(), StringUtils.hasText(accountListQueryDto.getAccount()))).groupBy(STAFF.STAFF_ID).orderBy(STAFF.CREATED_AT.desc());
Page<ResStaffDto> page = Page.of(accountListQueryDto.getPageNum(), accountListQueryDto.getPageSize());
Page<ResStaffDto> resRolesDtoPage = staffService.pageAs(page, queryWrapper, ResStaffDto.class);
return JsonResult.success(resRolesDtoPage);
@ -247,28 +222,24 @@ public class StaffController {
staff.setPassword(encrypt);
staffService.save(staff);
JSONArray roleId = staffDto.getRoleId();
List<StaffRoles> roleList = IntStream.range(0, roleId.size())
.mapToObj(i -> {
List<StaffRoles> roleList = IntStream.range(0, roleId.size()).mapToObj(i -> {
StaffRoles staffRoles = new StaffRoles();
staffRoles.setRoleId(Long.parseLong(roleId.get(i).toString()));
staffRoles.setStaffId(staff.getStaffId());
return staffRoles;
})
.collect(Collectors.toList());
}).collect(Collectors.toList());
if (!roleList.isEmpty()) {
staffRolesService.saveBatch(roleList);
}
JSONArray zoneId = staffDto.getZoneId();
List<StaffZone> zoneList = IntStream.range(0, zoneId.size())
.mapToObj(i -> {
List<StaffZone> zoneList = IntStream.range(0, zoneId.size()).mapToObj(i -> {
StaffZone staffRoles = new StaffZone();
JSONObject jsonObject = zoneId.getJSONObject(i);
staffRoles.setZoneId(jsonObject.getLong("zoneId"));
staffRoles.setZoneName(jsonObject.getString("zoneName"));
staffRoles.setStaffId(staff.getStaffId());
return staffRoles;
})
.collect(Collectors.toList());
}).collect(Collectors.toList());
if (!zoneList.isEmpty()) {
staffZoneService.saveBatch(zoneList);
}
@ -293,35 +264,30 @@ public class StaffController {
Staff staff = new Staff();
BeanUtils.copyProperties(staffDto, staff);
staffService.updateById(staff);
QueryWrapper queryWrapper = QueryWrapper.create()
.eq(STAFF_ROLES.STAFF_ID.getName(), staff.getStaffId());
QueryWrapper queryWrapper = QueryWrapper.create().eq(STAFF_ROLES.STAFF_ID.getName(), staff.getStaffId());
staffRolesService.remove(queryWrapper);
queryWrapper.clear();
queryWrapper.eq(STAFF_ZONE.STAFF_ID.getName(), staff.getStaffId());
staffZoneService.remove(queryWrapper);
JSONArray roleId = staffDto.getRoleId();
List<StaffRoles> roleList = IntStream.range(0, roleId.size())
.mapToObj(i -> {
List<StaffRoles> roleList = IntStream.range(0, roleId.size()).mapToObj(i -> {
StaffRoles staffRoles = new StaffRoles();
staffRoles.setRoleId(Long.parseLong(roleId.get(i).toString()));
staffRoles.setStaffId(staff.getStaffId());
return staffRoles;
})
.collect(Collectors.toList());
}).collect(Collectors.toList());
if (!roleList.isEmpty()) {
staffRolesService.saveBatch(roleList);
}
JSONArray zoneId = staffDto.getZoneId();
List<StaffZone> zoneList = IntStream.range(0, zoneId.size())
.mapToObj(i -> {
List<StaffZone> zoneList = IntStream.range(0, zoneId.size()).mapToObj(i -> {
StaffZone staffRoles = new StaffZone();
JSONObject jsonObject = zoneId.getJSONObject(i);
staffRoles.setZoneId(jsonObject.getLong("zoneId"));
staffRoles.setZoneName(jsonObject.getString("zoneName"));
staffRoles.setStaffId(staff.getStaffId());
return staffRoles;
})
.collect(Collectors.toList());
}).collect(Collectors.toList());
if (!zoneList.isEmpty()) {
staffZoneService.saveBatch(zoneList);
}
@ -332,4 +298,49 @@ public class StaffController {
}
}
/**
* 账号信息删除
*
* @param staffId
* @return
*/
@Transactional
@GetMapping("staffInfoDel/{staffId}")
public JsonResult<?> staffInfoDel(@PathVariable("staffId") Long staffId) {
try {
QueryWrapper queryWrapper = QueryWrapper.create()
.eq(STAFF_ROLES.STAFF_ID.getName(), staffId);
staffRolesService.remove(queryWrapper);
queryWrapper.clear();
queryWrapper.eq(STAFF_ZONE.STAFF_ID.getName(), staffId);
staffZoneService.remove(queryWrapper);
staffService.removeById(staffId);
return JsonResult.success("删除成功!");
} catch (Exception e) {
e.printStackTrace();
return JsonResult.failed("删除失败!");
}
}
/**
* 账号信息禁用
*
* @param staffId
* @return
*/
@Transactional
@GetMapping("staffInfoDisable/{staffId}")
public JsonResult<?> staffInfoDisable(@PathVariable("staffId") Long staffId) {
try {
Staff staff = staffService.getById(staffId);
staff.setState("0");
staffService.updateById(staff);
return JsonResult.success("禁用成功!");
} catch (Exception e) {
e.printStackTrace();
return JsonResult.failed("禁用失败!");
}
}
}