This commit is contained in:
hucs
2024-06-14 15:18:43 +08:00
parent b5ba08a359
commit 3a0fe6ec3f
7 changed files with 144 additions and 13 deletions

View File

@@ -2,6 +2,7 @@ package com.starry.admin.modules.system.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.starry.admin.common.component.JwtToken;
import com.starry.admin.common.domain.LoginUser;
import com.starry.admin.common.oss.service.IOssFileService;
@@ -9,8 +10,7 @@ import com.starry.admin.modules.system.entity.SysRoleEntity;
import com.starry.admin.modules.system.entity.SysUserEntity;
import com.starry.admin.modules.system.service.SysRoleService;
import com.starry.admin.modules.system.service.SysUserService;
import com.starry.admin.modules.system.vo.UserAddParam;
import com.starry.admin.modules.system.vo.UserQueryVo;
import com.starry.admin.modules.system.vo.*;
import com.starry.admin.utils.SecurityUtils;
import com.starry.common.annotation.Log;
import com.starry.common.constant.UserConstants;
@@ -69,6 +69,18 @@ public class SysUserController {
return R.ok(page);
}
@ApiOperation(value = "分页用户列表")
@GetMapping(value = "/list-page/v1")
public R listPageV1(UserQueryVo queryVo) {
IPage<SysUserEntity> page = userService.listMemberPage(queryVo);
List<SysUserEntity> records = page.getRecords();
List<SysUserEntityListVo> list = userService.generatePageData(records);
IPage<SysUserEntityListVo> result = new Page<>();
result.setTotal(page.getTotal());
result.setRecords(list);
return R.ok(result);
}
@ApiOperation(value = "添加用户")
@PostMapping(value = "add")
public R add(@RequestBody SysUserEntity user) {
@@ -100,6 +112,20 @@ public class SysUserController {
return R.error("修改失败");
}
@ApiOperation(value = "修改用户密码")
@PostMapping(value = "/update/password")
public R updatePassword(@Valid @RequestBody UpdateUserPasswordParam param) {
userService.updatePassword(param);
return R.ok();
}
@ApiOperation(value = "修改用户手机号")
@PostMapping(value = "/update/mobile")
public R updateMobile(@Valid @RequestBody UpdateUserMobileParam param) {
userService.updateMobile(param);
return R.ok();
}
@ApiOperation(value = "删除用户")
@PostMapping(value = "/delete/{id}")
public R delete(@PathVariable("id") String id) {

View File

@@ -3,10 +3,7 @@ package com.starry.admin.modules.system.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.starry.admin.modules.system.entity.SysUserEntity;
import com.starry.admin.modules.system.vo.RoleUserResultVo;
import com.starry.admin.modules.system.vo.SysUserQueryVo;
import com.starry.admin.modules.system.vo.UserAddParam;
import com.starry.admin.modules.system.vo.UserQueryVo;
import com.starry.admin.modules.system.vo.*;
import java.util.List;
@@ -126,4 +123,10 @@ public interface SysUserService extends IService<SysUserEntity> {
IPage<RoleUserResultVo> selectUnallocatedList(SysUserQueryVo user);
boolean addV1(UserAddParam param);
List<SysUserEntityListVo> generatePageData(List<SysUserEntity> records);
void updatePassword(UpdateUserPasswordParam param);
void updateMobile(UpdateUserMobileParam param);
}

View File

@@ -16,10 +16,7 @@ import com.starry.admin.modules.system.mapper.SysRoleMapper;
import com.starry.admin.modules.system.mapper.SysUserMapper;
import com.starry.admin.modules.system.service.SysUserRoleService;
import com.starry.admin.modules.system.service.SysUserService;
import com.starry.admin.modules.system.vo.RoleUserResultVo;
import com.starry.admin.modules.system.vo.SysUserQueryVo;
import com.starry.admin.modules.system.vo.UserAddParam;
import com.starry.admin.modules.system.vo.UserQueryVo;
import com.starry.admin.modules.system.vo.*;
import com.starry.admin.utils.SecurityUtils;
import com.starry.common.annotation.DataScope;
import com.starry.common.constant.UserConstants;
@@ -33,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@@ -231,12 +229,47 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
throw new RuntimeException("该店员已经成为员工了,无法再次添加~");
}
PlayClerkUserInfoEntity clerk = clerkUserInfoService.selectById(param.getClerkId());
SysUserEntity user = new SysUserEntity().setClerkId(param.getClerkId()).setMobile(param.getMobile()).setPassWord(SecurityUtils.encryptPassword(param.getMobile()))
.setUserCode(param.getMobile()).setUserNickname(clerk.getNickname()).setRealName(clerk.getNickname());
SysUserEntity user = new SysUserEntity().setClerkId(param.getClerkId()).setMobile(param.getMobile()).setPassWord(SecurityUtils.encryptPassword(param.getMobile())).setUserCode(param.getMobile()).setUserNickname(clerk.getNickname()).setRealName(clerk.getNickname());
user.setUserId(IdUtils.getUuid());
user.setSuperAdmin(false);
this.save(user);
clerkUserInfoService.update(null, Wrappers.lambdaUpdate(PlayClerkUserInfoEntity.class).eq(PlayClerkUserInfoEntity::getId, param.getClerkId()).set(PlayClerkUserInfoEntity::getPlayUserId, user.getUserId()));
return true;
}
@Override
public List<SysUserEntityListVo> generatePageData(List<SysUserEntity> records) {
return records.stream().map(ca -> {
SysUserEntityListVo vo = new SysUserEntityListVo();
BeanUtils.copyProperties(ca, vo);
if (StringUtils.isNotEmpty(ca.getClerkId())) {
vo.setClerkUserInfo(clerkUserInfoService.selectById(ca.getClerkId()));
}
SysUserEntityListVo.RoleVo roleVo = new SysUserEntityListVo.RoleVo();
roleVo.setRoleName("客服");
roleVo.setRoleUserName("张三");
SysUserEntityListVo.RoleVo roleVo2 = new SysUserEntityListVo.RoleVo();
roleVo2.setRoleName("管理员");
roleVo2.setRoleUserName("李四");
vo.setRoleVoList(Arrays.asList(roleVo, roleVo2));
return vo;
}).collect(Collectors.toList());
}
@Override
public void updatePassword(UpdateUserPasswordParam param) {
selectUserById(param.getUserId());
this.update(Wrappers.lambdaUpdate(SysUserEntity.class).eq(SysUserEntity::getUserId, param.getUserId()).set(SysUserEntity::getPassWord, SecurityUtils.encryptPassword(param.getPassword())));
}
@Override
public void updateMobile(UpdateUserMobileParam param) {
SysUserEntity user = selectUserById(param.getUserId());
if (user.getMobile().equals(param.getMobile())) {
throw new RuntimeException("新旧手机号不能相同~");
}
this.update(Wrappers.lambdaUpdate(SysUserEntity.class).eq(SysUserEntity::getUserId, param.getUserId()).set(SysUserEntity::getMobile, param.getMobile()));
}
}

View File

@@ -0,0 +1,33 @@
package com.starry.admin.modules.system.vo;
import com.starry.admin.modules.clerk.module.entity.PlayClerkUserInfoEntity;
import com.starry.admin.modules.system.entity.SysUserEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* @Author: huchuansai
* @Date: 2024/6/14 2:49 PM
* @Description:
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class SysUserEntityListVo extends SysUserEntity {
private List<RoleVo> roleVoList;
private PlayClerkUserInfoEntity clerkUserInfo;
@Data
public static class RoleVo {
private String roleName;
private String roleUserName;
}
}

View File

@@ -0,0 +1,19 @@
package com.starry.admin.modules.system.vo;
import lombok.Data;
/**
* @Author: huchuansai
* @Date: 2024/6/14 3:05 PM
* @Description:
*/
@Data
public class UpdateUserMobileParam {
private String userId;
private String mobile;
private String smsCode;
}

View File

@@ -0,0 +1,17 @@
package com.starry.admin.modules.system.vo;
import lombok.Data;
/**
* @Author: huchuansai
* @Date: 2024/6/14 3:05 PM
* @Description:
*/
@Data
public class UpdateUserPasswordParam {
private String userId;
private String password;
}