|
@@ -1,7 +1,9 @@
|
|
|
using Hotline.FlowEngine.Workflows;
|
|
|
using Hotline.Orders;
|
|
|
+using Hotline.Share.Dtos.Ai;
|
|
|
using Hotline.Share.Dtos.Order;
|
|
|
using Hotline.Share.Dtos.Settings;
|
|
|
+using Hotline.Share.Enums.Order;
|
|
|
using Mapster;
|
|
|
|
|
|
namespace Hotline.Application.Mappers;
|
|
@@ -14,6 +16,36 @@ public class OrderMapperConfigs : IRegister
|
|
|
.IgnoreIf((s, d) => s.OrderExtension == null, d => d.OrderExtension)
|
|
|
.IgnoreIf((s, d) => s.Hotspot == null, d => d.Hotspot)
|
|
|
;
|
|
|
+ //TODO 等待测试
|
|
|
+ config.ForType<AiOrderVisitDetail, AiOrderVisitDetailDto>()
|
|
|
+ .IgnoreIf((s, d) => s.Order == null, d => d.No)
|
|
|
+ .IgnoreIf((s, d) => s.Order == null, d => d.Title)
|
|
|
+ .IgnoreIf((s, d) => s.Order == null, d => d.FromName)
|
|
|
+ .IgnoreIf((s, d) => s.Order == null, d => d.FromGender)
|
|
|
+ .IgnoreIf((s, d) => s.Order == null, d => d.StartTime)
|
|
|
+ .IgnoreIf((s, d) => s.Order == null, d => d.FiledTime)
|
|
|
+ .Map(d => d.No, s => s.Order.No)
|
|
|
+ .Map(d => d.Title, s => s.Order.Title)
|
|
|
+ .Map(d => d.FromName, s => s.Order.FromName)
|
|
|
+ .Map(d => d.FromGender, s => s.Order.FromGender)
|
|
|
+ .Map(d => d.StartTime, s => s.Order.StartTime)
|
|
|
+ .Map(d => d.FiledTime, s => s.Order.FiledTime)
|
|
|
+ //.IgnoreIf((s, d) => s.OrderVisit.OrderVisitDetails == null || !s.OrderVisit.OrderVisitDetails.Any() || s.OrderVisit.OrderVisitDetails.All(x=>x.VisitTarget != Share.Enums.Order.EVisitTarget.Seat), d => d.SeatEvaluate)
|
|
|
+ // .IgnoreIf((s, d) => s.OrderVisit.OrderVisitDetails == null && s.OrderVisit.OrderVisitDetails.Count > 0, d => d.OrgProcessingResults)
|
|
|
+ //.IgnoreIf((s, d) => s.OrderVisit.OrderVisitDetails == null && s.OrderVisit.OrderVisitDetails.Count > 0, d => d.IsContact)
|
|
|
+ //.IgnoreIf((s, d) => s.OrderVisit.OrderVisitDetails == null && s.OrderVisit.OrderVisitDetails.Count > 0, d => d.Volved)
|
|
|
+ //.Ignore(d=>d.SeatEvaluate)
|
|
|
+ //.Map(d=>d.SeatEvaluate, s=>s.OrderVisit.OrderVisitDetails.First(x=> x.VisitTarget == EVisitTarget.Seat))
|
|
|
+ .AfterMapping((s, d) =>
|
|
|
+ {
|
|
|
+ d.SeatEvaluate = s.OrderVisit.OrderVisitDetails.FirstOrDefault(x => x.VisitTarget == EVisitTarget.Seat)?.SeatEvaluate;
|
|
|
+ d.OrgProcessingResults = s.OrderVisit.OrderVisitDetails.FirstOrDefault(x => x.VisitTarget == EVisitTarget.Org)?.OrgProcessingResults?.Value;
|
|
|
+ d.IsContact = s.OrderVisit.OrderVisitDetails.FirstOrDefault(x => x.VisitTarget == EVisitTarget.Org)?.IsContact;
|
|
|
+ d.Volved = s.OrderVisit.OrderVisitDetails.FirstOrDefault(x => x.VisitTarget == EVisitTarget.Org)?.Volved;
|
|
|
+ })
|
|
|
+ ;
|
|
|
+
|
|
|
+
|
|
|
|
|
|
config.ForType<AddOrderDto, Order>()
|
|
|
.IgnoreIf((s, d) => s.OrderExtension == null, d => d.OrderExtension)
|