diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/user/AdminUserServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/user/AdminUserServiceImpl.java index 39cb60cfa..bad0ec839 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/user/AdminUserServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/user/AdminUserServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.extra.spring.SpringUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.cf.imes.framework.common.enums.CommonStatusEnum; @@ -129,6 +130,15 @@ public class AdminUserServiceImpl implements AdminUserService { private static final String SPECIAL_CHARACTER_PATTERN = ".*[~!@#$%^&*()_+\\-=].*"; private static final String VALID_CHAR_PATTERN = "^[A-Za-z\\d~!@#$%^&*()_+\\-=]+$"; + /** + * 获得自身的代理对象,解决 AOP 生效问题 + * + * @return 自己 + */ + private AdminUserServiceImpl getSelf() { + return SpringUtil.getBean(getClass()); + } + @Override @Transactional(rollbackFor = Exception.class) public Long createUser(UserSaveReqVO createReqVO) { @@ -531,7 +541,7 @@ public class AdminUserServiceImpl implements AdminUserService { // 校验用户存在 AdminUserDO adminUserDO = validateUserExists(id); // 校验用户名唯一 - validateUsernameUnique(id, username, organId); + getSelf().validateUsernameUnique(id, username, organId); // 组织管理员不归属部门 if (ObjectUtil.isNotNull(deptId)) { // 校验部门处于开启状态