Files
mayfly-go/frontend/src/common/sysconfig.ts

113 lines
2.6 KiB
TypeScript
Raw Normal View History

import openApi from './openApi';
// 登录是否使用验证码配置key
const AccountLoginSecurityKey = 'AccountLoginSecurity';
const MachineConfigKey = 'MachineConfig';
const SysStyleConfigKey = 'SysStyleConfig';
2023-06-17 15:15:03 +08:00
/**
*
*
* @returns
2023-06-17 15:15:03 +08:00
*/
export async function getAccountLoginSecurity(): Promise<any> {
const value = await getConfigValue(AccountLoginSecurityKey);
if (!value) {
2023-06-17 15:15:03 +08:00
return null;
}
2023-06-17 15:15:03 +08:00
const jsonValue = JSON.parse(value);
jsonValue.useCaptcha = convertBool(jsonValue.useCaptcha, true);
jsonValue.useOtp = convertBool(jsonValue.useOtp, true);
return jsonValue;
}
/**
* logotitle等
*
* @returns
*/
export async function getSysStyleConfig(): Promise<any> {
const value = await getConfigValue(SysStyleConfigKey);
2023-10-31 12:36:04 +08:00
const defaultValue = {
useWatermark: true,
2023-10-31 12:36:04 +08:00
};
2023-10-14 00:38:51 +08:00
if (!value) {
2023-10-31 12:36:04 +08:00
return defaultValue;
}
const jsonValue = JSON.parse(value);
// 将字符串转为bool
jsonValue.useWatermark = convertBool(jsonValue.useWatermark, true);
return jsonValue;
2023-06-17 15:15:03 +08:00
}
2023-08-23 22:09:41 +08:00
/**
* LDAP登录配置
*
* @returns
*/
export async function getLdapEnabled(): Promise<any> {
const value = await openApi.getLdapEnabled();
return convertBool(value, false);
}
/**
*
*
* @returns
*/
export async function getMachineConfig(): Promise<any> {
const value = await getConfigValue(MachineConfigKey);
const defaultValue = {
// 默认1gb
uploadMaxFileSize: '1GB',
};
if (!value) {
return defaultValue;
}
try {
const jsonValue = JSON.parse(value);
return jsonValue;
} catch (e) {
return defaultValue;
}
}
2024-11-20 22:43:53 +08:00
/**
*
*
* @returns
*/
export async function getServerConf(): Promise<any> {
return openApi.getServerConf();
}
/**
*
*
* @param key key
* @returns
*/
export async function getConfigValue(key: string): Promise<string> {
return (await openApi.getConfigValue({ key })) as string;
}
/**
* bool类型系统配置值
*
* @param key key
* @param defaultValue
* @returns ture1: true其他: false
*/
export async function getBoolConfigValue(key: string, defaultValue: boolean): Promise<boolean> {
const value = await getConfigValue(key);
return convertBool(value, defaultValue);
}
function convertBool(value: string, defaultValue: boolean) {
if (!value) {
return defaultValue;
}
return value == '1' || value == 'true';
}