62 lines
1.8 KiB
C#
62 lines
1.8 KiB
C#
using WorkCameraExport.Services;
|
|
|
|
namespace WorkCameraExport.Models
|
|
{
|
|
/// <summary>
|
|
/// 应用配置 - 用户可配置项
|
|
/// </summary>
|
|
public class AppConfig
|
|
{
|
|
/// <summary>
|
|
/// 默认保存路径
|
|
/// </summary>
|
|
public string DefaultSavePath { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// 图片下载并发数 (1-10)
|
|
/// </summary>
|
|
public int ImageDownloadConcurrency { get; set; } = 5;
|
|
|
|
/// <summary>
|
|
/// 图片压缩质量 (30-100)
|
|
/// </summary>
|
|
public int ImageCompressQuality { get; set; } = 50;
|
|
|
|
/// <summary>
|
|
/// 自动清理临时文件
|
|
/// </summary>
|
|
public bool AutoCleanTempFiles { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// 验证并修正配置值
|
|
/// </summary>
|
|
public void Validate()
|
|
{
|
|
if (ImageDownloadConcurrency < 1) ImageDownloadConcurrency = 1;
|
|
if (ImageDownloadConcurrency > 10) ImageDownloadConcurrency = 10;
|
|
|
|
if (ImageCompressQuality < 30) ImageCompressQuality = 30;
|
|
if (ImageCompressQuality > 100) ImageCompressQuality = 100;
|
|
|
|
if (string.IsNullOrWhiteSpace(DefaultSavePath))
|
|
{
|
|
DefaultSavePath = PathService.ExportDirectory;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 创建默认配置
|
|
/// </summary>
|
|
public static AppConfig CreateDefault()
|
|
{
|
|
return new AppConfig
|
|
{
|
|
DefaultSavePath = PathService.ExportDirectory,
|
|
ImageDownloadConcurrency = 5,
|
|
ImageCompressQuality = 50,
|
|
AutoCleanTempFiles = true
|
|
};
|
|
}
|
|
}
|
|
}
|