相关bug调整
This commit is contained in:
+18
@@ -142,6 +142,24 @@ public class OnboardingEntryConfigService : IOnboardingEntryConfigService
|
||||
throw Oops.Bah("资料名称不能为空");
|
||||
if (input.MaxFileCount <= 0)
|
||||
throw Oops.Bah("最大文件数量必须大于0");
|
||||
if (input.MaxFileSizeMb.HasValue && (input.MaxFileSizeMb.Value <= 0 || input.MaxFileSizeMb.Value > 20))
|
||||
throw Oops.Bah("单个文件大小必须设置在1至20MB之间");
|
||||
|
||||
var supportedExtensions = new HashSet<string>(StringComparer.OrdinalIgnoreCase)
|
||||
{
|
||||
"png", "jpg", "jpeg", "gif", "bmp", "webp", "pdf"
|
||||
};
|
||||
var allowedExtensions = (input.AllowedExtensions ?? string.Empty)
|
||||
.Split(',', StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries)
|
||||
.Select(item => item.TrimStart('.').ToLowerInvariant())
|
||||
.Distinct(StringComparer.OrdinalIgnoreCase)
|
||||
.ToList();
|
||||
if (allowedExtensions.Count == 0)
|
||||
allowedExtensions.AddRange(new[] { "png", "jpg", "jpeg", "pdf" });
|
||||
var unsupportedExtensions = allowedExtensions.Where(item => !supportedExtensions.Contains(item)).ToList();
|
||||
if (unsupportedExtensions.Count > 0)
|
||||
throw Oops.Bah($"不支持的材料扩展名:{string.Join("、", unsupportedExtensions)},仅允许图片或PDF文件");
|
||||
input.AllowedExtensions = string.Join(",", allowedExtensions);
|
||||
|
||||
var materialCodeExists = await _db.Queryable<ObMaterialType>()
|
||||
.AnyAsync(x => x.MaterialCode == input.MaterialCode && x.Id != input.Id);
|
||||
|
||||
Reference in New Issue
Block a user