Browse Source

1.修复订单改价接口没有保存sku层运费的问题

2.订单查询接口新增待配置查询条件, 已采购 && 未取消
updatebug
shanji 2 years ago
parent
commit
82abbcf563
  1. 35
      BBWYB.Server.Business/Order/OrderBusiness.cs
  2. 7
      BBWYB.Server.Model/Dto/Request/Order/QueryOrderRequest.cs
  3. 4
      BBWYB.Server.Model/Enums.cs

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

@ -2,6 +2,7 @@
using BBWYB.Common.Http; using BBWYB.Common.Http;
using BBWYB.Common.Log; using BBWYB.Common.Log;
using BBWYB.Common.Models; using BBWYB.Common.Models;
using BBWYB.Server.Business.Extensions;
using BBWYB.Server.Model; using BBWYB.Server.Model;
using BBWYB.Server.Model.Db; using BBWYB.Server.Model.Db;
using BBWYB.Server.Model.Dto; using BBWYB.Server.Model.Dto;
@ -53,8 +54,8 @@ namespace BBWYB.Server.Business
select = select.Where((o, ocs, oct) => childSelect.Where(opi => opi.OrderId == o.Id).Any()); select = select.Where((o, ocs, oct) => childSelect.Where(opi => opi.OrderId == o.Id).Any());
} }
select = select.WhereIf(request.OrderState != null && request.OrderState != Enums.OrderState., (o, ocs, oct) => o.OrderState == request.OrderState) select = select.WhereIf(request.OrderState != null, (o, ocs, oct) => o.OrderState == request.OrderState)
.WhereIf(request.OrderState == Enums.OrderState., (o, ocs, oct) => o.OrderState != Enums.OrderState. && o.PackConfigState != null)//&&o.OrderState> Enums.OrderState.等待采购 .WhereIf(request.IsWaitConfig, (o, ocs, oct) => o.OrderState != Enums.OrderState. && o.IsPurchased == true)
.WhereIf(request.StartDate != null, (o, ocs, oct) => o.StartTime >= request.StartDate) .WhereIf(request.StartDate != null, (o, ocs, oct) => o.StartTime >= request.StartDate)
.WhereIf(request.EndDate != null, (o, ocs, oct) => o.StartTime <= request.EndDate) .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.ClientOrderId), (o, ocs, oct) => o.ClientOrderId == request.ClientOrderId)
@ -258,7 +259,7 @@ namespace BBWYB.Server.Business
public void EditPrice(OP_EditPriceRequest request) public void EditPrice(OP_EditPriceRequest request)
{ {
var client = opPlatformClientFactory.GetClient((AdapterEnums.PlatformType)request.Platform); var client = opPlatformClientFactory.GetClient(request.Platform);
client.EditPrice(new OP_EditPriceRequest() client.EditPrice(new OP_EditPriceRequest()
{ {
AppKey = request.AppKey, AppKey = request.AppKey,
@ -283,25 +284,33 @@ namespace BBWYB.Server.Business
var order = orderListResponse.Items.FirstOrDefault(); var order = orderListResponse.Items.FirstOrDefault();
var orderCost = fsql.Select<OrderCost>(request.OrderId).ToOne(); var orderCost = fsql.Select<OrderCost>(request.OrderId).ToOne();
//orderCost.Profit = dbOrder.OrderTotalPrice -
// orderCost.PurchaseAmount -
// orderCost.DeliveryExpressFreight; // -orderCost.PlatformCommissionAmount
IList<IUpdate<OrderSku>> updates_orderSku = new List<IUpdate<OrderSku>>(); IList<IUpdate<OrderSku>> updates_orderSku = new List<IUpdate<OrderSku>>();
IUpdate<OrderCost> updateOrderCost = null;
foreach (var orderSku in order.OrderSkuList) foreach (var orderSku in order.OrderSkuList)
{ {
updates_orderSku.Add(fsql.Update<OrderSku>(orderSku.Id).Set(osku => osku.Price, orderSku.SkuPrice)); updates_orderSku.Add(fsql.Update<OrderSku>(orderSku.Id).Set(osku => osku.Price, orderSku.SkuPrice)
.Set(osku => osku.BuyerPayFreight, orderSku.FreightAmount)
.Set(osku => osku.InPackAmount, orderSku.PackAmount));
}
if (orderCost != null)
{
orderCost.CalculationOrderCostCostAndProfit(order.OrderTotalAmount,
orderCost.SkuAmount ?? 0M,
orderCost.PurchaseFreight ?? 0M,
orderCost.OutPackAmount ?? 0M,
orderCost.DeliveryExpressFreight ?? 0M);
updateOrderCost = fsql.Update<OrderCost>().SetSource(orderCost);
} }
fsql.Transaction(() => fsql.Transaction(() =>
{ {
fsql.Update<Order>(request.OrderId).Set(o => o.OrderTotalPrice, order.OrderTotalAmount) fsql.Update<Order>(request.OrderId).Set(o => o.OrderTotalPrice, order.OrderTotalAmount)
.Set(o => o.OrderSellerPrice, order.OrderProductAmount) .Set(o => o.OrderSellerPrice, order.OrderProductAmount)
.Set(o => o.FreightPrice, order.FreightAmount) .Set(o => o.FreightPrice, order.FreightAmount)
.ExecuteAffrows(); .ExecuteAffrows();
if (orderCost != null) updateOrderCost?.ExecuteAffrows();
fsql.Update<OrderCost>(request.OrderId).Set(oc => oc.Profit, order.OrderTotalAmount - orderCost.PurchaseAmount - orderCost.DeliveryExpressFreight)
.ExecuteAffrows();
if (updates_orderSku.Count() > 0) if (updates_orderSku.Count() > 0)
{ {
@ -333,8 +342,8 @@ namespace BBWYB.Server.Business
} }
public void QiKuPublishPackAmount(QiKuPublishPackAmountRequest request) public void QiKuPublishPackAmount(QiKuPublishPackAmountRequest request)
{ {
} }
} }
} }

7
BBWYB.Server.Model/Dto/Request/Order/QueryOrderRequest.cs

@ -63,6 +63,11 @@
/// </summary> /// </summary>
public string SourceSku { get; set; } public string SourceSku { get; set; }
/// <summary>
/// 是否为待配置 (复合条件)
/// <para>条件1: 已采购 + 未取消</para>
/// </summary>
public bool IsWaitConfig { get; set; }
} }
} }

4
BBWYB.Server.Model/Enums.cs

@ -85,8 +85,8 @@
= 6, = 6,
= 7, = 7,
退 = 8, 退 = 8,
Unknow = 100, Unknow = 100
= 101, //待配置 = 101,
} }
/// <summary> /// <summary>

Loading…
Cancel
Save