|
@@ -8,6 +8,7 @@ import com.fs.common.core.controller.BaseController;
|
|
|
import com.fs.common.core.domain.AjaxResult;
|
|
|
import com.fs.common.core.domain.R;
|
|
|
import com.fs.common.core.page.TableDataInfo;
|
|
|
+import com.fs.common.core.redis.RedisCache;
|
|
|
import com.fs.common.enums.BusinessType;
|
|
|
import com.fs.common.utils.PatternUtils;
|
|
|
import com.fs.common.utils.ServletUtils;
|
|
@@ -70,6 +71,8 @@ public class CompanyUserController extends BaseController
|
|
|
private ICompanyUserDelayTimeService companyUserDelayTimeService;
|
|
|
@Autowired
|
|
|
private ISysConfigService configService;
|
|
|
+ @Autowired
|
|
|
+ private RedisCache redisCache;
|
|
|
/**
|
|
|
* 获取用户列表
|
|
|
*/
|
|
@@ -259,9 +262,29 @@ public class CompanyUserController extends BaseController
|
|
|
if (!PatternUtils.checkPassword(user.getPassword())) {
|
|
|
return AjaxResult.error("密码格式不正确,需包含字母、数字和特殊字符,长度为 8-20 位");
|
|
|
}
|
|
|
- return toAjax(companyUserService.resetUserPwdByUserId(user.getUserId(), SecurityUtils.encryptPassword(user.getPassword())));
|
|
|
+
|
|
|
+ LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
|
|
|
+
|
|
|
+ String newPassword = SecurityUtils.encryptPassword(user.getPassword());
|
|
|
+ int i = companyUserService.resetUserPwdByUserId(user.getUserId(), newPassword);
|
|
|
+
|
|
|
+ if (i > 0) {
|
|
|
+ // 更新缓存用户密码
|
|
|
+ loginUser.getUser().setPassword(SecurityUtils.encryptPassword(newPassword));
|
|
|
+ tokenService.setLoginUser(loginUser);
|
|
|
+ cleanFirstLogin(loginUser);
|
|
|
+ }
|
|
|
+
|
|
|
+ return toAjax(i);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 去除首次登录的标志
|
|
|
+ * @param loginUser
|
|
|
+ */
|
|
|
+ private void cleanFirstLogin(LoginUser loginUser) {
|
|
|
+ redisCache.deleteObject("newCompanyUser:" + loginUser.getUser().getCompanyId() + ":" + loginUser.getUser().getUserName());
|
|
|
+ }
|
|
|
/**
|
|
|
* 状态修改
|
|
|
*/
|