upd project
parent
122cfaabce
commit
c194961a1c
|
@ -32,6 +32,11 @@
|
|||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cn.hutool</groupId>
|
||||
<artifactId>hutool-all</artifactId>
|
||||
<version>4.5.16</version>
|
||||
</dependency>
|
||||
<!-- 邮箱依赖 -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
|
|
|
@ -38,7 +38,8 @@ import java.util.stream.Collectors;
|
|||
*/
|
||||
@RestController
|
||||
@RequestMapping("/user")
|
||||
public class SysUserController extends BaseController {
|
||||
public class SysUserController extends BaseController
|
||||
{
|
||||
@Autowired
|
||||
private ISysUserService userService;
|
||||
|
||||
|
@ -62,7 +63,8 @@ public class SysUserController extends BaseController {
|
|||
*/
|
||||
@RequiresPermissions("system:user:list")
|
||||
@GetMapping("/list")
|
||||
public Result<TableDataInfo> list(SysUser user) {
|
||||
public Result<TableDataInfo> list(SysUser user)
|
||||
{
|
||||
startPage();
|
||||
List<SysUser> list = userService.selectUserList(user);
|
||||
return getDataTable(list);
|
||||
|
@ -71,7 +73,8 @@ public class SysUserController extends BaseController {
|
|||
@Log(title = "用户管理", businessType = BusinessType.EXPORT)
|
||||
@RequiresPermissions("system:user:export")
|
||||
@PostMapping("/export")
|
||||
public void export(HttpServletResponse response, SysUser user) {
|
||||
public void export(HttpServletResponse response, SysUser user)
|
||||
{
|
||||
List<SysUser> list = userService.selectUserList(user);
|
||||
ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
|
||||
util.exportExcel(response, list, "用户数据");
|
||||
|
@ -80,7 +83,8 @@ public class SysUserController extends BaseController {
|
|||
@Log(title = "用户管理", businessType = BusinessType.IMPORT)
|
||||
@RequiresPermissions("system:user:import")
|
||||
@PostMapping("/importData")
|
||||
public Result importData(MultipartFile file, boolean updateSupport) throws Exception {
|
||||
public Result importData(MultipartFile file, boolean updateSupport) throws Exception
|
||||
{
|
||||
ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
|
||||
List<SysUser> userList = util.importExcel(file.getInputStream());
|
||||
String operName = SecurityUtils.getUsername();
|
||||
|
@ -89,7 +93,8 @@ public class SysUserController extends BaseController {
|
|||
}
|
||||
|
||||
@PostMapping("/importTemplate")
|
||||
public void importTemplate(HttpServletResponse response) throws IOException {
|
||||
public void importTemplate(HttpServletResponse response) throws IOException
|
||||
{
|
||||
ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
|
||||
util.importTemplateExcel(response, "用户数据");
|
||||
}
|
||||
|
@ -99,9 +104,11 @@ public class SysUserController extends BaseController {
|
|||
*/
|
||||
@InnerAuth
|
||||
@GetMapping("/info/{username}")
|
||||
public Result<LoginUser> info(@PathVariable("username") String username) {
|
||||
public Result<LoginUser> info(@PathVariable("username") String username)
|
||||
{
|
||||
SysUser sysUser = userService.selectUserByUserName(username);
|
||||
if (StringUtils.isNull(sysUser)) {
|
||||
if (StringUtils.isNull(sysUser))
|
||||
{
|
||||
return Result.error("用户名或密码错误");
|
||||
}
|
||||
// 角色集合
|
||||
|
@ -120,12 +127,15 @@ public class SysUserController extends BaseController {
|
|||
*/
|
||||
@InnerAuth
|
||||
@PostMapping("/register")
|
||||
public Result<Boolean> register(@RequestBody SysUser sysUser) {
|
||||
public Result<Boolean> register(@RequestBody SysUser sysUser)
|
||||
{
|
||||
String username = sysUser.getUserName();
|
||||
if (!("true".equals(configService.selectConfigByKey("sys.account.registerUser")))) {
|
||||
if (!("true".equals(configService.selectConfigByKey("sys.account.registerUser"))))
|
||||
{
|
||||
return Result.error("当前系统没有开启注册功能!");
|
||||
}
|
||||
if (!userService.checkUserNameUnique(sysUser)) {
|
||||
if (!userService.checkUserNameUnique(sysUser))
|
||||
{
|
||||
return Result.error("保存用户'" + username + "'失败,注册账号已存在");
|
||||
}
|
||||
return Result.success(userService.registerUser(sysUser));
|
||||
|
@ -140,7 +150,7 @@ public class SysUserController extends BaseController {
|
|||
}
|
||||
|
||||
//注册
|
||||
@PostMapping("/register/user")
|
||||
@PostMapping
|
||||
public Result<Boolean> registerUser(@RequestBody User user){
|
||||
String userName = user.getUserName();
|
||||
if (!("true".equals(configService.selectConfigByKey("sys.account.registerUser"))))
|
||||
|
@ -157,7 +167,8 @@ public class SysUserController extends BaseController {
|
|||
* @return 用户信息
|
||||
*/
|
||||
@GetMapping("getInfo")
|
||||
public Result getInfo() {
|
||||
public Result getInfo()
|
||||
{
|
||||
SysUser user = userService.selectUserById(SecurityUtils.getUserId());
|
||||
// 角色集合
|
||||
Set<String> roles = permissionService.getRolePermission(user);
|
||||
|
@ -176,15 +187,17 @@ public class SysUserController extends BaseController {
|
|||
* 根据用户编号获取详细信息
|
||||
*/
|
||||
@RequiresPermissions("system:user:query")
|
||||
@GetMapping(value = {"/", "/{userId}"})
|
||||
public Result getInfo(@PathVariable(value = "userId", required = false) Long userId) {
|
||||
@GetMapping(value = { "/", "/{userId}" })
|
||||
public Result getInfo(@PathVariable(value = "userId", required = false) Long userId)
|
||||
{
|
||||
userService.checkUserDataScope(userId);
|
||||
Result result = Result.success();
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
List<SysRole> roles = roleService.selectRoleAll();
|
||||
map.put("roles", SysUser.isAdmin(userId) ? roles : roles.stream().filter(r -> !r.isAdmin()).collect(Collectors.toList()));
|
||||
map.put("posts", postService.selectPostAll());
|
||||
if (StringUtils.isNotNull(userId)) {
|
||||
if (StringUtils.isNotNull(userId))
|
||||
{
|
||||
SysUser sysUser = userService.selectUserById(userId);
|
||||
map.put("susUser", sysUser);
|
||||
map.put("postIds", postService.selectPostListByUserId(userId));
|
||||
|
@ -200,12 +213,18 @@ public class SysUserController extends BaseController {
|
|||
@RequiresPermissions("system:user:add")
|
||||
@Log(title = "用户管理", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public Result add(@Validated @RequestBody SysUser user) {
|
||||
if (!userService.checkUserNameUnique(user)) {
|
||||
public Result add(@Validated @RequestBody SysUser user)
|
||||
{
|
||||
if (!userService.checkUserNameUnique(user))
|
||||
{
|
||||
return error("新增用户'" + user.getUserName() + "'失败,登录账号已存在");
|
||||
} else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
|
||||
}
|
||||
else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user))
|
||||
{
|
||||
return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在");
|
||||
} else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) {
|
||||
}
|
||||
else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user))
|
||||
{
|
||||
return error("新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
||||
}
|
||||
//获取当前用户
|
||||
|
@ -221,14 +240,20 @@ public class SysUserController extends BaseController {
|
|||
@RequiresPermissions("system:user:edit")
|
||||
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public Result edit(@Validated @RequestBody SysUser user) {
|
||||
public Result edit(@Validated @RequestBody SysUser user)
|
||||
{
|
||||
userService.checkUserAllowed(user);
|
||||
userService.checkUserDataScope(user.getUserId());
|
||||
if (!userService.checkUserNameUnique(user)) {
|
||||
if (!userService.checkUserNameUnique(user))
|
||||
{
|
||||
return error("修改用户'" + user.getUserName() + "'失败,登录账号已存在");
|
||||
} else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
|
||||
}
|
||||
else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user))
|
||||
{
|
||||
return error("修改用户'" + user.getUserName() + "'失败,手机号码已存在");
|
||||
} else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) {
|
||||
}
|
||||
else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user))
|
||||
{
|
||||
return error("修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
||||
}
|
||||
user.setUpdateBy(SecurityUtils.getUsername());
|
||||
|
@ -241,8 +266,10 @@ public class SysUserController extends BaseController {
|
|||
@RequiresPermissions("system:user:remove")
|
||||
@Log(title = "用户管理", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{userIds}")
|
||||
public Result remove(@PathVariable Long[] userIds) {
|
||||
if (ArrayUtils.contains(userIds, SecurityUtils.getUserId())) {
|
||||
public Result remove(@PathVariable Long[] userIds)
|
||||
{
|
||||
if (ArrayUtils.contains(userIds, SecurityUtils.getUserId()))
|
||||
{
|
||||
return error("当前用户不能删除");
|
||||
}
|
||||
return toAjax(userService.deleteUserByIds(userIds));
|
||||
|
@ -254,7 +281,8 @@ public class SysUserController extends BaseController {
|
|||
@RequiresPermissions("system:user:edit")
|
||||
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping("/resetPwd")
|
||||
public Result resetPwd(@RequestBody SysUser user) {
|
||||
public Result resetPwd(@RequestBody SysUser user)
|
||||
{
|
||||
userService.checkUserAllowed(user);
|
||||
userService.checkUserDataScope(user.getUserId());
|
||||
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
|
||||
|
@ -268,7 +296,8 @@ public class SysUserController extends BaseController {
|
|||
@RequiresPermissions("system:user:edit")
|
||||
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping("/changeStatus")
|
||||
public Result changeStatus(@RequestBody SysUser user) {
|
||||
public Result changeStatus(@RequestBody SysUser user)
|
||||
{
|
||||
userService.checkUserAllowed(user);
|
||||
userService.checkUserDataScope(user.getUserId());
|
||||
user.setUpdateBy(SecurityUtils.getUsername());
|
||||
|
@ -280,7 +309,8 @@ public class SysUserController extends BaseController {
|
|||
*/
|
||||
@RequiresPermissions("system:user:query")
|
||||
@GetMapping("/authRole/{userId}")
|
||||
public Result authRole(@PathVariable("userId") Long userId) {
|
||||
public Result authRole(@PathVariable("userId") Long userId)
|
||||
{
|
||||
Result result = Result.success();
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
SysUser user = userService.selectUserById(userId);
|
||||
|
@ -297,7 +327,8 @@ public class SysUserController extends BaseController {
|
|||
@RequiresPermissions("system:user:edit")
|
||||
@Log(title = "用户管理", businessType = BusinessType.GRANT)
|
||||
@PutMapping("/authRole")
|
||||
public Result insertAuthRole(Long userId, Long[] roleIds) {
|
||||
public Result insertAuthRole(Long userId, Long[] roleIds)
|
||||
{
|
||||
userService.checkUserDataScope(userId);
|
||||
userService.insertUserAuth(userId, roleIds);
|
||||
return success();
|
||||
|
@ -308,7 +339,8 @@ public class SysUserController extends BaseController {
|
|||
*/
|
||||
@RequiresPermissions("system:user:list")
|
||||
@GetMapping("/deptTree")
|
||||
public Result deptTree(SysDept dept) {
|
||||
public Result deptTree(SysDept dept)
|
||||
{
|
||||
return success(deptService.selectDeptTreeList(dept));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
package com.health.system.server.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.health.common.core.domain.Result;
|
||||
import com.health.system.common.domain.SysUser;
|
||||
import com.health.system.common.domain.User;
|
||||
|
||||
/**
|
||||
* 用户 业务层
|
||||
|
@ -203,4 +206,8 @@ public interface ISysUserService
|
|||
* @return 结果
|
||||
*/
|
||||
public String importUser(List<SysUser> userList, Boolean isUpdateSupport, String operName);
|
||||
|
||||
Result getEmailCode(String emailCount);
|
||||
|
||||
Boolean registerNewUser(User user);
|
||||
}
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package com.health.system.server.service.impl;
|
||||
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import com.health.common.core.constant.UserConstants;
|
||||
import com.health.common.core.domain.Result;
|
||||
import com.health.common.core.exception.ServiceException;
|
||||
import com.health.common.core.utils.SpringUtils;
|
||||
import com.health.common.core.utils.StringUtils;
|
||||
|
@ -11,13 +13,21 @@ import com.health.system.common.domain.*;
|
|||
import com.health.system.server.mapper.*;
|
||||
import com.health.system.server.service.ISysConfigService;
|
||||
import com.health.system.server.service.ISysUserService;
|
||||
import io.swagger.models.auth.In;
|
||||
import org.apache.commons.lang3.RandomUtils;
|
||||
import org.bouncycastle.pqc.math.linearalgebra.RandUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.mail.javamail.JavaMailSender;
|
||||
import org.springframework.mail.javamail.MimeMessageHelper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import javax.mail.MessagingException;
|
||||
import javax.mail.internet.MimeMessage;
|
||||
import javax.validation.Validator;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
@ -33,6 +43,10 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
{
|
||||
private static final Logger log = LoggerFactory.getLogger(SysUserServiceImpl.class);
|
||||
|
||||
@Autowired
|
||||
private RedisTemplate<String,String> redisTemplate;
|
||||
@Autowired
|
||||
private JavaMailSender javaMailSender;
|
||||
@Autowired
|
||||
private SysUserMapper userMapper;
|
||||
|
||||
|
@ -252,7 +266,7 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
// 新增用户信息
|
||||
int rows = userMapper.insertUser(user);
|
||||
// 新增用户岗位关联
|
||||
insertUserPost(user);
|
||||
// insertUserPost(user);
|
||||
// 新增用户与角色管理
|
||||
insertUserRole(user);
|
||||
return rows;
|
||||
|
@ -267,6 +281,7 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
@Override
|
||||
public boolean registerUser(SysUser user)
|
||||
{
|
||||
|
||||
return userMapper.insertUser(user) > 0;
|
||||
}
|
||||
|
||||
|
@ -288,7 +303,7 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
// 删除用户与岗位关联
|
||||
userPostMapper.deleteUserPostByUserId(userId);
|
||||
// 新增用户与岗位管理
|
||||
insertUserPost(user);
|
||||
// insertUserPost(user);
|
||||
return userMapper.updateUser(user);
|
||||
}
|
||||
|
||||
|
@ -375,7 +390,7 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
*/
|
||||
public void insertUserRole(SysUser user)
|
||||
{
|
||||
this.insertUserRole(user.getUserId(), user.getRoleIds());
|
||||
this.insertUserRole(user);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -383,6 +398,11 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
*
|
||||
* @param user 用户对象
|
||||
*/
|
||||
// public void insertUserPost(SysUser user){
|
||||
// Long deptId = user.getDeptId();
|
||||
// user.getUserId();
|
||||
// userPostMapper.addUserPost(userId,departmentId);
|
||||
// }
|
||||
public void insertUserPost(SysUser user)
|
||||
{
|
||||
Long[] posts = user.getPostIds();
|
||||
|
@ -535,4 +555,36 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
return successMsg.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean registerNewUser(User user) {
|
||||
Long roleId = user.getRoleId();
|
||||
//如果roleId==1证明是注册医生
|
||||
if (roleId==1){
|
||||
return userMapper.registerNewDoctor(user)>0;
|
||||
}
|
||||
//注册患者
|
||||
if (roleId==2){
|
||||
return userMapper.registerNewPatient(user)>0;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Result getEmailCode(String emailCount) {
|
||||
String emailCode = RandomUtil.randomNumbers(4);
|
||||
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
|
||||
try {
|
||||
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);
|
||||
mimeMessageHelper.setFrom("371894675@qq.com");
|
||||
mimeMessageHelper.setTo(emailCount);
|
||||
mimeMessageHelper.setSubject("邮箱验证码");
|
||||
mimeMessageHelper.setText("验证码为:"+emailCode);
|
||||
|
||||
} catch (MessagingException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
redisTemplate.opsForValue().set(emailCount,emailCode);
|
||||
return Result.success(emailCode,"邮箱验证码发送成功");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue