diff --git a/packages/libs/lib-server/src/system/settings/service/models.ts b/packages/libs/lib-server/src/system/settings/service/models.ts
index a482e4dcb..563a3df7d 100644
--- a/packages/libs/lib-server/src/system/settings/service/models.ts
+++ b/packages/libs/lib-server/src/system/settings/service/models.ts
@@ -32,6 +32,7 @@ export class SysPublicSettings extends BaseSettings {
customFooter?: string;
robots?: boolean = true;
aiChatEnabled = true;
+ homePageEnabled = true;
//验证码是否开启
@@ -271,4 +272,3 @@ export class SysSafeSetting extends BaseSettings {
autoHiddenTimes: 5,
};
}
-
diff --git a/packages/ui/certd-client/src/locales/langs/en-US/certd/sys-settings.ts b/packages/ui/certd-client/src/locales/langs/en-US/certd/sys-settings.ts
index cdb4fccc7..b8e62dc17 100644
--- a/packages/ui/certd-client/src/locales/langs/en-US/certd/sys-settings.ts
+++ b/packages/ui/certd-client/src/locales/langs/en-US/certd/sys-settings.ts
@@ -16,6 +16,7 @@ export default {
showRunStrategy: "Show RunStrategy",
showRunStrategyHelper: "Allow modify the run strategy of the task",
+ homePageEnabled: "Enable Home Page",
captchaEnabled: "Enable Login Captcha",
captchaHelper: "Whether to enable captcha verification for login",
diff --git a/packages/ui/certd-client/src/locales/langs/zh-CN/certd/sys-settings.ts b/packages/ui/certd-client/src/locales/langs/zh-CN/certd/sys-settings.ts
index df8ac0b7f..2e01e5354 100644
--- a/packages/ui/certd-client/src/locales/langs/zh-CN/certd/sys-settings.ts
+++ b/packages/ui/certd-client/src/locales/langs/zh-CN/certd/sys-settings.ts
@@ -18,6 +18,7 @@ export default {
showRunStrategy: "显示运行策略选择",
showRunStrategyHelper: "任务设置中是否允许选择运行策略",
+ homePageEnabled: "启用首页",
captchaEnabled: "启用登录验证码",
captchaHelper: "登录时是否启用验证码",
diff --git a/packages/ui/certd-client/src/router/guard.ts b/packages/ui/certd-client/src/router/guard.ts
index 87c84506f..0acc67df6 100644
--- a/packages/ui/certd-client/src/router/guard.ts
+++ b/packages/ui/certd-client/src/router/guard.ts
@@ -47,6 +47,13 @@ export function setupCommonGuard(router: Router) {
const settingStore = useSettingStore();
await settingStore.initOnce();
+ if (to.path === "/" && settingStore.sysPublic?.homePageEnabled === false) {
+ return {
+ path: DEFAULT_HOME_PATH,
+ replace: true,
+ };
+ }
+
to.meta.loaded = loadedPaths.has(to.path);
// 页面加载进度条
diff --git a/packages/ui/certd-client/src/store/settings/api.basic.ts b/packages/ui/certd-client/src/store/settings/api.basic.ts
index 30512ec87..8fc64bf79 100644
--- a/packages/ui/certd-client/src/store/settings/api.basic.ts
+++ b/packages/ui/certd-client/src/store/settings/api.basic.ts
@@ -48,6 +48,7 @@ export type SysPublicSetting = {
customFooter?: string;
robots?: boolean;
aiChatEnabled?: boolean;
+ homePageEnabled?: boolean;
showRunStrategy?: boolean;
diff --git a/packages/ui/certd-client/src/store/settings/index.tsx b/packages/ui/certd-client/src/store/settings/index.tsx
index 050455452..c5e2bc0d1 100644
--- a/packages/ui/certd-client/src/store/settings/index.tsx
+++ b/packages/ui/certd-client/src/store/settings/index.tsx
@@ -81,6 +81,7 @@ export const useSettingStore = defineStore({
registerEnabled: false,
managerOtherUserPipeline: false,
icpNo: env.ICP_NO || "",
+ homePageEnabled: true,
},
installInfo: {
siteId: "",
diff --git a/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue b/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue
index e429199e2..d006cde6c 100644
--- a/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue
+++ b/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue
@@ -14,6 +14,9 @@
+
+
+
@@ -62,6 +65,7 @@ const formState = reactive>({
public: {
icpNo: "",
mpsNo: "",
+ homePageEnabled: true,
},
private: {},
});