|
@@ -1,23 +1,17 @@
|
|
-using DocumentFormat.OpenXml.EMMA;
|
|
|
|
-using Hotline.Application.Tools;
|
|
|
|
|
|
+using Hotline.Application.Tools;
|
|
using Hotline.Configurations;
|
|
using Hotline.Configurations;
|
|
using Hotline.KnowledgeBase;
|
|
using Hotline.KnowledgeBase;
|
|
using Hotline.Pdf;
|
|
using Hotline.Pdf;
|
|
using Hotline.Repository.SqlSugar.Extensions;
|
|
using Hotline.Repository.SqlSugar.Extensions;
|
|
-using Hotline.Settings;
|
|
|
|
using Hotline.Settings.Hotspots;
|
|
using Hotline.Settings.Hotspots;
|
|
using Hotline.Share.Dtos;
|
|
using Hotline.Share.Dtos;
|
|
using Hotline.Share.Dtos.Knowledge;
|
|
using Hotline.Share.Dtos.Knowledge;
|
|
-using Hotline.Share.Enums.Article;
|
|
|
|
using Hotline.Share.Enums.KnowledgeBase;
|
|
using Hotline.Share.Enums.KnowledgeBase;
|
|
|
|
+using Hotline.Share.Requests;
|
|
using Hotline.Share.Tools;
|
|
using Hotline.Share.Tools;
|
|
-using Hotline.Users;
|
|
|
|
using Mapster;
|
|
using Mapster;
|
|
using MapsterMapper;
|
|
using MapsterMapper;
|
|
-using Microsoft.AspNetCore.Http;
|
|
|
|
-using Microsoft.AspNetCore.Mvc;
|
|
|
|
using Microsoft.Extensions.Options;
|
|
using Microsoft.Extensions.Options;
|
|
-using Org.BouncyCastle.Utilities.IO;
|
|
|
|
using PanGu;
|
|
using PanGu;
|
|
using SqlSugar;
|
|
using SqlSugar;
|
|
using XF.Domain.Authentications;
|
|
using XF.Domain.Authentications;
|
|
@@ -521,5 +515,20 @@ namespace Hotline.Application.Knowledge
|
|
}
|
|
}
|
|
return await sugar.Select<KnowledgeRetrievalDataDto>().ToPagedListAsync(dto.PageIndex, dto.PageSize);
|
|
return await sugar.Select<KnowledgeRetrievalDataDto>().ToPagedListAsync(dto.PageIndex, dto.PageSize);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ public ISugarQueryable<KnowedgeStatisticsDto> GetKnowedgeStatistics(PagedKeywordRequest dto)
|
|
|
|
+ {
|
|
|
|
+ return _knowledgeRepository.Queryable()
|
|
|
|
+ .Includes(p => p.SourceOrganize)
|
|
|
|
+ .WhereIF(dto.StartTime.HasValue, p => p.LastModificationTime >= dto.StartTime)
|
|
|
|
+ .WhereIF(dto.EndTime.HasValue, p => p.LastModificationTime <= dto.EndTime)
|
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.Keyword), p => p.SourceOrganize.Name.Contains(dto.Keyword))
|
|
|
|
+ .Select(p => new KnowedgeStatisticsDto
|
|
|
|
+ {
|
|
|
|
+ LastModificationTime = p.LastModificationTime,
|
|
|
|
+ OrgName = p.SourceOrganize.Name
|
|
|
|
+ })
|
|
|
|
+ .OrderByDescending(p => p.LastModificationTime);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|