|
@@ -280,7 +280,7 @@ namespace Hotline.Api.Controllers
|
|
|
{
|
|
|
var (total, items) = await _knowledgeRepository.Queryable()
|
|
|
.Where(x => x.Status == EKnowledgeStatus.OnShelf)
|
|
|
- .Where(x => x.ExpiredTime >= DateTime.Now)
|
|
|
+ .Where(x => (x.ExpiredTime != null && x.ExpiredTime >= DateTime.Now) || x.ExpiredTime == null)
|
|
|
.OrderByDescending(x => x.SearchNum)
|
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
|
return new PagedDto<KnowledgeDto>(total, _mapper.Map<IReadOnlyList<KnowledgeDto>>(items));
|
|
@@ -346,7 +346,7 @@ namespace Hotline.Api.Controllers
|
|
|
if (collect != null)
|
|
|
knowledgeShowInfoDto.Collect = _mapper.Map<KnowledgeCollectDto>(collect);
|
|
|
//关联知识
|
|
|
- var knowledges = await _knowledgeRepository.Queryable().In(x => x.Id, knowledge.Knowledges).ToListAsync();
|
|
|
+ var knowledges = await _knowledgeRepository.Queryable().In(x => x.Id, knowledge.Knowledges).Where(x=>x.Status == EKnowledgeStatus.OnShelf &&((x.ExpiredTime != null && x.ExpiredTime >= DateTime.Now) || x.ExpiredTime == null)).ToListAsync();
|
|
|
if (knowledges.Any())
|
|
|
knowledgeShowInfoDto.KnowledgeDtos = _mapper.Map<List<KnowledgeDto>>(knowledges);
|
|
|
//关键词
|
|
@@ -384,7 +384,8 @@ namespace Hotline.Api.Controllers
|
|
|
//将结果合并成一个表
|
|
|
.MergeTable()
|
|
|
//取第一条数据
|
|
|
- .Where(x=>x.IsDeleted ==false && DateTime.Now <= x.ExpiredTime)
|
|
|
+ .Where(x=>x.IsDeleted ==false )
|
|
|
+ .Where(x=> (x.ExpiredTime != null && x.ExpiredTime >= DateTime.Now) || x.ExpiredTime == null)
|
|
|
.Where(d => d.index == 1 && d.Status == EKnowledgeStatus.OnShelf)
|
|
|
.ToListAsync();
|
|
|
//返回数据
|
|
@@ -460,7 +461,7 @@ namespace Hotline.Api.Controllers
|
|
|
.Includes(x=>x.SourceOrganize)
|
|
|
.Where(x => x.IsDeleted == false)
|
|
|
.WhereIF(!string.IsNullOrEmpty(pagedDto.Title), x => x.Title.Contains(pagedDto.Title!))
|
|
|
- .WhereIF(pagedDto.Status.HasValue, x => x.Status == pagedDto.Status)
|
|
|
+ .WhereIF(pagedDto.Status.HasValue, x => x.Status == pagedDto.Status && ((x.ExpiredTime != null && x.ExpiredTime > DateTime.Now)|| x.ExpiredTime == null))
|
|
|
.WhereIF(pagedDto.IsPublic.HasValue, x => x.IsPublic == pagedDto.IsPublic)
|
|
|
.WhereIF(!string.IsNullOrEmpty(pagedDto.Summary), x => x.Summary != null && x.Summary.Contains(pagedDto.Summary!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(typeSpliceName), x => x.KnowledgeType.SpliceName.EndsWith(typeSpliceName!))
|