新增登录页图形验证码功能,支持通过Redis全局配置控制验证码的启用状态,优化登录流程以提升用户体验。新增相关API接口和前端配置项,确保验证码逻辑与后端同步。
This commit is contained in:
@@ -4,6 +4,7 @@ import { computed } from 'vue';
|
||||
|
||||
import { useAppStore } from '/@/store/modules/app';
|
||||
import { ContentEnum, ThemeEnum } from '/@/enums/appEnum';
|
||||
import projectSetting from '/@/settings/projectSetting';
|
||||
|
||||
type RootSetting = Omit<ProjectConfig, 'locale' | 'headerSetting' | 'menuSetting' | 'multiTabsSetting'>;
|
||||
|
||||
@@ -45,6 +46,18 @@ export function useRootSetting() {
|
||||
const getGrayMode = computed(() => appStore.getProjectConfig.grayMode);
|
||||
// 代码逻辑说明: 【QQYUN-10952】AI助手支持通过设置来配置是否显示
|
||||
const getAiIconShow = computed(() => appStore.getProjectConfig.aiIconShow);
|
||||
/** 与 projectSetting 默认合并:旧缓存无该字段时不再误判为「开启验证码」;兼容异常字符串缓存 */
|
||||
const getLoginCaptchaEnabled = computed(() => {
|
||||
const v = appStore.getProjectConfig.loginCaptchaEnabled;
|
||||
if (v === undefined || v === null) {
|
||||
return projectSetting.loginCaptchaEnabled;
|
||||
}
|
||||
if (typeof v === 'string') {
|
||||
const s = v.trim().toLowerCase();
|
||||
return s === 'true' || s === '1';
|
||||
}
|
||||
return Boolean(v);
|
||||
});
|
||||
const getLockTime = computed(() => appStore.getProjectConfig.lockTime);
|
||||
|
||||
const getShowDarkModeToggle = computed(() => appStore.getProjectConfig.showDarkModeToggle);
|
||||
@@ -86,5 +99,6 @@ export function useRootSetting() {
|
||||
setDarkMode,
|
||||
getShowDarkModeToggle,
|
||||
getAiIconShow,
|
||||
getLoginCaptchaEnabled,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user