|
@@ -8,11 +8,8 @@ import com.bizmatics.common.mvc.utils.ServletUtils;
|
|
|
import com.bizmatics.model.UserSite;
|
|
|
import com.bizmatics.model.constants.UserConstants;
|
|
|
import com.bizmatics.model.page.TableDataInfo;
|
|
|
-import com.bizmatics.model.system.SysMenu;
|
|
|
import com.bizmatics.model.system.SysRole;
|
|
|
import com.bizmatics.model.system.SysUser;
|
|
|
-import com.bizmatics.model.system.SysUserVo;
|
|
|
-import com.bizmatics.model.vo.RouterVo;
|
|
|
import com.bizmatics.persistence.mapper.system.SysUserMapper;
|
|
|
import com.bizmatics.service.config.security.LoginUser;
|
|
|
import com.bizmatics.service.system.ISysPostService;
|
|
@@ -35,13 +32,12 @@ import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 用户信息
|
|
|
- *
|
|
|
+ *
|
|
|
* @author yq
|
|
|
*/
|
|
|
@RestController
|
|
|
@RequestMapping("/system/user")
|
|
|
-public class SysUserController extends BaseController
|
|
|
-{
|
|
|
+public class SysUserController extends BaseController {
|
|
|
@Autowired
|
|
|
private ISysUserService userService;
|
|
|
|
|
@@ -62,8 +58,7 @@ public class SysUserController extends BaseController
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:list')")
|
|
|
@GetMapping("/list")
|
|
|
- public ApiResult<TableDataInfo> list(SysUser user)
|
|
|
- {
|
|
|
+ public ApiResult<TableDataInfo> list(SysUser user) {
|
|
|
startPage();
|
|
|
List<SysUser> list = userService.selectUserList(user);
|
|
|
return ApiResult.success(getDataTable(list));
|
|
@@ -73,15 +68,13 @@ public class SysUserController extends BaseController
|
|
|
* 根据用户编号获取详细信息
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:query')")
|
|
|
- @GetMapping(value = { "/", "/{userId}" })
|
|
|
- public ApiResult<Map<String,Object>> getInfo(@PathVariable(value = "userId", required = false) Long userId)
|
|
|
- {
|
|
|
- Map<String,Object> ajax = new HashMap<>();
|
|
|
+ @GetMapping(value = {"/", "/{userId}"})
|
|
|
+ public ApiResult<Map<String, Object>> getInfo(@PathVariable(value = "userId", required = false) Long userId) {
|
|
|
+ Map<String, Object> ajax = new HashMap<>();
|
|
|
List<SysRole> roles = roleService.selectRoleAll();
|
|
|
ajax.put("roles", SysUser.isAdmin(userId) ? roles : roles.stream().filter(r -> !r.isAdmin()).collect(Collectors.toList()));
|
|
|
ajax.put("posts", postService.selectPostAll());
|
|
|
- if (Objects.nonNull(userId))
|
|
|
- {
|
|
|
+ if (Objects.nonNull(userId)) {
|
|
|
ajax.put("data", userService.selectUserById(userId));
|
|
|
ajax.put("postIds", postService.selectPostListByUserId(userId));
|
|
|
ajax.put("roleIds", roleService.selectRoleListByUserId(userId));
|
|
@@ -95,20 +88,14 @@ public class SysUserController extends BaseController
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:add')")
|
|
|
@Transactional
|
|
|
@PostMapping
|
|
|
- public ApiResult<Void> add(@Validated @RequestBody SysUser user)
|
|
|
- {
|
|
|
- if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName())))
|
|
|
- {
|
|
|
+ public ApiResult<Void> add(@Validated @RequestBody SysUser user) {
|
|
|
+ if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName()))) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,登录账号已存在");
|
|
|
- }
|
|
|
- else if (StringUtils.isNotBlank(user.getPhonenumber())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
|
|
|
- {
|
|
|
+ } else if (StringUtils.isNotBlank(user.getPhonenumber())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,手机号码已存在");
|
|
|
- }
|
|
|
- else if (StringUtils.isNotBlank(user.getEmail())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user)))
|
|
|
- {
|
|
|
+ } else if (StringUtils.isNotBlank(user.getEmail())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
|
|
}
|
|
|
user.setCreateBy(SecurityUtils.getUsername());
|
|
@@ -116,20 +103,20 @@ public class SysUserController extends BaseController
|
|
|
//租户查询
|
|
|
// LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
|
|
|
List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getUser().getUserId());
|
|
|
- if (tenantDaya.size()<0) {
|
|
|
+ if (tenantDaya.size() < 0) {
|
|
|
throw new BusinessException("无此租户,请联系管理员");
|
|
|
}
|
|
|
user.setTenantId(tenantDaya.get(0).getTenantId());
|
|
|
int row = userService.insertUser(user);
|
|
|
int userId = user.getUserId().intValue();
|
|
|
- try{
|
|
|
- for (int i=0;i<user.getSiteId().length;i++){
|
|
|
+ try {
|
|
|
+ for (int i = 0; i < user.getSiteId().length; i++) {
|
|
|
int siteId = user.getSiteId()[i];
|
|
|
- userService.insertUserSite(userId,siteId);
|
|
|
+ userService.insertUserSite(userId, siteId);
|
|
|
}
|
|
|
- }catch (Exception e){
|
|
|
+ } catch (Exception e) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- throw new BusinessException("用户点位关联表插入失败");
|
|
|
+ throw new BusinessException("用户点位关联表插入失败");
|
|
|
}
|
|
|
return toAjax(row);
|
|
|
}
|
|
@@ -140,36 +127,26 @@ public class SysUserController extends BaseController
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:edit')")
|
|
|
@Transactional
|
|
|
@PutMapping
|
|
|
- public ApiResult<Void> edit(@Validated @RequestBody SysUser user)
|
|
|
- {
|
|
|
+ public ApiResult<Void> edit(@Validated @RequestBody SysUser user) {
|
|
|
userService.checkUserAllowed(user);
|
|
|
if (StringUtils.isNotEmpty(user.getPhonenumber())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
|
|
|
- {
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,手机号码已存在");
|
|
|
- }
|
|
|
- else if (StringUtils.isNotEmpty(user.getEmail())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user)))
|
|
|
- {
|
|
|
+ } else if (StringUtils.isNotEmpty(user.getEmail())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
|
|
}
|
|
|
user.setUpdateBy(SecurityUtils.getUsername());
|
|
|
- //租户查询
|
|
|
- List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getUser().getUserId());
|
|
|
- if (tenantDaya.size()<0) {
|
|
|
- throw new BusinessException("无此租户,请联系管理员");
|
|
|
- }
|
|
|
- user.setTenantId(tenantDaya.get(0).getTenantId());
|
|
|
- try{
|
|
|
+ try {
|
|
|
userService.deleteUserByIds(user.getUserId());
|
|
|
int userId = user.getUserId().intValue();
|
|
|
- for (int i=0;i<user.getSiteId().length;i++){
|
|
|
+ for (int i = 0; i < user.getSiteId().length; i++) {
|
|
|
int siteId = user.getSiteId()[i];
|
|
|
- userService.insertUserSite(userId,siteId);
|
|
|
+ userService.insertUserSite(userId, siteId);
|
|
|
}
|
|
|
- }catch (Exception e){
|
|
|
+ } catch (Exception e) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- throw new BusinessException("用户点位关联表插入失败");
|
|
|
+ throw new BusinessException("用户点位关联表插入失败");
|
|
|
}
|
|
|
return toAjax(userService.updateUser(user));
|
|
|
}
|
|
@@ -179,8 +156,7 @@ public class SysUserController extends BaseController
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:remove')")
|
|
|
@DeleteMapping("/{userIds}")
|
|
|
- public ApiResult<Void> remove(@PathVariable Long[] userIds)
|
|
|
- {
|
|
|
+ public ApiResult<Void> remove(@PathVariable Long[] userIds) {
|
|
|
return toAjax(userService.deleteUserByIds(userIds));
|
|
|
}
|
|
|
|
|
@@ -189,8 +165,7 @@ public class SysUserController extends BaseController
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:resetPwd')")
|
|
|
@PutMapping("/resetPwd")
|
|
|
- public ApiResult<Void> resetPwd(@RequestBody SysUser user)
|
|
|
- {
|
|
|
+ public ApiResult<Void> resetPwd(@RequestBody SysUser user) {
|
|
|
userService.checkUserAllowed(user);
|
|
|
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
|
|
|
user.setUpdateBy(SecurityUtils.getUsername());
|
|
@@ -202,8 +177,7 @@ public class SysUserController extends BaseController
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:edit')")
|
|
|
@PutMapping("/changeStatus")
|
|
|
- public ApiResult<Void> changeStatus(@RequestBody SysUser user)
|
|
|
- {
|
|
|
+ public ApiResult<Void> changeStatus(@RequestBody SysUser user) {
|
|
|
userService.checkUserAllowed(user);
|
|
|
user.setUpdateBy(SecurityUtils.getUsername());
|
|
|
return toAjax(userService.updateUserStatus(user));
|
|
@@ -214,9 +188,8 @@ public class SysUserController extends BaseController
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:query')")
|
|
|
@GetMapping("/authRole/{userId}")
|
|
|
- public ApiResult<Map<String,Object>> authRole(@PathVariable("userId") Long userId)
|
|
|
- {
|
|
|
- Map<String,Object> ajax = new HashMap<>();
|
|
|
+ public ApiResult<Map<String, Object>> authRole(@PathVariable("userId") Long userId) {
|
|
|
+ Map<String, Object> ajax = new HashMap<>();
|
|
|
SysUser user = userService.selectUserById(userId);
|
|
|
List<SysRole> roles = roleService.selectRolesByUserId(userId);
|
|
|
List<UserSite> userSiteList = userService.selectUserSiteById(userId);
|
|
@@ -231,15 +204,13 @@ public class SysUserController extends BaseController
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('system:user:edit')")
|
|
|
@PutMapping("/authRole")
|
|
|
- public ApiResult<Void> insertAuthRole(Long userId, Long[] roleIds)
|
|
|
- {
|
|
|
+ public ApiResult<Void> insertAuthRole(Long userId, Long[] roleIds) {
|
|
|
userService.insertUserAuth(userId, roleIds);
|
|
|
return ApiResult.success();
|
|
|
}
|
|
|
|
|
|
@GetMapping("getUserData")
|
|
|
- public ApiResult<SysUser> getUserData()
|
|
|
- {
|
|
|
+ public ApiResult<SysUser> getUserData() {
|
|
|
LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
|
|
|
return ApiResult.success(userService.selectUserByUserName(loginUser.getUser().getUserName()));
|
|
|
}
|
|
@@ -249,17 +220,13 @@ public class SysUserController extends BaseController
|
|
|
* 个人中心-信息编辑
|
|
|
*/
|
|
|
@PostMapping("/setUserData")
|
|
|
- public ApiResult<Void> setUserData(@RequestBody SysUser user)
|
|
|
- {
|
|
|
+ public ApiResult<Void> setUserData(@RequestBody SysUser user) {
|
|
|
// userService.checkUserAllowed(user);
|
|
|
if (StringUtils.isNotEmpty(user.getPhonenumber())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
|
|
|
- {
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,手机号码已存在");
|
|
|
- }
|
|
|
- else if (StringUtils.isNotEmpty(user.getEmail())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user)))
|
|
|
- {
|
|
|
+ } else if (StringUtils.isNotEmpty(user.getEmail())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
|
|
}
|
|
|
user.setUpdateBy(SecurityUtils.getUsername());
|
|
@@ -270,21 +237,17 @@ public class SysUserController extends BaseController
|
|
|
* 个人中心-重置密码
|
|
|
*/
|
|
|
@PutMapping("/updatePwd")
|
|
|
- public ApiResult updatePwd(String oldPassword, String newPassword)
|
|
|
- {
|
|
|
+ public ApiResult updatePwd(String oldPassword, String newPassword) {
|
|
|
LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
|
|
|
String userName = loginUser.getUsername();
|
|
|
String password = loginUser.getPassword();
|
|
|
- if (!SecurityUtils.matchesPassword(oldPassword, password))
|
|
|
- {
|
|
|
+ if (!SecurityUtils.matchesPassword(oldPassword, password)) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改密码失败,旧密码错误");
|
|
|
}
|
|
|
- if (SecurityUtils.matchesPassword(newPassword, password))
|
|
|
- {
|
|
|
+ if (SecurityUtils.matchesPassword(newPassword, password)) {
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新密码不能与旧密码相同");
|
|
|
}
|
|
|
- if (userService.resetUserPwd(userName, SecurityUtils.encryptPassword(newPassword)) > 0)
|
|
|
- {
|
|
|
+ if (userService.resetUserPwd(userName, SecurityUtils.encryptPassword(newPassword)) > 0) {
|
|
|
// 更新缓存用户密码
|
|
|
loginUser.getUser().setPassword(SecurityUtils.encryptPassword(newPassword));
|
|
|
tokenService.setLoginUser(loginUser);
|
|
@@ -292,4 +255,48 @@ public class SysUserController extends BaseController
|
|
|
}
|
|
|
return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改密码异常,请联系管理员");
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 租户管理-管理员配置-新增
|
|
|
+ */
|
|
|
+ @Transactional
|
|
|
+ @PostMapping("/addUserData")
|
|
|
+ public ApiResult<Void> addUserData(@Validated @RequestBody SysUser user) {
|
|
|
+ if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName()))) {
|
|
|
+ return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,登录账号已存在");
|
|
|
+ } else if (StringUtils.isNotBlank(user.getPhonenumber())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
|
|
|
+ return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,手机号码已存在");
|
|
|
+ } else if (StringUtils.isNotBlank(user.getEmail())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
|
|
|
+ return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
|
|
+ }
|
|
|
+ user.setCreateBy(SecurityUtils.getUsername());
|
|
|
+ user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
|
|
|
+ //租户查询
|
|
|
+ List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getUser().getUserId());
|
|
|
+ if (tenantDaya.size() < 0) {
|
|
|
+ throw new BusinessException("无此租户,请联系管理员");
|
|
|
+ }
|
|
|
+ user.setTenantId(tenantDaya.get(0).getTenantId());
|
|
|
+ int row = userService.addUser(user);
|
|
|
+ return toAjax(row);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Transactional
|
|
|
+ @PostMapping("/updateserData")
|
|
|
+ public ApiResult<Void> updateserData(@Validated @RequestBody SysUser user) {
|
|
|
+ userService.checkUserAllowed(user);
|
|
|
+ if (StringUtils.isNotEmpty(user.getPhonenumber())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
|
|
|
+ return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,手机号码已存在");
|
|
|
+ } else if (StringUtils.isNotEmpty(user.getEmail())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
|
|
|
+ return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
|
|
+ }
|
|
|
+ user.setUpdateBy(SecurityUtils.getUsername());
|
|
|
+ return toAjax(userService.updateUserData(user));
|
|
|
+ }
|
|
|
}
|