Commit 2dd87e0414e05054e0cd350f8fc217e1308e11dc
1 parent
cd854d0e
设置 事务 rollback 属性
Showing
7 changed files
with
17 additions
and
31 deletions
src/main/java/cn/iocoder/dashboard/modules/infra/service/job/impl/InfJobServiceImpl.java
| @@ -41,7 +41,7 @@ public class InfJobServiceImpl implements InfJobService { | @@ -41,7 +41,7 @@ public class InfJobServiceImpl implements InfJobService { | ||
| 41 | private SchedulerManager schedulerManager; | 41 | private SchedulerManager schedulerManager; |
| 42 | 42 | ||
| 43 | @Override | 43 | @Override |
| 44 | - @Transactional | 44 | + @Transactional(rollbackFor = Exception.class) |
| 45 | public Long createJob(InfJobCreateReqVO createReqVO) throws SchedulerException { | 45 | public Long createJob(InfJobCreateReqVO createReqVO) throws SchedulerException { |
| 46 | validateCronExpression(createReqVO.getCronExpression()); | 46 | validateCronExpression(createReqVO.getCronExpression()); |
| 47 | // 校验唯一性 | 47 | // 校验唯一性 |
| @@ -66,7 +66,7 @@ public class InfJobServiceImpl implements InfJobService { | @@ -66,7 +66,7 @@ public class InfJobServiceImpl implements InfJobService { | ||
| 66 | } | 66 | } |
| 67 | 67 | ||
| 68 | @Override | 68 | @Override |
| 69 | - @Transactional | 69 | + @Transactional(rollbackFor = Exception.class) |
| 70 | public void updateJob(InfJobUpdateReqVO updateReqVO) throws SchedulerException { | 70 | public void updateJob(InfJobUpdateReqVO updateReqVO) throws SchedulerException { |
| 71 | validateCronExpression(updateReqVO.getCronExpression()); | 71 | validateCronExpression(updateReqVO.getCronExpression()); |
| 72 | // 校验存在 | 72 | // 校验存在 |
| @@ -86,7 +86,7 @@ public class InfJobServiceImpl implements InfJobService { | @@ -86,7 +86,7 @@ public class InfJobServiceImpl implements InfJobService { | ||
| 86 | } | 86 | } |
| 87 | 87 | ||
| 88 | @Override | 88 | @Override |
| 89 | - @Transactional | 89 | + @Transactional(rollbackFor = Exception.class) |
| 90 | public void updateJobStatus(Long id, Integer status) throws SchedulerException { | 90 | public void updateJobStatus(Long id, Integer status) throws SchedulerException { |
| 91 | // 校验 status | 91 | // 校验 status |
| 92 | if (!containsAny(status, InfJobStatusEnum.NORMAL.getStatus(), InfJobStatusEnum.STOP.getStatus())) { | 92 | if (!containsAny(status, InfJobStatusEnum.NORMAL.getStatus(), InfJobStatusEnum.STOP.getStatus())) { |
| @@ -120,7 +120,7 @@ public class InfJobServiceImpl implements InfJobService { | @@ -120,7 +120,7 @@ public class InfJobServiceImpl implements InfJobService { | ||
| 120 | } | 120 | } |
| 121 | 121 | ||
| 122 | @Override | 122 | @Override |
| 123 | - @Transactional | 123 | + @Transactional(rollbackFor = Exception.class) |
| 124 | public void deleteJob(Long id) throws SchedulerException { | 124 | public void deleteJob(Long id) throws SchedulerException { |
| 125 | // 校验存在 | 125 | // 校验存在 |
| 126 | InfJobDO job = this.validateJobExists(id); | 126 | InfJobDO job = this.validateJobExists(id); |
src/main/java/cn/iocoder/dashboard/modules/system/controller/user/SysUserProfileController.java
| @@ -88,7 +88,7 @@ public class SysUserProfileController { | @@ -88,7 +88,7 @@ public class SysUserProfileController { | ||
| 88 | * @param file 头像文件 | 88 | * @param file 头像文件 |
| 89 | * @return 上传结果 | 89 | * @return 上传结果 |
| 90 | */ | 90 | */ |
| 91 | - @PostMapping("/uploadAvatar") | 91 | + @PostMapping("/upload-avatar") |
| 92 | @ApiOperation("上传用户个人头像") | 92 | @ApiOperation("上传用户个人头像") |
| 93 | public CommonResult<Boolean> uploadAvatar(@RequestParam("avatarFile") MultipartFile file) { | 93 | public CommonResult<Boolean> uploadAvatar(@RequestParam("avatarFile") MultipartFile file) { |
| 94 | if (!file.isEmpty()) { | 94 | if (!file.isEmpty()) { |
src/main/java/cn/iocoder/dashboard/modules/system/service/permission/impl/SysMenuServiceImpl.java
| @@ -206,7 +206,7 @@ public class SysMenuServiceImpl implements SysMenuService { | @@ -206,7 +206,7 @@ public class SysMenuServiceImpl implements SysMenuService { | ||
| 206 | * | 206 | * |
| 207 | * @param menuId 菜单编号 | 207 | * @param menuId 菜单编号 |
| 208 | */ | 208 | */ |
| 209 | - @Transactional | 209 | + @Transactional(rollbackFor = Exception.class) |
| 210 | public void deleteMenu(Long menuId) { | 210 | public void deleteMenu(Long menuId) { |
| 211 | // 校验更新的菜单是否存在 | 211 | // 校验更新的菜单是否存在 |
| 212 | if (menuMapper.selectById(menuId) == null) { | 212 | if (menuMapper.selectById(menuId) == null) { |
src/main/java/cn/iocoder/dashboard/modules/system/service/permission/impl/SysPermissionServiceImpl.java
| @@ -176,7 +176,7 @@ public class SysPermissionServiceImpl implements SysPermissionService { | @@ -176,7 +176,7 @@ public class SysPermissionServiceImpl implements SysPermissionService { | ||
| 176 | } | 176 | } |
| 177 | 177 | ||
| 178 | @Override | 178 | @Override |
| 179 | - @Transactional | 179 | + @Transactional(rollbackFor = Exception.class) |
| 180 | public void assignRoleMenu(Long roleId, Set<Long> menuIds) { | 180 | public void assignRoleMenu(Long roleId, Set<Long> menuIds) { |
| 181 | // 获得角色拥有菜单编号 | 181 | // 获得角色拥有菜单编号 |
| 182 | Set<Long> dbMenuIds = CollectionUtils.convertSet(roleMenuMapper.selectListByRoleId(roleId), | 182 | Set<Long> dbMenuIds = CollectionUtils.convertSet(roleMenuMapper.selectListByRoleId(roleId), |
src/main/java/cn/iocoder/dashboard/modules/system/service/permission/impl/SysRoleServiceImpl.java
| @@ -174,7 +174,7 @@ public class SysRoleServiceImpl implements SysRoleService { | @@ -174,7 +174,7 @@ public class SysRoleServiceImpl implements SysRoleService { | ||
| 174 | } | 174 | } |
| 175 | 175 | ||
| 176 | @Override | 176 | @Override |
| 177 | - @Transactional | 177 | + @Transactional(rollbackFor = Exception.class) |
| 178 | public void deleteRole(Long id) { | 178 | public void deleteRole(Long id) { |
| 179 | // 校验是否可以更新 | 179 | // 校验是否可以更新 |
| 180 | this.checkUpdateRole(id); | 180 | this.checkUpdateRole(id); |
src/main/java/cn/iocoder/dashboard/modules/system/service/user/SysUserServiceImpl.java
| @@ -2,7 +2,7 @@ package cn.iocoder.dashboard.modules.system.service.user; | @@ -2,7 +2,7 @@ package cn.iocoder.dashboard.modules.system.service.user; | ||
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.io.IoUtil; | 4 | import cn.hutool.core.io.IoUtil; |
| 5 | -import cn.hutool.core.lang.UUID; | 5 | +import cn.hutool.core.util.IdUtil; |
| 6 | import cn.hutool.core.util.StrUtil; | 6 | import cn.hutool.core.util.StrUtil; |
| 7 | import cn.iocoder.dashboard.common.enums.CommonStatusEnum; | 7 | import cn.iocoder.dashboard.common.enums.CommonStatusEnum; |
| 8 | import cn.iocoder.dashboard.common.exception.ServiceException; | 8 | import cn.iocoder.dashboard.common.exception.ServiceException; |
| @@ -68,19 +68,6 @@ public class SysUserServiceImpl implements SysUserService { | @@ -68,19 +68,6 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 68 | @Resource | 68 | @Resource |
| 69 | private InfFileService fileService; | 69 | private InfFileService fileService; |
| 70 | 70 | ||
| 71 | -// /** | ||
| 72 | -// * 根据条件分页查询用户列表 | ||
| 73 | -// * | ||
| 74 | -// * @param user 用户信息 | ||
| 75 | -// * @return 用户信息集合信息 | ||
| 76 | -// */ | ||
| 77 | -// @Override | ||
| 78 | -// @DataScope(deptAlias = "d", userAlias = "u") | ||
| 79 | -// public List<SysUser> selectUserList(SysUser user) | ||
| 80 | -// { | ||
| 81 | -// return userMapper.selectUserList(user); | ||
| 82 | -// } | ||
| 83 | - | ||
| 84 | @Override | 71 | @Override |
| 85 | public SysUserDO getUserByUserName(String username) { | 72 | public SysUserDO getUserByUserName(String username) { |
| 86 | return userMapper.selectByUsername(username); | 73 | return userMapper.selectByUsername(username); |
| @@ -322,7 +309,7 @@ public class SysUserServiceImpl implements SysUserService { | @@ -322,7 +309,7 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 322 | * @param id 用户 id | 309 | * @param id 用户 id |
| 323 | * @param oldPassword 旧密码 | 310 | * @param oldPassword 旧密码 |
| 324 | * @param newPassword 新密码 | 311 | * @param newPassword 新密码 |
| 325 | - * @return | 312 | + * @return 校验结果 |
| 326 | */ | 313 | */ |
| 327 | private boolean checkOldPassword(Long id, String oldPassword, String newPassword) { | 314 | private boolean checkOldPassword(Long id, String oldPassword, String newPassword) { |
| 328 | if (id == null || StrUtil.isBlank(oldPassword) || StrUtil.isBlank(newPassword)) { | 315 | if (id == null || StrUtil.isBlank(oldPassword) || StrUtil.isBlank(newPassword)) { |
| @@ -340,7 +327,7 @@ public class SysUserServiceImpl implements SysUserService { | @@ -340,7 +327,7 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 340 | } | 327 | } |
| 341 | 328 | ||
| 342 | @Override | 329 | @Override |
| 343 | - @Transactional // 添加事务,异常则回滚所有导入 | 330 | + @Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入 |
| 344 | public SysUserImportRespVO importUsers(List<SysUserImportExcelVO> importUsers, boolean isUpdateSupport) { | 331 | public SysUserImportRespVO importUsers(List<SysUserImportExcelVO> importUsers, boolean isUpdateSupport) { |
| 345 | if (CollUtil.isEmpty(importUsers)) { | 332 | if (CollUtil.isEmpty(importUsers)) { |
| 346 | throw ServiceExceptionUtil.exception(USER_IMPORT_LIST_IS_EMPTY); | 333 | throw ServiceExceptionUtil.exception(USER_IMPORT_LIST_IS_EMPTY); |
| @@ -381,8 +368,7 @@ public class SysUserServiceImpl implements SysUserService { | @@ -381,8 +368,7 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 381 | public int updateAvatar(Long id, InputStream avatarFile) { | 368 | public int updateAvatar(Long id, InputStream avatarFile) { |
| 382 | this.checkUserExists(id); | 369 | this.checkUserExists(id); |
| 383 | // 存储文件 | 370 | // 存储文件 |
| 384 | - String avatar; | ||
| 385 | - avatar = fileService.createFile(UUID.fastUUID().toString(), IoUtil.readBytes(avatarFile)); | 371 | + String avatar = fileService.createFile(IdUtil.fastUUID(), IoUtil.readBytes(avatarFile)); |
| 386 | // 更新路径 | 372 | // 更新路径 |
| 387 | SysUserDO sysUserDO = new SysUserDO(); | 373 | SysUserDO sysUserDO = new SysUserDO(); |
| 388 | sysUserDO.setId(id); | 374 | sysUserDO.setId(id); |
src/main/java/cn/iocoder/dashboard/modules/tool/service/codegen/impl/ToolCodegenServiceImpl.java
| @@ -109,7 +109,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | @@ -109,7 +109,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | ||
| 109 | } | 109 | } |
| 110 | 110 | ||
| 111 | @Override | 111 | @Override |
| 112 | - @Transactional | 112 | + @Transactional(rollbackFor = Exception.class) |
| 113 | public List<Long> createCodegenListFromDB(List<String> tableNames) { | 113 | public List<Long> createCodegenListFromDB(List<String> tableNames) { |
| 114 | List<Long> ids = new ArrayList<>(tableNames.size()); | 114 | List<Long> ids = new ArrayList<>(tableNames.size()); |
| 115 | // 遍历添加。虽然效率会低一点,但是没必要做成完全批量,因为不会这么大量 | 115 | // 遍历添加。虽然效率会低一点,但是没必要做成完全批量,因为不会这么大量 |
| @@ -118,7 +118,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | @@ -118,7 +118,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | ||
| 118 | } | 118 | } |
| 119 | 119 | ||
| 120 | @Override | 120 | @Override |
| 121 | - @Transactional | 121 | + @Transactional(rollbackFor = Exception.class) |
| 122 | public void updateCodegen(ToolCodegenUpdateReqVO updateReqVO) { | 122 | public void updateCodegen(ToolCodegenUpdateReqVO updateReqVO) { |
| 123 | // 校验是否已经存在 | 123 | // 校验是否已经存在 |
| 124 | if (codegenTableMapper.selectById(updateReqVO.getTable().getId()) == null) { | 124 | if (codegenTableMapper.selectById(updateReqVO.getTable().getId()) == null) { |
| @@ -134,7 +134,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | @@ -134,7 +134,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | ||
| 134 | } | 134 | } |
| 135 | 135 | ||
| 136 | @Override | 136 | @Override |
| 137 | - @Transactional | 137 | + @Transactional(rollbackFor = Exception.class) |
| 138 | public void syncCodegenFromDB(Long tableId) { | 138 | public void syncCodegenFromDB(Long tableId) { |
| 139 | // 校验是否已经存在 | 139 | // 校验是否已经存在 |
| 140 | ToolCodegenTableDO table = codegenTableMapper.selectById(tableId); | 140 | ToolCodegenTableDO table = codegenTableMapper.selectById(tableId); |
| @@ -149,7 +149,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | @@ -149,7 +149,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | ||
| 149 | } | 149 | } |
| 150 | 150 | ||
| 151 | @Override | 151 | @Override |
| 152 | - @Transactional | 152 | + @Transactional(rollbackFor = Exception.class) |
| 153 | public void syncCodegenFromSQL(Long tableId, String sql) { | 153 | public void syncCodegenFromSQL(Long tableId, String sql) { |
| 154 | // 校验是否已经存在 | 154 | // 校验是否已经存在 |
| 155 | ToolCodegenTableDO table = codegenTableMapper.selectById(tableId); | 155 | ToolCodegenTableDO table = codegenTableMapper.selectById(tableId); |
| @@ -201,7 +201,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | @@ -201,7 +201,7 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { | ||
| 201 | } | 201 | } |
| 202 | 202 | ||
| 203 | @Override | 203 | @Override |
| 204 | - @Transactional | 204 | + @Transactional(rollbackFor = Exception.class) |
| 205 | public void deleteCodegen(Long tableId) { | 205 | public void deleteCodegen(Long tableId) { |
| 206 | // 校验是否已经存在 | 206 | // 校验是否已经存在 |
| 207 | if (codegenTableMapper.selectById(tableId) == null) { | 207 | if (codegenTableMapper.selectById(tableId) == null) { |