|
@@ -4,6 +4,7 @@ using Hotline.Settings;
|
|
|
using Hotline.Settings.Hotspots;
|
|
|
using Hotline.Share.Dtos;
|
|
|
using Hotline.Share.Dtos.Knowledge;
|
|
|
+using Hotline.Share.Enums.KnowledgeBase;
|
|
|
using Hotline.Users;
|
|
|
using MapsterMapper;
|
|
|
using SqlSugar;
|
|
@@ -48,7 +49,7 @@ namespace Hotline.Application.Knowledge
|
|
|
.LeftJoin<User>((o, cus) => o.CreatorId == cus.Id)
|
|
|
.LeftJoin<SystemOrganize>((o, cus, sys) => o.CreatorOrgId == sys.Id)
|
|
|
.LeftJoin<KnowledgeType>((o, cus, sys, kn) => o.KnowledgeTypeId == kn.Id)
|
|
|
- .LeftJoin<HotSpotType>((o, cus, sys, kn,hst) => o.HotspotId == hst.Id)
|
|
|
+ .LeftJoin<HotSpotType>((o, cus, sys, kn, hst) => o.HotspotId == hst.Id)
|
|
|
.Where((o, cus, sys, kn, hst) => o.IsDeleted == false)
|
|
|
//关键词查询标题、创建人、创建部门
|
|
|
.WhereIF(!string.IsNullOrEmpty(pagedDto.Keyword), (o, cus, sys, kn, hst) => o.Title.Contains(pagedDto.Keyword!) || cus.Name.Contains(pagedDto.Keyword!) || sys.OrgName.Contains(pagedDto.Keyword!))
|
|
@@ -95,7 +96,7 @@ namespace Hotline.Application.Knowledge
|
|
|
.MergeTable()
|
|
|
//取第一条数据
|
|
|
.Where(d => d.index == 1)
|
|
|
- .OrderByDescending(d=>d.CreationTime)
|
|
|
+ .OrderByDescending(d => d.CreationTime)
|
|
|
//转分页数据
|
|
|
.ToPageListAsync(pagedDto.PageIndex, pagedDto.PageSize, total);
|
|
|
//返回数据
|
|
@@ -117,7 +118,7 @@ namespace Hotline.Application.Knowledge
|
|
|
.Where(d => d.CreatorId == _sessionContext.RequiredUserId)
|
|
|
.WhereIF(pagedDto.Status.HasValue, d => d.Status == pagedDto.Status)
|
|
|
.WhereIF(pagedDto.ApplyType.HasValue, d => d.KnowledgeApplyType == pagedDto.ApplyType)
|
|
|
- .WhereIF(!string.IsNullOrEmpty(pagedDto.IsOvertime) && pagedDto.IsOvertime == "0", d => d.IsOvertime ==true)
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(pagedDto.IsOvertime) && pagedDto.IsOvertime == "0", d => d.IsOvertime == true)
|
|
|
.WhereIF(!string.IsNullOrEmpty(pagedDto.IsOvertime) && pagedDto.IsOvertime == "1", d => d.IsOvertime == false)
|
|
|
.WhereIF(pagedDto.StartTime.HasValue, d => d.CreationTime >= pagedDto.StartTime)
|
|
|
.WhereIF(pagedDto.EndTime.HasValue, d => d.CreationTime <= pagedDto.EndTime)
|
|
@@ -145,8 +146,14 @@ namespace Hotline.Application.Knowledge
|
|
|
.WhereIF(pagedDto.ApplyType.HasValue, d => d.KnowledgeApplyType == pagedDto.ApplyType)
|
|
|
.WhereIF(!string.IsNullOrEmpty(pagedDto.IsOvertime) && pagedDto.IsOvertime == "0", d => d.IsOvertime == true)
|
|
|
.WhereIF(!string.IsNullOrEmpty(pagedDto.IsOvertime) && pagedDto.IsOvertime == "1", d => d.IsOvertime == false)
|
|
|
- .WhereIF(pagedDto.StartTime.HasValue, d => d.CreationTime >= pagedDto.StartTime)
|
|
|
- .WhereIF(pagedDto.EndTime.HasValue, d => d.CreationTime <= pagedDto.EndTime)
|
|
|
+
|
|
|
+ .WhereIF(pagedDto.StartTime.HasValue && pagedDto.Status != EKnowledgeApplyStatus.Failed && pagedDto.Status != EKnowledgeApplyStatus.Succeed, d => d.CreationTime >= pagedDto.StartTime)
|
|
|
+ .WhereIF(pagedDto.EndTime.HasValue && pagedDto.Status != EKnowledgeApplyStatus.Failed && pagedDto.Status != EKnowledgeApplyStatus.Succeed, d => d.CreationTime <= pagedDto.EndTime)
|
|
|
+ .WhereIF(pagedDto.StartTime.HasValue && pagedDto.Status == EKnowledgeApplyStatus.Failed , d => d.ReturnTime >= pagedDto.StartTime)
|
|
|
+ .WhereIF(pagedDto.EndTime.HasValue && pagedDto.Status == EKnowledgeApplyStatus.Failed , d => d.ReturnTime <= pagedDto.EndTime)
|
|
|
+ .WhereIF(pagedDto.StartTime.HasValue && pagedDto.Status == EKnowledgeApplyStatus.Succeed, d => d.HandleTime >= pagedDto.StartTime)
|
|
|
+ .WhereIF(pagedDto.EndTime.HasValue && pagedDto.Status == EKnowledgeApplyStatus.Succeed, d => d.HandleTime <= pagedDto.EndTime)
|
|
|
+
|
|
|
.OrderByDescending(p => p.CreationTime)
|
|
|
.ToPagedListAsync(pagedDto.PageIndex, pagedDto.PageSize, cancellationToken);
|
|
|
|