|
@@ -987,23 +987,23 @@ namespace Hotline.Api.Controllers
|
|
using var stream = new MemoryStream();
|
|
using var stream = new MemoryStream();
|
|
await file.CopyToAsync(stream);
|
|
await file.CopyToAsync(stream);
|
|
var items = stream.Query<KnowledgeImportTemplate>().ToList();
|
|
var items = stream.Query<KnowledgeImportTemplate>().ToList();
|
|
- if (items == null || !items.Any()) return "未读取到数据";
|
|
|
|
|
|
+ if (items == null || !items.Any()) throw new UserFriendlyException("未读取到数据");
|
|
|
|
|
|
if (items.Any(d => d.Attribution != "中心知识库" && d.Attribution != "部门知识库"))
|
|
if (items.Any(d => d.Attribution != "中心知识库" && d.Attribution != "部门知识库"))
|
|
- return "请正确输入知识归属";
|
|
|
|
- if (items.Any(d => d.IsPublic != "是" && d.IsPublic != "否"))
|
|
|
|
- return "请正确输入是否公开";
|
|
|
|
|
|
+ throw new UserFriendlyException("请正确输入知识归属");
|
|
|
|
+ if (items.Any(d => !string.IsNullOrEmpty(d.IsPublic) && d.IsPublic != "是" && d.IsPublic != "否"))
|
|
|
|
+ throw new UserFriendlyException("请正确输入是否公开");
|
|
if (items.Any(d => string.IsNullOrEmpty(d.Title)))
|
|
if (items.Any(d => string.IsNullOrEmpty(d.Title)))
|
|
- return "请输入标题";
|
|
|
|
|
|
+ throw new UserFriendlyException("请输入标题");
|
|
if (items.Any(d => string.IsNullOrEmpty(d.Content)))
|
|
if (items.Any(d => string.IsNullOrEmpty(d.Content)))
|
|
- return "请输入内容";
|
|
|
|
|
|
+ throw new UserFriendlyException("请输入内容");
|
|
|
|
|
|
var titles = items.Select(d => d.Title).ToList();
|
|
var titles = items.Select(d => d.Title).ToList();
|
|
var exists = await _knowledgeRepository.Queryable()
|
|
var exists = await _knowledgeRepository.Queryable()
|
|
.Where(d => titles.Contains(d.Title))
|
|
.Where(d => titles.Contains(d.Title))
|
|
.ToListAsync(HttpContext.RequestAborted);
|
|
.ToListAsync(HttpContext.RequestAborted);
|
|
if (exists.Any())
|
|
if (exists.Any())
|
|
- return $"标题重复:{string.Join(',', exists.Select(d => d.Title))}";
|
|
|
|
|
|
+ throw new UserFriendlyException($"标题重复:{string.Join(',', exists.Select(d => d.Title))}");
|
|
|
|
|
|
var inputLevelOneTypes = items.Select(d => d.KnowledgeTypeLevelOne)
|
|
var inputLevelOneTypes = items.Select(d => d.KnowledgeTypeLevelOne)
|
|
.Distinct().ToList();
|
|
.Distinct().ToList();
|
|
@@ -1013,7 +1013,7 @@ namespace Hotline.Api.Controllers
|
|
var existLevelOneNames = levelOneTypes.Select(d => d.Name);
|
|
var existLevelOneNames = levelOneTypes.Select(d => d.Name);
|
|
var notExists = inputLevelOneTypes.Except(existLevelOneNames).ToList();
|
|
var notExists = inputLevelOneTypes.Except(existLevelOneNames).ToList();
|
|
if (notExists.Any())
|
|
if (notExists.Any())
|
|
- return $"不存在的一级分类名称:{string.Join(',', notExists)}";
|
|
|
|
|
|
+ throw new UserFriendlyException($"不存在的一级分类名称:{string.Join(',', notExists)}");
|
|
|
|
|
|
var sb = new StringBuilder();
|
|
var sb = new StringBuilder();
|
|
var kns = new List<Knowledge>();
|
|
var kns = new List<Knowledge>();
|