fix: persist execution.dryrun setting and add headless mode option for User
- Add EXECUTION_DRYRUN to save_to_env() to fix dryrun setting not persisting after restart - Add headless mode checkbox in User mode settings for browser visibility control Co-Authored-By: Claude (glm-5) <noreply@anthropic.com>
This commit is contained in:
@@ -162,6 +162,8 @@ class ConfigLoader:
|
|||||||
"VALIDATION_ENABLE_CRUD": config.validation.enable_crud_operations,
|
"VALIDATION_ENABLE_CRUD": config.validation.enable_crud_operations,
|
||||||
"VALIDATION_DEFAULT_MANAGER": config.validation.default_manager,
|
"VALIDATION_DEFAULT_MANAGER": config.validation.default_manager,
|
||||||
"VALIDATION_MATCH_MODE": config.validation.match_mode,
|
"VALIDATION_MATCH_MODE": config.validation.match_mode,
|
||||||
|
# 执行配置
|
||||||
|
"EXECUTION_DRYRUN": config.execution.dryrun,
|
||||||
}
|
}
|
||||||
|
|
||||||
return save_env_file(env_file, env_dict)
|
return save_env_file(env_file, env_dict)
|
||||||
|
|||||||
@@ -333,12 +333,26 @@ class SettingsTab(ttk.Frame):
|
|||||||
).grid(row=0, column=0, sticky="w", pady=5)
|
).grid(row=0, column=0, sticky="w", pady=5)
|
||||||
|
|
||||||
# 说明文字
|
# 说明文字
|
||||||
hint_label = ttk.Label(
|
dryrun_hint = ttk.Label(
|
||||||
group,
|
group,
|
||||||
text="提示:勾选后,执行删除操作时将只预览不实际保存,用于测试流程。",
|
text="提示:勾选后,执行删除操作时将只预览不实际保存,用于测试流程。",
|
||||||
foreground="gray",
|
foreground="gray",
|
||||||
)
|
)
|
||||||
hint_label.grid(row=1, column=0, sticky="w", pady=(0, 5))
|
dryrun_hint.grid(row=1, column=0, sticky="w", pady=(0, 5))
|
||||||
|
|
||||||
|
# 无头模式设置
|
||||||
|
self.user_headless_var = tk.BooleanVar(value=True)
|
||||||
|
ttk.Checkbutton(
|
||||||
|
group, text="无头模式 (不显示浏览器)", variable=self.user_headless_var
|
||||||
|
).grid(row=2, column=0, sticky="w", pady=5)
|
||||||
|
|
||||||
|
# 说明文字
|
||||||
|
headless_hint = ttk.Label(
|
||||||
|
group,
|
||||||
|
text="提示:勾选后浏览器将在后台运行,不显示窗口。",
|
||||||
|
foreground="gray",
|
||||||
|
)
|
||||||
|
headless_hint.grid(row=3, column=0, sticky="w", pady=(0, 5))
|
||||||
|
|
||||||
def _create_extraction_group(self, parent):
|
def _create_extraction_group(self, parent):
|
||||||
"""创建处理配置组"""
|
"""创建处理配置组"""
|
||||||
@@ -516,6 +530,8 @@ class SettingsTab(ttk.Frame):
|
|||||||
)
|
)
|
||||||
# 执行设置
|
# 执行设置
|
||||||
self.user_dryrun_var.set(self.config.get("execution.dryrun", False))
|
self.user_dryrun_var.set(self.config.get("execution.dryrun", False))
|
||||||
|
# 无头模式
|
||||||
|
self.user_headless_var.set(self.config.get("erp.headless", True))
|
||||||
return
|
return
|
||||||
|
|
||||||
# 管理员模式 - 加载所有配置
|
# 管理员模式 - 加载所有配置
|
||||||
@@ -612,6 +628,8 @@ class SettingsTab(ttk.Frame):
|
|||||||
)
|
)
|
||||||
# 保存执行设置
|
# 保存执行设置
|
||||||
self.config.set("execution.dryrun", self.user_dryrun_var.get())
|
self.config.set("execution.dryrun", self.user_dryrun_var.get())
|
||||||
|
# 无头模式
|
||||||
|
self.config.set("erp.headless", self.user_headless_var.get())
|
||||||
|
|
||||||
# 保存到文件
|
# 保存到文件
|
||||||
if self.config.save():
|
if self.config.save():
|
||||||
|
|||||||
Reference in New Issue
Block a user