diff --git a/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs b/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs index 58a3631..466f15e 100644 --- a/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs +++ b/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs @@ -206,7 +206,7 @@ namespace BBWYB.Server.API.Controllers [HttpPost] public void BatchEditPurchaseSkuActualPrice([FromBody] BatchEditPurchaseSkuActualPriceRequest request) { - purchaseSchemeBusiness.BatchEditPurchaseSkuActualPrice(request, GetUserId()); + purchaseSchemeBusiness.BatchEditPurchaseSkuActualPrice(request, null, GetUserId()); } } } diff --git a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs index 1a88368..39be653 100644 --- a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs +++ b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs @@ -1528,9 +1528,10 @@ namespace BBWYB.Server.Business /// 批量修改采购配件实际单价 /// /// + /// /// /// - public void BatchEditPurchaseSkuActualPrice(BatchEditPurchaseSkuActualPriceRequest request, string userId) + public void BatchEditPurchaseSkuActualPrice(BatchEditPurchaseSkuActualPriceRequest request, List? schemeIdList, string userId) { if (request.ItemList == null || request.ItemList.Count() == 0) throw new BusinessException("缺少参数"); @@ -1538,7 +1539,8 @@ namespace BBWYB.Server.Business var purchseSkuIdList = request.ItemList.Select(x => x.PurchaseSkuId).Distinct().ToList(); - var schemeIdList = fsql.Select() + if (schemeIdList == null || schemeIdList.Count() == 0) + schemeIdList = fsql.Select() .Where(pss => purchseSkuIdList.Contains(pss.PurchaseSkuId)) .Distinct() .ToList(pss => pss.SkuPurchaseSchemeId); @@ -1562,7 +1564,7 @@ namespace BBWYB.Server.Business { if (pss.IsInvalid == 1) throw new BusinessException($"采购配件{pss.PurchaseSkuId}已失效"); - var requestSku = request.ItemList.FirstOrDefault(x => x.SkuId == pss.SkuId && x.PurchaseSkuId == pss.PurchaseSkuId); + var requestSku = request.ItemList.FirstOrDefault(x => x.PurchaseSkuId == pss.PurchaseSkuId); //x.SkuId == pss.SkuId if (requestSku != null) pss.ActualPrice = requestSku.ActualPrice; } diff --git a/BBWYB.Server.Business/SkuOptimization/SkuOptimizationBusiness.cs b/BBWYB.Server.Business/SkuOptimization/SkuOptimizationBusiness.cs index 25b2c62..464bd26 100644 --- a/BBWYB.Server.Business/SkuOptimization/SkuOptimizationBusiness.cs +++ b/BBWYB.Server.Business/SkuOptimization/SkuOptimizationBusiness.cs @@ -8,6 +8,7 @@ using BBWYB.Server.Model.Dto; using FreeSql; using Newtonsoft.Json; using Org.BouncyCastle.Tls.Crypto; +using System.Linq; using Yitter.IdGenerator; namespace BBWYB.Server.Business @@ -18,13 +19,15 @@ namespace BBWYB.Server.Business private VenderBusiness venderBusiness; private TimeLimitRules timeLimitRules; private UserBusiness userBusiness; + private PurchaseSchemeBusiness purchaseSchemeBusiness; - public OptimizationBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator, FreeSqlMultiDBManager fsqlManager, VenderBusiness venderBusiness, TimeLimitRules timeLimitRules, UserBusiness userBusiness) : base(fsql, nLogManager, idGenerator) + public OptimizationBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator, FreeSqlMultiDBManager fsqlManager, VenderBusiness venderBusiness, TimeLimitRules timeLimitRules, UserBusiness userBusiness, PurchaseSchemeBusiness purchaseSchemeBusiness) : base(fsql, nLogManager, idGenerator) { this.fsqlManager = fsqlManager; this.venderBusiness = venderBusiness; this.timeLimitRules = timeLimitRules; this.userBusiness = userBusiness; + this.purchaseSchemeBusiness = purchaseSchemeBusiness; } @@ -129,7 +132,7 @@ namespace BBWYB.Server.Business if (dbSpuOptimizationTaskList.Any(s => s.ProductId == productId)) //过滤未结束的spu任务 continue; - var spuTotalInfo = spuTotalInfoList.FirstOrDefault(psi => psi.ProductId == productId); //spu销量 + var spuTotalInfo = dbSpuTotalInfoList.FirstOrDefault(psi => psi.ProductId == productId); //spu销量 if (spuTotalInfo == null) continue; @@ -143,6 +146,8 @@ namespace BBWYB.Server.Business #region qtsku - jdsku 关系匹配 var currentProductSkuList = productSkuList.Where(ps => ps.ProductId == productId && jdqtskuList.Any(x => x.PurchaseSkuIds == ps.Id)).ToList(); + if (currentProductSkuList.Count() == 0) + continue; //拳探sku-京东sku下单关系映射表 var mappingQT_JDSKUDictionary = new Dictionary(); @@ -255,7 +260,8 @@ namespace BBWYB.Server.Business SchemeId = ps.Id, SkuId = ps.SkuId, SpuOptimizationBargainTeamTaskId = spuOptimizationBargainTeamTask.Id, - SpuOptimizationTaskId = spuOptimizationTask.Id + SpuOptimizationTaskId = spuOptimizationTask.Id, + UpdateTime = DateTime.Now })); } #endregion @@ -303,7 +309,89 @@ namespace BBWYB.Server.Business }); } + /// + /// 更新报价 + /// + /// + /// + public void BatchUpdateCompetitiveTenderQuotation(BatchUpdateCompetitiveTenderQuotationRequest request, string userId) + { + #region 获取用户和部门信息 + var uInfo = userBusiness.GetisBargainTeamByUserId(userId, true); + #endregion + #region 业务验证 + var spuOptimizationTask = fsql.Select(request.SpuOptimizationTaskId).ToOne(); + if (spuOptimizationTask == null) + throw new BusinessException($"待优化任务{request.SpuOptimizationTaskId}不存在"); + var spuOptimizationBargainTeamTask = fsql.Select().Where(sbt => sbt.SpuOptimizationTaskId == request.SpuOptimizationTaskId && sbt.BelongTeamId == uInfo.department.Id).ToOne(); + if (spuOptimizationBargainTeamTask == null) + throw new BusinessException($"待优化任务{request.SpuOptimizationTaskId}中不存在议价组{uInfo.department.Id}/{uInfo.department.DepartmentName}的子任务"); + var skuIdList = fsql.Select().Where(s => s.SpuOptimizationTaskId == request.SpuOptimizationTaskId).ToList(s => s.SkuId); + #endregion + + #region DBOperation + List insertSpuOptimizationCompetitiveTenderTaskList = new List(); + List updateCompetitiveTenderTaskIdList = new List(); + #endregion + + //var skuList = request.ItemList.Select(x => x.SkuId).Distinct().ToList(); + var purchaseSkuIdList = request.ItemList.Select(x => x.PurchaseSkuId).Distinct().ToList(); + + //查询竞标任务 + var competitiveTenderTaskList = fsql.Select() + .Where(ct => ct.BargainTeamId == uInfo.user.DepartmentId && + ct.SpuOptimizationTaskId == request.SpuOptimizationTaskId && + ct.SchemeGroupId == request.SchemeGroupId) + .ToList(); + + //查询配件关联的采购方案 + var relationPurchaseSchemeList = fsql.Select() + .Where(ps => ps.SchemeGroupId == request.SchemeGroupId && + ps.BelongBargainTeamId == uInfo.user.DepartmentId && + fsql.Select() + .Where(pss => skuIdList.Contains(pss.SkuId) && + purchaseSkuIdList.Contains(pss.PurchaseSkuId) && + pss.SkuPurchaseSchemeId == ps.Id).Any()) + .ToList(); + + + //筛选出不在竞标任务中的采购方案 + var noJoinCompetitiveTenderPurchaseSchemeList = relationPurchaseSchemeList.Where(ps => !competitiveTenderTaskList.Any(ct => ct.SchemeId == ps.Id)).ToList(); + var noJoinCompetitiveTenderPurchaseSchemeIdList = noJoinCompetitiveTenderPurchaseSchemeList.Select(x => x.Id).ToList(); + //批量更新配件 + purchaseSchemeBusiness.BatchEditPurchaseSkuActualPrice(request.Map(), noJoinCompetitiveTenderPurchaseSchemeIdList, userId); + + if (noJoinCompetitiveTenderPurchaseSchemeList.Count() > 0) + { + insertSpuOptimizationCompetitiveTenderTaskList.AddRange(noJoinCompetitiveTenderPurchaseSchemeList.Select(ps => new SpuOptimizationCompetitiveTenderTask() + { + Id = idGenerator.NewLong(), + CreateTime = DateTime.Now, + BargainTeamId = uInfo.department.Id, + IsUpdateQuotedPrice = true, + SchemeGroupId = ps.SchemeGroupId, + SchemeId = ps.Id, + SkuId = ps.SkuId, + SpuOptimizationBargainTeamTaskId = spuOptimizationBargainTeamTask.Id, + SpuOptimizationTaskId = request.SpuOptimizationTaskId, + UpdateTime = DateTime.Now + })); + } + if (competitiveTenderTaskList.Count() > 0) + updateCompetitiveTenderTaskIdList.AddRange(competitiveTenderTaskList.Select(ct => ct.Id).ToList()); + + fsql.Transaction(() => + { + if (insertSpuOptimizationCompetitiveTenderTaskList.Count() > 0) + fsql.Insert(insertSpuOptimizationCompetitiveTenderTaskList).ExecuteAffrows(); + if (updateCompetitiveTenderTaskIdList.Count() > 0) + fsql.Update(updateCompetitiveTenderTaskIdList) + .Set(ct => ct.IsUpdateQuotedPrice, true) + .Set(ct => ct.UpdateTime, DateTime.Now) + .ExecuteAffrows(); + }); + } /// /// 完成优化 @@ -313,48 +401,69 @@ namespace BBWYB.Server.Business /// public void CompleteOptimization(long taskId, string userId) { - #region 验证待议价任务 - var optimazaionTask = fsql.Select(taskId).ToOne(); - if (optimazaionTask == null) - throw new BusinessException("优化任务不存在"); - if (optimazaionTask.IsOptimizationCompleted == true) - throw new BusinessException("优化任务已完成"); - - #endregion - #region 获取用户和部门信息 var uInfo = userBusiness.GetisBargainTeamByUserId(userId, true); #endregion - #region 验证待议价子任务 - var optimazaionChildTaskList = fsql.Select() - .Where(sc => sc.OptimizationTaskId == optimazaionTask.Id) - .ToList(); - var currentOptimazaionChildTaskList = optimazaionChildTaskList.FirstOrDefault(sc => sc.BelongTeamId == uInfo.department.Id); - if (currentOptimazaionChildTaskList == null) + #region 业务验证 + var spuOptimizationTask = fsql.Select(taskId).ToOne(); + if (spuOptimizationTask == null) + throw new BusinessException($"待优化任务{taskId}不存在"); + if (spuOptimizationTask.IsOptimizationCompleted == true) + throw new BusinessException("待优化任务已完成"); + + var spuOptimizationBargainTeamTaskList = fsql.Select() + .Where(sbt => sbt.SpuOptimizationTaskId == taskId && sbt.BelongTeamId == uInfo.department.Id) + .ToList(); + var currentspuOptimizationBargainTeamTask = spuOptimizationBargainTeamTaskList.FirstOrDefault(sc => sc.BelongTeamId == uInfo.department.Id); + if (currentspuOptimizationBargainTeamTask == null) throw new BusinessException($"未找到议价组{uInfo.department.DepartmentName}的议价子任务"); - if (currentOptimazaionChildTaskList.IsOptimizationCompleted == true) + if (currentspuOptimizationBargainTeamTask.IsOptimizationCompleted == true) throw new BusinessException($"{uInfo.department.DepartmentName}的议价子任务已完成"); - currentOptimazaionChildTaskList.IsOptimizationCompleted = true; + var skuIdList = fsql.Select() + .Where(s => s.SpuOptimizationTaskId == taskId) + .ToList(s => s.SkuId); + + //查询该议价组的竞标任务 + var competitiveTenderTaskList = fsql.Select() + .Where(ct => ct.BargainTeamId == uInfo.user.DepartmentId && + ct.SpuOptimizationTaskId == taskId) + .ToList(); + var competitiveTenderSchemeIdList = competitiveTenderTaskList.Select(ct => ct.SchemeId.Value).ToList(); + + //验证该议价组的符合sku条件的采购方案是否都参与投标 + var purchaseSchemeIdList = fsql.Select().Where(ps => ps.BelongBargainTeamId == uInfo.user.DepartmentId && + skuIdList.Contains(ps.SkuId)) + .ToList(ps => ps.Id); + var noJoinCompetitiveTenderSchemeIdList = purchaseSchemeIdList.Except(competitiveTenderSchemeIdList); + if (noJoinCompetitiveTenderSchemeIdList.Count() > 0) + throw new BusinessException($"议价组{uInfo.department.DepartmentName}存在{noJoinCompetitiveTenderSchemeIdList.Count()}个符合条件但未参与竞标的采购方案"); + + //验证该议价组参与投标的采购方案是否都完成报价 + if (competitiveTenderTaskList.Any(ct => ct.IsUpdateQuotedPrice == false)) + throw new BusinessException($"议价组{uInfo.department.DepartmentName}存在未更新报价的投标"); + + currentspuOptimizationBargainTeamTask.IsOptimizationCompleted = true; #endregion - IUpdate updateChildTask = null; - IUpdate updateTask = null; + + IUpdate updateBargainTask = null; + IUpdate updateSpuTask = null; IUpdate updateSpuSaleInfo = null; IUpdate updateTimeLimitTask = null; - if (!optimazaionChildTaskList.Any(sc => sc.IsOptimizationCompleted == false)) + if (!spuOptimizationBargainTeamTaskList.Any(sc => sc.IsOptimizationCompleted == false)) { //全部完成 #region 更新spu销量表 - var spuSaleInfo = fsql.Select(optimazaionTask.ProductId).ToOne(); + var spuSaleInfo = fsql.Select(spuOptimizationTask.ProductId).ToOne(); if (spuSaleInfo == null) - throw new BusinessException($"未找到spu{optimazaionTask.ProductId}销量"); + throw new BusinessException($"未找到spu{spuOptimizationTask.ProductId}销量"); - updateSpuSaleInfo = fsql.Update(optimazaionTask.ProductId) + updateSpuSaleInfo = fsql.Update(spuOptimizationTask.ProductId) .SetIf(spuSaleInfo.IsFirstPurchaseCompleted == false, s => s.IsFirstPurchaseCompleted, true) .SetIf(spuSaleInfo.IsFirstPurchaseCompleted == false, s => s.FirstPurchaseCompletedItemCount == s.ItemCount) .SetIf(spuSaleInfo.IsFirstPurchaseCompleted == true && @@ -366,31 +475,31 @@ namespace BBWYB.Server.Business .Set(s => s.UpdateTime, DateTime.Now); #endregion - #region 更新待议价任务 - updateTask = fsql.Update(optimazaionTask.Id) - .Set(t => t.IsOptimizationCompleted, true) - .Set(t => t.CompletionTime, DateTime.Now); + #region 更新待优化任务 + updateSpuTask = fsql.Update(spuOptimizationTask.Id) + .Set(t => t.IsOptimizationCompleted, true) + .Set(t => t.CompletionTime, DateTime.Now); #endregion - #region 更新待议价限时任务 + #region 更新待优化限时任务 updateTimeLimitTask = fsql.Update().Set(t => t.CompletionTime, DateTime.Now) .Set(t => t.IsTimely == (DateTime.Now < t.ExpirationTime ? true : false)) - .Where(t => t.TaskId == optimazaionTask.Id && + .Where(t => t.TaskId == spuOptimizationTask.Id && t.CompletionTime == null && t.TaskType == Enums.TimeLimitTaskType.待议价任务); #endregion } - #region 更新待议价子任务 - updateChildTask = fsql.Update(currentOptimazaionChildTaskList.Id) + #region 更新待优化议价组任务 + updateBargainTask = fsql.Update(currentspuOptimizationBargainTeamTask.Id) .Set(sc => sc.IsOptimizationCompleted, true) .Set(sc => sc.CompletionTime, DateTime.Now); #endregion fsql.Transaction(() => { - updateChildTask?.ExecuteAffrows(); - updateTask?.ExecuteAffrows(); + updateSpuTask?.ExecuteAffrows(); + updateBargainTask?.ExecuteAffrows(); updateSpuSaleInfo?.ExecuteAffrows(); updateTimeLimitTask?.ExecuteAffrows(); }); diff --git a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs index 3725276..08a9636 100644 --- a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs +++ b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs @@ -560,7 +560,8 @@ namespace BBWYB.Server.Business.Sync SchemeId = ps.Id, SkuId = ps.SkuId, SpuOptimizationBargainTeamTaskId = spuOptimizationBargainTeamTask.Id, - SpuOptimizationTaskId = spuOptimizationTask.Id + SpuOptimizationTaskId = spuOptimizationTask.Id, + UpdateTime = DateTime.Now })); } #endregion diff --git a/BBWYB.Server.Model/BBWYB.Server.Model.csproj b/BBWYB.Server.Model/BBWYB.Server.Model.csproj index bcfb11f..e426986 100644 --- a/BBWYB.Server.Model/BBWYB.Server.Model.csproj +++ b/BBWYB.Server.Model/BBWYB.Server.Model.csproj @@ -14,6 +14,7 @@ + diff --git a/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationcompetitivetendertask.cs b/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationcompetitivetendertask.cs index 17148f8..c6d2249 100644 --- a/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationcompetitivetendertask.cs +++ b/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationcompetitivetendertask.cs @@ -22,6 +22,9 @@ namespace BBWYB.Server.Model.Db [Column(DbType = "datetime")] public DateTime? CreateTime { get; set; } + [Column(DbType = "datetime")] + public DateTime? UpdateTime { get; set; } + /// /// 是否更新报价 /// diff --git a/BBWYB.Server.Model/Dto/Request/Optimization/BatchUpdateCompetitiveTenderQuotationRequest.cs b/BBWYB.Server.Model/Dto/Request/Optimization/BatchUpdateCompetitiveTenderQuotationRequest.cs index 7a78f93..60a0a3a 100644 --- a/BBWYB.Server.Model/Dto/Request/Optimization/BatchUpdateCompetitiveTenderQuotationRequest.cs +++ b/BBWYB.Server.Model/Dto/Request/Optimization/BatchUpdateCompetitiveTenderQuotationRequest.cs @@ -2,7 +2,25 @@ { public class BatchUpdateCompetitiveTenderQuotationRequest { - public string SkuId { get; set; } + /// + /// 优化任务Id + /// + public long SpuOptimizationTaskId { get; set; } + + /// + /// 采购方案分组Id + /// + public long SchemeGroupId { get; set; } + + /// + /// 配件列表 + /// + public IList ItemList { get; set; } + } + + public class BatchUpdateCompetitiveTenderQuotationItemRequest + { + //public string SkuId { get; set; } /// /// 采购SkuId diff --git a/BBWYB.Server.Model/Dto/Request/PurchaseScheme/BatchEditPurchaseSkuActualPriceRequest.cs b/BBWYB.Server.Model/Dto/Request/PurchaseScheme/BatchEditPurchaseSkuActualPriceRequest.cs index 349e8b0..fbd233a 100644 --- a/BBWYB.Server.Model/Dto/Request/PurchaseScheme/BatchEditPurchaseSkuActualPriceRequest.cs +++ b/BBWYB.Server.Model/Dto/Request/PurchaseScheme/BatchEditPurchaseSkuActualPriceRequest.cs @@ -12,10 +12,10 @@ ///// ////public long SchemeId { get; set; } - /// - /// SkuId - /// - public string SkuId { get; set; } + ///// + ///// SkuId + ///// + //public string SkuId { get; set; } /// /// 采购SkuId diff --git a/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationChildTaskResponse.cs b/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationChildTaskResponse.cs deleted file mode 100644 index fb19868..0000000 --- a/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationChildTaskResponse.cs +++ /dev/null @@ -1,8 +0,0 @@ -using BBWYB.Server.Model.Db; - -namespace BBWYB.Server.Model.Dto -{ - public class SkuOptimizationChildTaskResponse: SkuOptimizationChildTask - { - } -} diff --git a/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationTaskResponse.cs b/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationTaskResponse.cs deleted file mode 100644 index 830fdd9..0000000 --- a/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationTaskResponse.cs +++ /dev/null @@ -1,20 +0,0 @@ -using BBWYB.Server.Model.Db; - -namespace BBWYB.Server.Model.Dto -{ - public class SkuOptimizationTaskResponse : SkuOptimizationTask - { - public IList ChildTaskList { get; set; } - - /// - /// 当前用户所属团队是否完成议价子任务 - /// - public bool IsOptimizationCompletedByCurrentTeam { get; set; } - - /// - /// 限时任务 - /// - public TimeLimitTask TimeLimitTask { get; set; } - - } -} diff --git a/BBWYB.Server.Model/MappingProfiles.cs b/BBWYB.Server.Model/MappingProfiles.cs index 94fd5a2..2abed1c 100644 --- a/BBWYB.Server.Model/MappingProfiles.cs +++ b/BBWYB.Server.Model/MappingProfiles.cs @@ -60,18 +60,21 @@ namespace BBWYB.Server.Model CreateMap(); CreateMap(); - CreateMap().ForPath(t => t.TimeLimitTask.Id, opt => opt.MapFrom(f => f.TimeLimitTaskId)) - .ForPath(t => t.TimeLimitTask.CompletionTime, opt => opt.MapFrom(f => f.TimeLimitTaskCompletionTime)) - .ForPath(t => t.TimeLimitTask.ExpirationTime, opt => opt.MapFrom(f => f.TimeLimitTaskExpirationTime)) - .ForPath(t => t.TimeLimitTask.PayTime, opt => opt.MapFrom(f => f.TimeLimitTaskPayTime)) - .ForPath(t => t.TimeLimitTask.IsTimely, opt => opt.MapFrom(f => f.TimeLimitTaskIsTimely)) - .ForPath(t => t.TimeLimitTask.CreateTme, opt => opt.MapFrom(f => f.TimeLimitTaskCreateTme)) - .ForPath(t => t.TimeLimitTask.OrderId, opt => opt.MapFrom(f => f.TimeLimitTaskOrderId)) - .ForPath(t => t.TimeLimitTask.OrderSn, opt => opt.MapFrom(f => f.TimeLimitTaskOrderSn)) - .ForPath(t => t.TimeLimitTask.Remark, opt => opt.MapFrom(f => f.TimeLimitTaskRemark)) - .ForPath(t => t.TimeLimitTask.ShopId, opt => opt.MapFrom(f => f.TimeLimitTaskShopId)) - .ForPath(t => t.TimeLimitTask.SkuId, opt => opt.MapFrom(f => f.TimeLimitTaskSkuId)) - .ForPath(t => t.TimeLimitTask.TaskId, opt => opt.MapFrom(f => f.TimeLimitTaskBelongTaskId)); + CreateMap(); + + + //CreateMap().ForPath(t => t.TimeLimitTask.Id, opt => opt.MapFrom(f => f.TimeLimitTaskId)) + // .ForPath(t => t.TimeLimitTask.CompletionTime, opt => opt.MapFrom(f => f.TimeLimitTaskCompletionTime)) + // .ForPath(t => t.TimeLimitTask.ExpirationTime, opt => opt.MapFrom(f => f.TimeLimitTaskExpirationTime)) + // .ForPath(t => t.TimeLimitTask.PayTime, opt => opt.MapFrom(f => f.TimeLimitTaskPayTime)) + // .ForPath(t => t.TimeLimitTask.IsTimely, opt => opt.MapFrom(f => f.TimeLimitTaskIsTimely)) + // .ForPath(t => t.TimeLimitTask.CreateTme, opt => opt.MapFrom(f => f.TimeLimitTaskCreateTme)) + // .ForPath(t => t.TimeLimitTask.OrderId, opt => opt.MapFrom(f => f.TimeLimitTaskOrderId)) + // .ForPath(t => t.TimeLimitTask.OrderSn, opt => opt.MapFrom(f => f.TimeLimitTaskOrderSn)) + // .ForPath(t => t.TimeLimitTask.Remark, opt => opt.MapFrom(f => f.TimeLimitTaskRemark)) + // .ForPath(t => t.TimeLimitTask.ShopId, opt => opt.MapFrom(f => f.TimeLimitTaskShopId)) + // .ForPath(t => t.TimeLimitTask.SkuId, opt => opt.MapFrom(f => f.TimeLimitTaskSkuId)) + // .ForPath(t => t.TimeLimitTask.TaskId, opt => opt.MapFrom(f => f.TimeLimitTaskBelongTaskId)); } }