|
@@ -50,9 +50,10 @@ namespace OASystem.API.Controllers
|
|
|
.LeftJoin<Sys_SetData>((x, y, z) => x.ForeignOptionId == z.Id && z.IsDel == 0)
|
|
|
.LeftJoin<Sys_Users>((x, y, z, w) => x.AssignedUserId == w.Id && w.IsDel == 0)
|
|
|
.Where(expr.ToExpression());
|
|
|
+
|
|
|
var count = query.Count();
|
|
|
|
|
|
- var list = query.Select((x, y, z, w) => new
|
|
|
+ var temp = query.Select((x, y, z, w) => new
|
|
|
{
|
|
|
Id = x.Id,
|
|
|
TaskName = x.Name,
|
|
@@ -62,7 +63,19 @@ namespace OASystem.API.Controllers
|
|
|
Team = y.TeamName,
|
|
|
Active = x.ProgressId,
|
|
|
CreateUserid = x.CreateUserId
|
|
|
- }).ToPageList(dto.PageIndex, dto.PageSize);
|
|
|
+ });
|
|
|
+
|
|
|
+ var list = temp
|
|
|
+ .OrderByIF(dto.isLv == 1,
|
|
|
+ x => SqlFunc.IsNull(
|
|
|
+ SqlFunc.Subqueryable<Task_WorkTask>()
|
|
|
+ .Where(twt => twt.IsDel == 0 && twt.IsUrgent && twt.WorkOrderId == x.Id)
|
|
|
+ .Min(twt => twt.StartTime),
|
|
|
+ DateTime.MaxValue // 把 null 替换成极大值
|
|
|
+ )
|
|
|
+ )
|
|
|
+ .OrderBy(x => x.StartTime)
|
|
|
+ .ToPageList(dto.PageIndex, dto.PageSize);
|
|
|
|
|
|
|
|
|
var data = list.Select(x =>
|
|
@@ -98,7 +111,8 @@ namespace OASystem.API.Controllers
|
|
|
Name = x.Name,
|
|
|
}).ToList()
|
|
|
},
|
|
|
- isReview = x.CreateUserid == dto.UserId
|
|
|
+ isReview = x.CreateUserid == dto.UserId,
|
|
|
+ UrgentCount = taskArr.Where(x => x.IsUrgent).Count()
|
|
|
};
|
|
|
|
|
|
}).ToList();
|