|
@@ -38,6 +38,8 @@ import com.fs.framework.web.service.SysLoginService;
|
|
|
import com.fs.framework.web.service.SysPermissionService;
|
|
import com.fs.framework.web.service.SysPermissionService;
|
|
|
import com.fs.system.service.ISysMenuService;
|
|
import com.fs.system.service.ISysMenuService;
|
|
|
import com.fs.system.service.IAdminMenuService;
|
|
import com.fs.system.service.IAdminMenuService;
|
|
|
|
|
+import com.fs.system.service.ISysConfigService;
|
|
|
|
|
+import com.fs.system.domain.SysConfig;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 登录验证
|
|
* 登录验证
|
|
@@ -85,6 +87,9 @@ public class SysLoginController
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private UserDetailsService userDetailsService;
|
|
private UserDetailsService userDetailsService;
|
|
|
|
|
|
|
|
|
|
+// @Autowired
|
|
|
|
|
+// private ISysConfigService configService;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 登录方法
|
|
* 登录方法
|
|
|
*
|
|
*
|
|
@@ -171,19 +176,47 @@ public class SysLoginController
|
|
|
return AjaxResult.success(adminMenuService.buildAdminMenus(menus));
|
|
return AjaxResult.success(adminMenuService.buildAdminMenus(menus));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+// @GetMapping("getFirstLogin")
|
|
|
|
|
+// public AjaxResult getFirstLogin()
|
|
|
|
|
+// {
|
|
|
|
|
+// SysConfig config = configService.selectConfigByConfigKey("his.login");
|
|
|
|
|
+// if (config != null && config.getConfigValue() != null) {
|
|
|
|
|
+// String configValue = config.getConfigValue();
|
|
|
|
|
+// JSONObject jsonObject = JSONObject.parseObject(configValue);
|
|
|
|
|
+// Boolean disabled = jsonObject.getBoolean("disabled");
|
|
|
|
|
+// if (Boolean.TRUE.equals(disabled)) {
|
|
|
|
|
+// LoginUser loginUser = SecurityUtils.getLoginUser();
|
|
|
|
|
+// Boolean isFirstLogin = redisCache.getCacheObject("firstLogin:admin:" + loginUser.getUser().getUserId());
|
|
|
|
|
+// return AjaxResult.success(isFirstLogin != null && isFirstLogin);
|
|
|
|
|
+// }
|
|
|
|
|
+// }
|
|
|
|
|
+// return AjaxResult.success(false);
|
|
|
|
|
+// }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 租户总后台:根据 his.login 配置判断是否需要首次登录改密(与 company 端逻辑对齐,使用 SysUser)
|
|
|
|
|
+ */
|
|
|
@GetMapping("getFirstLogin")
|
|
@GetMapping("getFirstLogin")
|
|
|
public AjaxResult getFirstLogin()
|
|
public AjaxResult getFirstLogin()
|
|
|
{
|
|
{
|
|
|
SysConfig config = configService.selectConfigByConfigKey("his.login");
|
|
SysConfig config = configService.selectConfigByConfigKey("his.login");
|
|
|
- if (config != null && config.getConfigValue() != null) {
|
|
|
|
|
- String configValue = config.getConfigValue();
|
|
|
|
|
- JSONObject jsonObject = JSONObject.parseObject(configValue);
|
|
|
|
|
- Boolean disabled = jsonObject.getBoolean("disabled");
|
|
|
|
|
- if (Boolean.TRUE.equals(disabled)) {
|
|
|
|
|
- LoginUser loginUser = SecurityUtils.getLoginUser();
|
|
|
|
|
- Boolean isFirstLogin = redisCache.getCacheObject("firstLogin:admin:" + loginUser.getUser().getUserId());
|
|
|
|
|
- return AjaxResult.success(isFirstLogin != null && isFirstLogin);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ if (config == null || config.getConfigValue() == null) {
|
|
|
|
|
+ return AjaxResult.success(false);
|
|
|
|
|
+ }
|
|
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(config.getConfigValue());
|
|
|
|
|
+ Boolean enabled = jsonObject.getBoolean("disabled");
|
|
|
|
|
+ if (!Boolean.TRUE.equals(enabled)) {
|
|
|
|
|
+ return AjaxResult.success(false);
|
|
|
|
|
+ }
|
|
|
|
|
+ LoginUser loginUser = SecurityUtils.getLoginUser();
|
|
|
|
|
+ if (loginUser == null || loginUser.getUser() == null) {
|
|
|
|
|
+ return AjaxResult.success(false);
|
|
|
|
|
+ }
|
|
|
|
|
+ Long tenantId = loginUser.getTenantId();
|
|
|
|
|
+ String cacheKey = "newSysUser:" + (tenantId != null ? tenantId : 0) + ":" + loginUser.getUsername();
|
|
|
|
|
+ Long flaggedUserId = redisCache.getCacheObject(cacheKey);
|
|
|
|
|
+ if (flaggedUserId != null && flaggedUserId.equals(loginUser.getUserId())) {
|
|
|
|
|
+ return AjaxResult.success(true);
|
|
|
}
|
|
}
|
|
|
return AjaxResult.success(false);
|
|
return AjaxResult.success(false);
|
|
|
}
|
|
}
|