WorkCamera/client/WorkCameraExport/Services/Interfaces/IConfigService.cs
2026-01-05 23:58:56 +08:00

79 lines
1.9 KiB
C#

using WorkCameraExport.Models;
namespace WorkCameraExport.Services.Interfaces
{
/// <summary>
/// 配置服务接口 - 负责配置文件和登录凭证的管理
/// </summary>
public interface IConfigService
{
#region
/// <summary>
/// 加载应用配置
/// </summary>
/// <returns>应用配置对象</returns>
AppConfig LoadConfig();
/// <summary>
/// 保存应用配置
/// </summary>
/// <param name="config">应用配置对象</param>
void SaveConfig(AppConfig config);
#endregion
#region
/// <summary>
/// 保存登录凭证(加密存储)
/// </summary>
/// <param name="serverUrl">服务器地址</param>
/// <param name="token">认证 Token</param>
/// <param name="username">用户名</param>
void SaveCredentials(string serverUrl, string token, string username);
/// <summary>
/// 加载登录凭证
/// </summary>
/// <returns>凭证信息,如果不存在则返回 null</returns>
(string ServerUrl, string Token, string Username)? LoadCredentials();
/// <summary>
/// 清除登录凭证
/// </summary>
void ClearCredentials();
/// <summary>
/// 检查是否有保存的凭证
/// </summary>
bool HasSavedCredentials { get; }
#endregion
#region
/// <summary>
/// 获取应用数据目录
/// </summary>
string AppDataPath { get; }
/// <summary>
/// 获取临时文件目录
/// </summary>
string TempPath { get; }
/// <summary>
/// 获取日志目录
/// </summary>
string LogPath { get; }
/// <summary>
/// 清理临时文件
/// </summary>
void CleanTempFiles();
#endregion
}
}