|
@@ -422,6 +422,9 @@ public class OrderSnapshotApplication : IOrderSnapshotApplication, IScopeDepende
|
|
|
{
|
|
|
var query = _orderSnapshotRepository.Queryable()
|
|
|
.LeftJoin<Order>((snapshot, order) => snapshot.Id == order.Id)
|
|
|
+ .WhereIF(dto.No.NotNullOrEmpty(), (snapshot, order) => order.No.Contains(dto.No))
|
|
|
+ .WhereIF(dto.Title.NotNullOrEmpty(), (snapshot, order) => order.Title.Contains(dto.Title))
|
|
|
+ .WhereIF(dto.ActualHandleOrgName.NotNullOrEmpty(), (snapshot, order) => order.ActualHandleOrgName.Contains(dto.ActualHandleOrgName))
|
|
|
.Select((snapshot, order) => new OrderSnapshotItemsOutDto
|
|
|
{
|
|
|
CreationTime = order.CreationTime
|
|
@@ -429,4 +432,34 @@ public class OrderSnapshotApplication : IOrderSnapshotApplication, IScopeDepende
|
|
|
, true);
|
|
|
return query;
|
|
|
}
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 获取工单已经标记集合
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="dto"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ public ISugarQueryable<SignedOrderSnapshotItemsOutDto> GetSignedOrderSnapshotItemsAsync(SignedOrderSnapshotItemsInDto dto)
|
|
|
+ {
|
|
|
+ var query = _orderSnapshotRepository.Queryable()
|
|
|
+ .LeftJoin<Order>((snapshot, order) => order.Id == snapshot.Id)
|
|
|
+ .Where((snapshot, order) => order.Status >= EOrderStatus.Published)
|
|
|
+ .WhereIF(dto.No.NotNullOrEmpty(), (snapshot, order) => order.No.Contains(dto.No))
|
|
|
+ .WhereIF(dto.Title.NotNullOrEmpty(), (snapshot, order) => order.Title.Contains(dto.Title))
|
|
|
+ .WhereIF(dto.FromName.NotNullOrEmpty(), (snapshot, order) => order.FromName.Contains(dto.FromName))
|
|
|
+ .WhereIF(dto.FromPhone.NotNullOrEmpty(), (snapshot, order) => order.FromPhone.Contains(dto.FromPhone))
|
|
|
+ .WhereIF(dto.Label.NotNullOrEmpty(), (snapshot, order) => snapshot.LabelName.Contains(dto.Label))
|
|
|
+ .WhereIF(dto.BeginSignTime.HasValue && dto.EndSignTime.HasValue, (snapshot, order) => snapshot.SignTime >= dto.BeginSignTime && snapshot.SignTime <= dto.EndSignTime)
|
|
|
+ .OrderByDescending((snapshot, order) => snapshot.CreationTime)
|
|
|
+ .Select((snapshot, order) => new SignedOrderSnapshotItemsOutDto
|
|
|
+ {
|
|
|
+ LabelName = snapshot.LabelName,
|
|
|
+ OrderId = order.Id,
|
|
|
+ SignTime = snapshot.SignTime,
|
|
|
+ SignUserName = snapshot.SignUserName,
|
|
|
+ SourceChannel = order.SourceChannel,
|
|
|
+ }, true);
|
|
|
+
|
|
|
+ return query;
|
|
|
+ }
|
|
|
+
|
|
|
}
|