diff --git a/frontend/src/widgets/instance/dialogs/NewSchedule.vue b/frontend/src/widgets/instance/dialogs/NewSchedule.vue
new file mode 100644
index 00000000..7c85e7c1
--- /dev/null
+++ b/frontend/src/widgets/instance/dialogs/NewSchedule.vue
@@ -0,0 +1,246 @@
+
+
+
+
+
+ {{ t("计划任务名字") }}
+
+
+ {{ t("必填,且必须唯一") }}
+
+
+
+
+
+
+ {{ t("任务动作 / 类型") }}
+
+
+
+
+ {{ action }}
+
+
+
+
+
+
+ {{ type }}
+
+
+
+
+
+
+
+
+
+ {{ t("每隔一定时间将执行一次,具体间隔可以仔细设置") }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("触发时间") }}
+
+
+
+
+
+
+
+ {{ t("执行次数") }}
+
+
+
+
+
+ {{ t("请选择日期和时间") }}
+
+
+
+
+ {{ t("任务有效负载") }}
+
+
+ {{ t("比如命令,文件名或其他参数等") }}
+
+
+
+
+
+
diff --git a/panel/src/app/service/frontend_layout.ts b/panel/src/app/service/frontend_layout.ts
index 7b92e6b7..55d2e6ec 100644
--- a/panel/src/app/service/frontend_layout.ts
+++ b/panel/src/app/service/frontend_layout.ts
@@ -256,6 +256,28 @@ function getDefaultFrontendLayoutConfig(): IPageLayoutConfig[] {
}
]
},
+ {
+ page: "/instances/schedule",
+ items: [
+ {
+ id: getRandomId(),
+ meta: {},
+ type: "Schedule",
+ title: t("计划任务"),
+ width: 12,
+ height: LayoutCardHeight.AUTO,
+ disableDelete: true
+ },
+ {
+ id: getRandomId(),
+ meta: {},
+ type: "EmptyCard",
+ title: "",
+ width: 12,
+ height: LayoutCardHeight.MINI
+ }
+ ]
+ },
{
page: "/users",
items: [