style: 添加日志查看
This commit is contained in:
@@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
using Yi.Framework.Bbs.Domain.Entities;
|
using Yi.Framework.Bbs.Domain.Entities;
|
||||||
using Yi.Framework.Bbs.Domain.Shared.Model;
|
using Yi.Framework.Bbs.Domain.Shared.Model;
|
||||||
|
|
||||||
@@ -10,7 +11,12 @@ namespace Yi.Framework.Bbs.Domain.Managers.ArticleImport
|
|||||||
{
|
{
|
||||||
public abstract class AbstractArticleImport
|
public abstract class AbstractArticleImport
|
||||||
{
|
{
|
||||||
public virtual List<ArticleEntity> Import(Guid discussId,Guid articleParentId, List<FileObject> fileObjs)
|
public void SetLogger(ILoggerFactory loggerFactory)
|
||||||
|
{
|
||||||
|
LoggerFactory = loggerFactory;
|
||||||
|
}
|
||||||
|
protected ILoggerFactory LoggerFactory { get; set; }
|
||||||
|
public virtual List<ArticleEntity> Import(Guid discussId, Guid articleParentId, List<FileObject> fileObjs)
|
||||||
{
|
{
|
||||||
var articles = Convert(fileObjs);
|
var articles = Convert(fileObjs);
|
||||||
articles.ForEach(article =>
|
articles.ForEach(article =>
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
using Yi.Framework.Bbs.Domain.Entities;
|
using Yi.Framework.Bbs.Domain.Entities;
|
||||||
using Yi.Framework.Bbs.Domain.Shared.Model;
|
using Yi.Framework.Bbs.Domain.Shared.Model;
|
||||||
|
|
||||||
@@ -12,6 +13,8 @@ namespace Yi.Framework.Bbs.Domain.Managers.ArticleImport
|
|||||||
{
|
{
|
||||||
public override List<ArticleEntity> Convert(List<FileObject> fileObjs)
|
public override List<ArticleEntity> Convert(List<FileObject> fileObjs)
|
||||||
{
|
{
|
||||||
|
var logger = LoggerFactory.CreateLogger<VuePressArticleImport>();
|
||||||
|
|
||||||
//排序及处理目录名称
|
//排序及处理目录名称
|
||||||
var fileNameHandler = fileObjs.OrderBy(x => x.FileName).Select(x =>
|
var fileNameHandler = fileObjs.OrderBy(x => x.FileName).Select(x =>
|
||||||
{
|
{
|
||||||
@@ -24,34 +27,38 @@ namespace Yi.Framework.Bbs.Domain.Managers.ArticleImport
|
|||||||
|
|
||||||
|
|
||||||
//处理内容
|
//处理内容
|
||||||
var fileContentHandler= fileNameHandler.Select(x =>
|
var fileContentHandler = fileNameHandler.Select(x =>
|
||||||
{
|
{
|
||||||
var f = new FileObject { FileName = x.FileName };
|
logger.LogError($"老的值:{x.Content}");
|
||||||
var lines = x.Content.SplitToLines();
|
var f = new FileObject { FileName = x.FileName };
|
||||||
|
var lines = x.Content.SplitToLines();
|
||||||
|
|
||||||
var num = 0;
|
var num = 0;
|
||||||
var startIndex = 0;
|
var startIndex = 0;
|
||||||
for (int i = 0; i < lines.Length; i++)
|
for (int i = 0; i < lines.Length; i++)
|
||||||
{
|
{
|
||||||
if (lines[i] == "---")
|
if (lines[i] == "---")
|
||||||
{
|
{
|
||||||
num++;
|
num++;
|
||||||
if (num == 2)
|
if (num == 2)
|
||||||
{
|
{
|
||||||
startIndex = i;
|
startIndex = i;
|
||||||
break;
|
logger.LogError($"startIndex={startIndex}");
|
||||||
}
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
var linesRef = lines.ToList();
|
var linesRef = lines.ToList();
|
||||||
|
|
||||||
linesRef.RemoveRange(0, startIndex+1);
|
linesRef.RemoveRange(0, startIndex + 1);
|
||||||
var result = string.Join(Environment.NewLine, linesRef);
|
|
||||||
f.Content = result;
|
var result = string.Join(Environment.NewLine, linesRef);
|
||||||
return f;
|
logger.LogError($"新的值:{result}");
|
||||||
});
|
f.Content = result;
|
||||||
|
return f;
|
||||||
|
});
|
||||||
|
|
||||||
var output = fileContentHandler.Select(x => new ArticleEntity() { Content = x.Content, Name = x.FileName }).ToList();
|
var output = fileContentHandler.Select(x => new ArticleEntity() { Content = x.Content, Name = x.FileName }).ToList();
|
||||||
|
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ namespace Yi.Framework.Bbs.Domain.Managers
|
|||||||
AbstractArticleImport abstractArticleImport = default;
|
AbstractArticleImport abstractArticleImport = default;
|
||||||
switch (importType)
|
switch (importType)
|
||||||
{
|
{
|
||||||
case ArticleImportTypeEnum.Default:
|
case ArticleImportTypeEnum.Defalut:
|
||||||
abstractArticleImport = new DefaultArticleImport();
|
abstractArticleImport = new DefaultArticleImport();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
@@ -67,7 +67,7 @@ namespace Yi.Framework.Bbs.Domain.Managers
|
|||||||
|
|
||||||
default: abstractArticleImport = new DefaultArticleImport(); break;
|
default: abstractArticleImport = new DefaultArticleImport(); break;
|
||||||
}
|
}
|
||||||
|
abstractArticleImport.SetLogger(LoggerFactory);
|
||||||
var articleHandled = abstractArticleImport.Import(discussId, articleParentId, fileObjs);
|
var articleHandled = abstractArticleImport.Import(discussId, articleParentId, fileObjs);
|
||||||
|
|
||||||
await _articleRepository.InsertManyAsync(articleHandled);
|
await _articleRepository.InsertManyAsync(articleHandled);
|
||||||
|
|||||||
Reference in New Issue
Block a user