Browse Source

1

updatebug
shanji 2 years ago
parent
commit
2228f6126f
  1. 2
      BBWYB.Client/Models/APIModel/Response/Order/OrderResponse.cs
  2. 2
      BBWYB.Client/Models/Order/Order.cs
  3. 49
      BBWYB.Server.Business/Order/OrderBusiness.cs
  4. 2
      BBWYB.Server.Model/Dto/Response/Order/OrderResponse.cs
  5. 9
      BBWYB.Server.Model/MappingProfiles.cs

2
BBWYB.Client/Models/APIModel/Response/Order/OrderResponse.cs

@ -142,7 +142,7 @@ namespace BBWYB.Client.Models
/// </summary>
public OrderCostResponse OrderCost { get; set; }
public OrderPurchaseInfoResponse OrderPurchaseInfo { get; set; }
public IList<OrderPurchaseInfoResponse> OrderPurchaseInfoList { get; set; }
/// <summary>
/// 订单成本明细列表

2
BBWYB.Client/Models/Order/Order.cs

@ -148,7 +148,7 @@ namespace BBWYB.Client.Models
/// </summary>
public OrderCost OrderCost { get; set; }
public OrderPurchaseInfo OrderPurchaseInfo { get; set; }
public IList<OrderPurchaseInfo> OrderPurchaseInfoList { get; set; }
public IList<OrderSku> ItemList { get; set; }

49
BBWYB.Server.Business/Order/OrderBusiness.cs

@ -9,6 +9,7 @@ using SDKAdapter;
using SDKAdapter.OperationPlatform.Client;
using SDKAdapter.OperationPlatform.Models;
using System.Linq.Expressions;
using System.Security.Cryptography;
using Yitter.IdGenerator;
namespace BBWYB.Server.Business
@ -22,15 +23,14 @@ namespace BBWYB.Server.Business
this.opPlatformClientFactory = opPlatformClientFactory;
}
private ISelect<Order, OrderConsignee, OrderCost, OrderPurchaseInfo> GetOrderListQueryConditions(QueryOrderRequest request)
private ISelect<Order, OrderConsignee, OrderCost> GetOrderListQueryConditions(QueryOrderRequest request)
{
var select = fsql.Select<Order, OrderConsignee, OrderCost, OrderPurchaseInfo>()
.LeftJoin((o, ocs, oct, op) => o.Id == ocs.OrderId)
.LeftJoin((o, ocs, oct, op) => o.Id == oct.OrderId)
.LeftJoin((o, ocs, oct, op) => o.Id == op.OrderId);
var select = fsql.Select<Order, OrderConsignee, OrderCost>()
.LeftJoin((o, ocs, oct) => o.Id == ocs.OrderId)
.LeftJoin((o, ocs, oct) => o.Id == oct.OrderId);
if (!string.IsNullOrEmpty(request.OrderId))
{
select = select.Where((o, ocs, oct, op) => o.Id == request.OrderId);
select = select.Where((o, ocs, oct) => o.Id == request.OrderId);
}
else
{
@ -39,27 +39,27 @@ namespace BBWYB.Server.Business
var childSelect = fsql.Select<OrderSku>().As("osku")
.WhereIf(!string.IsNullOrEmpty(request.Sku), osku => osku.SkuId == request.Sku)
.WhereIf(!string.IsNullOrEmpty(request.ProductId), osku => osku.ProductId == request.ProductId);
select = select.Where((o, ocs, oct, op) => childSelect.Where(osku => osku.OrderId == o.Id).Any());
select = select.Where((o, ocs, oct) => childSelect.Where(osku => osku.OrderId == o.Id).Any());
}
select = select.WhereIf(request.OrderState != null, (o, ocs, oct, op) => o.OrderState == request.OrderState)
.WhereIf(request.StartDate != null, (o, ocs, oct, op) => o.StartTime >= request.StartDate)
.WhereIf(request.EndDate != null, (o, ocs, oct, op) => o.StartTime <= request.EndDate)
.WhereIf(!string.IsNullOrEmpty(request.ClientOrderId), (o, ocs, oct, op) => o.ClientOrderId == request.ClientOrderId)
.WhereIf(!string.IsNullOrEmpty(request.SourceShopName), (o, ocs, oct, op) => o.SourceShopName == request.SourceShopName)
.WhereIf(!string.IsNullOrEmpty(request.SourceSku), (o, ocs, oct, op) => o.SourceSku == request.SourceSku);
select = select.WhereIf(request.OrderState != null, (o, ocs, oct) => o.OrderState == request.OrderState)
.WhereIf(request.StartDate != null, (o, ocs, oct) => o.StartTime >= request.StartDate)
.WhereIf(request.EndDate != null, (o, ocs, oct) => o.StartTime <= request.EndDate)
.WhereIf(!string.IsNullOrEmpty(request.ClientOrderId), (o, ocs, oct) => o.ClientOrderId == request.ClientOrderId)
.WhereIf(!string.IsNullOrEmpty(request.SourceShopName), (o, ocs, oct) => o.SourceShopName == request.SourceShopName)
.WhereIf(!string.IsNullOrEmpty(request.SourceSku), (o, ocs, oct) => o.SourceSku == request.SourceSku);
}
select = select.WhereIf(request.ShopId != null, (o, ocs, oct, op) => o.ShopId == request.ShopId);
select = select.WhereIf(request.ShopId != null, (o, ocs, oct) => o.ShopId == request.ShopId);
//select = select.Where((o, ocs, oct) => o.ShopId == searchOrderRequest.ShopId);
return select;
}
private Expression<Func<Order, OrderConsignee, OrderCost, OrderPurchaseInfo, Order>> GetOrderListField()
private Expression<Func<Order, OrderConsignee, OrderCost, Order>> GetOrderListField()
{
return (o, ocs, oct, op) => new Order()
return (o, ocs, oct) => new Order()
{
Id = o.Id,
BuyerRemark = o.BuyerRemark,
@ -101,14 +101,7 @@ namespace BBWYB.Server.Business
PlatformCommissionRatio = oct.PlatformCommissionRatio,
Profit = oct.Profit,
PurchaseAmount = oct.PurchaseAmount,
IsManualEdited = oct.IsManualEdited,
PurchaseAccountId = op.PurchaseAccountId,
PurchaseAccountName = op.PurchaseAccountName,
PurchaseMethod = op.PurchaseMethod,
PurchaseOrderId = op.PurchaseOrderId,
PurchasePlatform = op.PurchasePlatform,
PurchaserName = op.PurchaserName
IsManualEdited = oct.IsManualEdited
};
}
@ -117,7 +110,7 @@ namespace BBWYB.Server.Business
if (request.EndDate != null)
request.EndDate = request.EndDate.Value.Date.AddDays(1).AddSeconds(-1);
var select = GetOrderListQueryConditions(request).OrderByDescending((o, ocs, oct, op) => o.StartTime)
var select = GetOrderListQueryConditions(request).OrderByDescending((o, ocs, oct) => o.StartTime)
.Count(out var total)
.Page(request.PageIndex, request.PageSize);
@ -141,6 +134,12 @@ namespace BBWYB.Server.Business
foreach (var order in orderList)
order.OrderCostDetailList = orderCostDetailList.Where(ocd => ocd.OrderId == order.Id).ToList();
#endregion
#region 处理采购信息
var orderPurchaseInfoList = fsql.Select<OrderPurchaseInfo>().Where(op => orderIdList.Contains(op.OrderId)).ToList<OrderPurchaseInfoResponse>();
foreach (var order in orderList)
order.OrderPurchaseInfoList = orderPurchaseInfoList.Where(op => op.OrderId == order.Id).ToList();
#endregion
}
return new OrderListResponse()
{

2
BBWYB.Server.Model/Dto/Response/Order/OrderResponse.cs

@ -142,7 +142,7 @@
/// <summary>
/// 订单采购信息
/// </summary>
public OrderPurchaseInfoResponse OrderPurchaseInfo { get; set; }
public IList<OrderPurchaseInfoResponse> OrderPurchaseInfoList { get; set; }
/// <summary>
/// 订单成本明细列表

9
BBWYB.Server.Model/MappingProfiles.cs

@ -45,13 +45,8 @@ namespace BBWYB.Server.Model
.ForPath(t => t.OrderCost.PlatformCommissionAmount, opt => opt.MapFrom(f => f.PlatformCommissionAmount ?? 0))
.ForPath(t => t.OrderCost.PlatformCommissionRatio, opt => opt.MapFrom(f => f.PlatformCommissionRatio ?? 0))
.ForPath(t => t.OrderCost.PreferentialAmount, opt => opt.MapFrom(f => f.PreferentialAmount))
.ForPath(t => t.OrderCost.IsManualEdited, opt => opt.MapFrom(f => f.IsManualEdited))
.ForPath(t => t.OrderPurchaseInfo.PurchasePlatform, opt => opt.MapFrom(f => f.PurchasePlatform))
.ForPath(t => t.OrderPurchaseInfo.PurchaserName, opt => opt.MapFrom(f => f.PurchaserName))
.ForPath(t => t.OrderPurchaseInfo.PurchaseAccountName, opt => opt.MapFrom(f => f.PurchaseAccountName))
.ForPath(t => t.OrderPurchaseInfo.PurchaseAccountId, opt => opt.MapFrom(f => f.PurchaseAccountId))
.ForPath(t => t.OrderPurchaseInfo.PurchaseMethod, opt => opt.MapFrom(f => f.PurchaseMethod))
.ForPath(t => t.OrderPurchaseInfo.PurchaseOrderId, opt => opt.MapFrom(f => f.PurchaseOrderId));
.ForPath(t => t.OrderCost.IsManualEdited, opt => opt.MapFrom(f => f.IsManualEdited));
CreateMap<OrderPurchaseInfo, OrderPurchaseInfoResponse>();
//CreateMap<AddOrEditPromotionTaskRequest, PromotionTask>();

Loading…
Cancel
Save