Browse Source

Merge branch 'newOrderState' of http://code.qiyue666.com/pengcong001/bbwyb into newOrderState

yijia
shanji 2 years ago
parent
commit
7ce4ca2360
  1. 32
      BBWYB.Server.API/Controllers/DataRepairController.cs
  2. 25
      BBWYB.Server.API/Controllers/OrderController.cs
  3. 10
      BBWYB.Server.API/Controllers/PurchaseOrderController.cs
  4. 133
      BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs
  5. 17
      BBWYB.Server.Business/Extensions/OrderStateExtension.cs
  6. 59
      BBWYB.Server.Business/Extensions/PurchaseExpressOrderExtension.cs
  7. 312
      BBWYB.Server.Business/Order/OrderBusiness.cs
  8. 163
      BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
  9. 11
      BBWYB.Server.Model/Db/Order/PurchaseExpressOrder.cs
  10. 15
      BBWYB.Server.Model/Dto/Request/Order/CheckSkuRequest.cs
  11. 8
      BBWYB.Server.Model/Dto/Request/Order/QueryExpressOrderRequest.cs
  12. 5
      BBWYB.Server.Model/Dto/Request/PurchaseOrder/ManualSignRequest.cs
  13. 4
      BBWYB.Server.Model/Dto/Response/Order/PurchaseExpressOrderResponse.cs
  14. 9
      BBWYB.Server.Model/Enums.cs

32
BBWYB.Server.API/Controllers/DataRepairController.cs

@ -14,18 +14,6 @@ namespace BBWYB.Server.API.Controllers
this.dataRepairBusiness = dataRepairBusiness; this.dataRepairBusiness = dataRepairBusiness;
} }
[HttpPost]
public void RepairPurchaseExpressOrder()
{
dataRepairBusiness.RepairPurchaseExpressOrder();
}
[HttpPost]
public void ClearCancelOrderData()
{
dataRepairBusiness.ClearCancelOrderData();
}
/// <summary> /// <summary>
/// 手动订阅快递100 /// 手动订阅快递100
/// </summary> /// </summary>
@ -37,25 +25,5 @@ namespace BBWYB.Server.API.Controllers
dataRepairBusiness.SubscribeKD100(waybillNo, targetCompanyCode); dataRepairBusiness.SubscribeKD100(waybillNo, targetCompanyCode);
} }
/// <summary>
/// 修复订单状态
/// </summary>
/// <param name="orderId"></param>
[HttpPost("{orderId}")]
public void RepairOrderState([FromRoute] string orderId)
{
dataRepairBusiness.RepairOrderState(orderId);
}
/// <summary>
/// 修复订单状态
/// </summary>
/// <param name="orderId"></param>
[HttpPost]
public void BatchRepairOrderState([FromBody] IList<string> orderIds)
{
foreach (var orderId in orderIds)
dataRepairBusiness.RepairOrderState(orderId);
}
} }
} }

25
BBWYB.Server.API/Controllers/OrderController.cs

@ -23,7 +23,7 @@ namespace BBWYB.Server.API.Controllers
/// <param name="request"></param> /// <param name="request"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public OrderListResponse GetOrderList([FromBody]QueryOrderRequest request) public OrderListResponse GetOrderList([FromBody] QueryOrderRequest request)
{ {
return orderBusiness.GetOrderList(request); return orderBusiness.GetOrderList(request);
} }
@ -34,11 +34,22 @@ namespace BBWYB.Server.API.Controllers
/// <param name="request"></param> /// <param name="request"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public IList<PurchaseExpressOrderResponse> GetPurchaseExpressOrderList([FromBody]QueryExpressOrderRequest request) public IList<PurchaseExpressOrderResponse> GetPurchaseExpressOrderList([FromBody] QueryExpressOrderRequest request)
{ {
return orderBusiness.GetPurchaseExpressOrderList(request); return orderBusiness.GetPurchaseExpressOrderList(request);
} }
/// <summary>
/// 批量查询快递单列表
/// </summary>
/// <param name="orderIds">订单Id数组</param>
/// <returns></returns>
[HttpPost]
public IList<PurchaseExpressOrderResponse> BatchGetPurchaseExpressOrderList([FromBody] IList<string> orderIds)
{
return orderBusiness.GetPurchaseExpressOrderList(orderIds);
}
///// <summary> ///// <summary>
///// 出库 ///// 出库
@ -93,6 +104,16 @@ namespace BBWYB.Server.API.Controllers
orderBusiness.EditOrderSkuRemark(request); orderBusiness.EditOrderSkuRemark(request);
} }
/// <summary>
/// 来源SKU验收
/// </summary>
/// <param name="request"></param>
[HttpPost]
public void CheckSku([FromBody] CheckSkuRequest request)
{
orderBusiness.CheckSku(request);
}
/// <summary> /// <summary>
/// 齐库推送打包费 /// 齐库推送打包费
/// </summary> /// </summary>

10
BBWYB.Server.API/Controllers/PurchaseOrderController.cs

@ -122,6 +122,16 @@ namespace BBWYB.Server.API.Controllers
purchaseOrderBusiness.ManualSign(request); purchaseOrderBusiness.ManualSign(request);
} }
/// <summary>
/// 批量手动收货
/// </summary>
/// <param name="request"></param>
[HttpPost]
public void BatchManualSign([FromBody] BatchManualSignRequest request)
{
purchaseOrderBusiness.BatchManualSign(request);
}
/// <summary> /// <summary>
/// 1688回调 /// 1688回调
/// </summary> /// </summary>

133
BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs

@ -1,6 +1,7 @@
using BBWYB.Common.Log; using BBWYB.Common.Log;
using BBWYB.Common.Models; using BBWYB.Common.Models;
using BBWYB.Server.Model.Db; using BBWYB.Server.Model.Db;
using BBWYB.Server.Model.Dto;
using FreeSql; using FreeSql;
using Yitter.IdGenerator; using Yitter.IdGenerator;
@ -14,138 +15,6 @@ namespace BBWYB.Server.Business
this.kuaiDi100Manager = kuaiDi100Manager; this.kuaiDi100Manager = kuaiDi100Manager;
} }
public void RepairPurchaseExpressOrder()
{
#region 修复快递单
var purchaseExpressOrderList = fsql.Select<PurchaseExpressOrder>().Where(peo => !string.IsNullOrEmpty(peo.PurchaseOrderId)).ToList();
var wayBillNos = purchaseExpressOrderList.Select(peo => peo.WaybillNo).ToList();
var relationList = fsql.Select<ExpressOrderRelationInfo>().Where(eori => wayBillNos.Contains(eori.WayBillNo)).ToList();
List<ExpressOrderRelationInfo> insertExpressOrderRelationInfoList = new List<ExpressOrderRelationInfo>();
foreach (var peo in purchaseExpressOrderList)
{
var relation = relationList.FirstOrDefault(r => r.WayBillNo == peo.WaybillNo && r.PurchaseOrderId == peo.PurchaseOrderId);
if (relation != null)
continue;
insertExpressOrderRelationInfoList.Add(new ExpressOrderRelationInfo()
{
Id = idGenerator.NewLong(),
CreateTime = DateTime.Now,
OrderId = peo.OrderId,
PurchaseOrderId = peo.PurchaseOrderId,
ShopId = peo.ShopId,
WayBillNo = peo.WaybillNo
});
}
fsql.Transaction(() =>
{
fsql.Insert(insertExpressOrderRelationInfoList).ExecuteAffrows();
});
#endregion
}
/// <summary>
/// 批量清理取消单数据
/// </summary>
public void ClearCancelOrderData()
{
var cancelOrderList = fsql.Select<Order>().Where(o => o.OrderState == Model.Enums.OrderState.).ToList();
var cancelOrderIds = cancelOrderList.Select(o => o.Id);
//var noUsingExpressOrderList = fsql.Select<PurchaseExpressOrder>().Where(peo => !fsql.Select<ExpressOrderRelationInfo>()
// .As("b")
// .ToList(b => b.WayBillNo)
// .Contains(peo.WaybillNo))
// .ToList();
/*
select * from purchaseexpressorder peo where not exists (select r.waybillno from expressorderrelationinfo r where peo.WaybillNo=r.WaybillNo);
*/
fsql.Transaction(() =>
{
fsql.Delete<OrderPurchaseInfo>().Where(opi => cancelOrderIds.Contains(opi.OrderId)).ExecuteAffrows();
fsql.Delete<OrderPurchaseSkuInfo>().Where(posku => cancelOrderIds.Contains(posku.OrderId)).ExecuteAffrows();
fsql.Delete<OrderPurchaseRelationInfo>().Where(opri => cancelOrderIds.Contains(opri.OrderId)).ExecuteAffrows();
fsql.Delete<OrderCost>().Where(oc => cancelOrderIds.Contains(oc.OrderId)).ExecuteAffrows();
fsql.Delete<OrderCostDetail>().Where(ocd => cancelOrderIds.Contains(ocd.OrderId)).ExecuteAffrows();
});
}
public void RepairOrderState(string orderId)
{
List<IUpdate<OrderPurchaseInfo>> updateOrderPurchaseList = new List<IUpdate<OrderPurchaseInfo>>();
IUpdate<Order> updateOrder = null;
var order = fsql.Select<Order>(orderId).ToOne();
#region 查询采购单
var purchaseOrderList = fsql.Select<OrderPurchaseInfo>().Where(ori => ori.IsEnabled == true && ori.OrderId == orderId).ToList();
if (purchaseOrderList.Count() == 0)
throw new Exception("未查询到任何采购单");
var purchaseOrderIds = purchaseOrderList.Select(po => po.PurchaseOrderId).ToList();
#endregion
#region 查询采购SKU
IList<OrderPurchaseSkuInfo> orderPurchaseSkuList = fsql.Select<OrderPurchaseSkuInfo>()
.Where(posku => purchaseOrderIds.Contains(posku.PurchaseOrderId))
.ToList();
#endregion
#region 查询采购sku关联信息
IList<OrderPurchaseRelationInfo> orderPurchaseRelationList = fsql.Select<OrderPurchaseRelationInfo>()
.Where(ops => purchaseOrderIds.Contains(ops.PurchaseOrderId))
.ToList();
#endregion
#region 查询采购单关联的快递单
var purchaseExpressOrderList = fsql.Select<ExpressOrderRelationInfo, PurchaseExpressOrder>()
.InnerJoin((eori, peo) => eori.WayBillNo == peo.WaybillNo)
.Where((eori, peo) => eori.OrderId == orderId).ToList((eori, peo) => new PurchaseExpressOrder
{
CreateTime = peo.CreateTime,
ExpressContent = peo.ExpressContent,
ExpressChangedTime = peo.ExpressChangedTime,
ExpressState = peo.ExpressState,
IsSubscribeKD100 = peo.IsSubscribeKD100,
OrderId = eori.OrderId,
PurchaseOrderId = eori.PurchaseOrderId,
ShopId = eori.ShopId.Value,
SourceExpressId = peo.SourceExpressId,
SourceExpressName = peo.SourceExpressName,
TargetExpressId = peo.TargetExpressId,
TargetExpressName = peo.TargetExpressName,
WaybillNo = peo.WaybillNo
});
#endregion
foreach (var purchaseOrder in purchaseOrderList)
{
var currentPurchaseOrderSkuList = orderPurchaseSkuList.Where(posku => posku.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList();
var currentPurchaseExpressOrderList = purchaseExpressOrderList.Where(peo => peo.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList();
var oldPurchaseOrderState = purchaseOrder.OrderState;
purchaseOrder.CalculationOrderState(fsql, currentPurchaseOrderSkuList, currentPurchaseExpressOrderList);
if (purchaseOrder.OrderState != oldPurchaseOrderState)
{
var update = fsql.Update<OrderPurchaseInfo>(purchaseOrder.Id).Set(opi => opi.OrderState, purchaseOrder.OrderState);
updateOrderPurchaseList.Add(update);
}
}
var oldOrderState = order.OrderState;
order.CalculationOrderState(fsql, null, purchaseOrderList);
if (order.OrderState != oldOrderState)
updateOrder = fsql.Update<Order>(order.Id).Set(o => o.OrderState, order.OrderState);
fsql.Transaction(() =>
{
foreach (var update in updateOrderPurchaseList)
update.ExecuteAffrows();
updateOrder?.ExecuteAffrows();
});
}
public void SubscribeKD100(string waybillNo, string targetCompanyCode) public void SubscribeKD100(string waybillNo, string targetCompanyCode)
{ {

17
BBWYB.Server.Business/Extensions/OrderStateExtension.cs

@ -21,8 +21,7 @@ namespace BBWYB.Server.Business
{ {
if (order.OrderState == Enums.OrderState. || if (order.OrderState == Enums.OrderState. ||
order.OrderState == Enums.OrderState. || order.OrderState == Enums.OrderState. ||
order.OrderState == Enums.OrderState. || order.OrderState == Enums.OrderState.)
order.OrderState == Enums.OrderState.)
return; return;
if (orderSkuList == null) if (orderSkuList == null)
@ -102,11 +101,19 @@ namespace BBWYB.Server.Business
} }
#endregion #endregion
#region 打包中 #region 待验收/待核算/已完成
if (orderPurchaseInfoList.Any(opi => opi.OrderState == Enums.PurchaseOrderState.) && if (orderPurchaseInfoList.Any(opi => opi.OrderState == Enums.PurchaseOrderState.) &&
orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.) == orderPurchaseInfoList.Count()) orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.) == orderPurchaseInfoList.Count())
{ {
order.OrderState = Enums.OrderState.; if (order.IntoStoreType == Enums.IntoStoreType.)
{
if (orderSkuList.Any(osku => osku.IsCheck != true))
order.OrderState = Enums.OrderState.;
else
order.OrderState = Enums.OrderState.;
}
else
order.OrderState = Enums.OrderState.;
return; return;
} }
#endregion #endregion
@ -146,7 +153,7 @@ namespace BBWYB.Server.Business
} }
if (purchaseExpressOrderList == null) if (purchaseExpressOrderList == null)
purchaseExpressOrderList = fsql.Select<PurchaseExpressOrder>().Where(exo => exo.PurchaseOrderId == orderPurchaseInfo.PurchaseOrderId).ToList(); return;
if (orderPurchaseInfo.PurchasePlatform == Enums.Platform.) //支持采购sku和关联信息 if (orderPurchaseInfo.PurchasePlatform == Enums.Platform.) //支持采购sku和关联信息
{ {

59
BBWYB.Server.Business/Extensions/PurchaseExpressOrderExtension.cs

@ -0,0 +1,59 @@
using BBWYB.Server.Model;
using BBWYB.Server.Model.Db;
using BBWYB.Server.Model.Dto;
namespace BBWYB.Server.Business.Extensions
{
public static class PurchaseExpressOrderExtension
{
/// <summary>
/// 计算快递单归属
/// </summary>
/// <param name="purchaseExpressOrder">必须是经过与快递单关系表进行联合查询的结果 (ExpressOrderRelationInfo-PurchaseExpressOrder)</param>
/// <param name="orderPurchaseInfoList"></param>
/// <param name="orderPurchaseRelationInfoList"></param>
/// <param name="orderPurchaseSkuInfoList"></param>
public static void CalculationBelongOrderSku(this PurchaseExpressOrderResponse purchaseExpressOrder,
IList<OrderPurchaseInfoResponse> orderPurchaseInfoList,
IList<OrderPurchaseRelationInfo> orderPurchaseRelationInfoList,
IList<OrderPurchaseSkuInfoResponse> orderPurchaseSkuInfoList)
{
var purchaseOrder = orderPurchaseInfoList.FirstOrDefault(po => po.PurchaseOrderId == purchaseExpressOrder.PurchaseOrderId);
if (purchaseOrder == null)
return;
if (purchaseOrder.PurchasePlatform == Enums.Platform.)
{
var purchaseSkuIds = orderPurchaseSkuInfoList.Where(posku => posku.WaybillNo == purchaseExpressOrder.WaybillNo &&
posku.PurchaseOrderId == purchaseOrder.PurchaseOrderId)
.Select(posku => posku.PurchaseSkuId).ToList();
var orderSkuIds = orderPurchaseRelationInfoList.Where(ori => ori.PurchaseOrderId == purchaseOrder.PurchaseOrderId &&
purchaseSkuIds.Contains(ori.PurchaseSkuId))
.Select(ori => ori.BelongSkuId)
.Distinct()
.ToList();
purchaseExpressOrder.BelongSkuIds = string.Join(",", orderSkuIds);
//var currentOrderSkuList = orderSkuList.Where(osku => osku.OrderId == purchaseOrder.OrderId &&
// orderSkuIds.Contains(osku.SkuId)).ToList();
//foreach (var osku in currentOrderSkuList)
//{
// if (osku.PurchaseExpressOrderList.Any(peo => peo.WaybillNo == purchaseExpressOrder.WaybillNo))
// continue;
// osku.PurchaseExpressOrderList.Add(purchaseExpressOrder);
//}
}
else
{
purchaseExpressOrder.BelongSkuIds = purchaseOrder.BelongSkuIds;
//var currentOrderSkuList = orderSkuList.Where(osku => osku.OrderId == purchaseOrder.OrderId &&
// purchaseOrder.BelongSkuIds.Contains(osku.SkuId)).ToList();
//foreach (var osku in currentOrderSkuList)
//{
// if (osku.PurchaseExpressOrderList.Any(peo => peo.WaybillNo == purchaseExpressOrder.WaybillNo))
// continue;
// osku.PurchaseExpressOrderList.Add(purchaseExpressOrder);
//}
}
}
}
}

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

@ -54,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 == Enums.OrderState. || select = select.WhereIf(request.OrderState == Enums.OrderState. ||
request.OrderState == Enums.OrderState. || request.OrderState == Enums.OrderState. ||
request.OrderState == Enums.OrderState. || request.OrderState == Enums.OrderState. ||
request.OrderState == Enums.OrderState. || request.OrderState == Enums.OrderState. ||
request.OrderState == Enums.OrderState., request.OrderState == Enums.OrderState.,
(o, ocs, oct) => o.OrderState == request.OrderState) (o, ocs, oct) => o.OrderState == request.OrderState)
@ -206,40 +206,51 @@ namespace BBWYB.Server.Business
#region 处理SKU的快递单 #region 处理SKU的快递单
foreach (var purchaseExpressOrder in purchaseExpressOrderList) foreach (var purchaseExpressOrder in purchaseExpressOrderList)
{ {
var purchaseOrder = orderPurchaseInfoList.FirstOrDefault(po => po.PurchaseOrderId == purchaseExpressOrder.PurchaseOrderId); purchaseExpressOrder.CalculationBelongOrderSku(orderPurchaseInfoList, orderPurchaseRelationInfoList, orderPurchaseSkuInfoList);
if (purchaseOrder == null) var currentOrderSkuList = orderSkuList.Where(osku => !string.IsNullOrEmpty(purchaseExpressOrder.BelongSkuIds) &&
continue; osku.OrderId == purchaseExpressOrder.OrderId &&
if (purchaseOrder.PurchasePlatform == Enums.Platform.) purchaseExpressOrder.BelongSkuIds.Contains(osku.SkuId)).ToList();
foreach (var osku in currentOrderSkuList)
{ {
var purchaseSkuIds = orderPurchaseSkuInfoList.Where(posku => posku.WaybillNo == purchaseExpressOrder.WaybillNo && if (osku.PurchaseExpressOrderList.Any(peo => peo.WaybillNo == purchaseExpressOrder.WaybillNo))
posku.PurchaseOrderId == purchaseOrder.PurchaseOrderId) continue;
.Select(posku => posku.PurchaseSkuId).ToList(); osku.PurchaseExpressOrderList.Add(purchaseExpressOrder);
var orderSkuIds = orderPurchaseRelationInfoList.Where(ori => ori.PurchaseOrderId == purchaseOrder.PurchaseOrderId &&
purchaseSkuIds.Contains(ori.PurchaseSkuId))
.Select(ori => ori.BelongSkuId)
.Distinct()
.ToList();
var currentOrderSkuList = orderSkuList.Where(osku => osku.OrderId == purchaseOrder.OrderId &&
orderSkuIds.Contains(osku.SkuId)).ToList();
foreach (var osku in currentOrderSkuList)
{
if (osku.PurchaseExpressOrderList.Any(peo => peo.WaybillNo == purchaseExpressOrder.WaybillNo))
continue;
osku.PurchaseExpressOrderList.Add(purchaseExpressOrder);
}
}
else
{
var currentOrderSkuList = orderSkuList.Where(osku => osku.OrderId == purchaseOrder.OrderId &&
purchaseOrder.BelongSkuIds.Contains(osku.SkuId)).ToList();
foreach (var osku in currentOrderSkuList)
{
if (osku.PurchaseExpressOrderList.Any(peo => peo.WaybillNo == purchaseExpressOrder.WaybillNo))
continue;
osku.PurchaseExpressOrderList.Add(purchaseExpressOrder);
}
} }
//var purchaseOrder = orderPurchaseInfoList.FirstOrDefault(po => po.PurchaseOrderId == purchaseExpressOrder.PurchaseOrderId);
//if (purchaseOrder == null)
// continue;
//if (purchaseOrder.PurchasePlatform == Enums.Platform.阿里巴巴)
//{
// var purchaseSkuIds = orderPurchaseSkuInfoList.Where(posku => posku.WaybillNo == purchaseExpressOrder.WaybillNo &&
// posku.PurchaseOrderId == purchaseOrder.PurchaseOrderId)
// .Select(posku => posku.PurchaseSkuId).ToList();
// var orderSkuIds = orderPurchaseRelationInfoList.Where(ori => ori.PurchaseOrderId == purchaseOrder.PurchaseOrderId &&
// purchaseSkuIds.Contains(ori.PurchaseSkuId))
// .Select(ori => ori.BelongSkuId)
// .Distinct()
// .ToList();
// var currentOrderSkuList = orderSkuList.Where(osku => osku.OrderId == purchaseOrder.OrderId &&
// orderSkuIds.Contains(osku.SkuId)).ToList();
// foreach (var osku in currentOrderSkuList)
// {
// if (osku.PurchaseExpressOrderList.Any(peo => peo.WaybillNo == purchaseExpressOrder.WaybillNo))
// continue;
// osku.PurchaseExpressOrderList.Add(purchaseExpressOrder);
// }
//}
//else
//{
// var currentOrderSkuList = orderSkuList.Where(osku => osku.OrderId == purchaseOrder.OrderId &&
// purchaseOrder.BelongSkuIds.Contains(osku.SkuId)).ToList();
// foreach (var osku in currentOrderSkuList)
// {
// if (osku.PurchaseExpressOrderList.Any(peo => peo.WaybillNo == purchaseExpressOrder.WaybillNo))
// continue;
// osku.PurchaseExpressOrderList.Add(purchaseExpressOrder);
// }
//}
} }
#endregion #endregion
} }
@ -273,121 +284,91 @@ namespace BBWYB.Server.Business
var orderPurchaseInfoList = fsql.Select<OrderPurchaseInfo>().Where(op => op.OrderId == request.OrderId && op.IsEnabled == true).ToList<OrderPurchaseInfoResponse>(); var orderPurchaseInfoList = fsql.Select<OrderPurchaseInfo>().Where(op => op.OrderId == request.OrderId && op.IsEnabled == true).ToList<OrderPurchaseInfoResponse>();
var orderPurchaseRelationList = fsql.Select<OrderPurchaseRelationInfo>().Where(opri => opri.OrderId == request.OrderId && opri.SourceSkuId == request.SourceSkuId).ToList(); var orderPurchaseRelationList = fsql.Select<OrderPurchaseRelationInfo>().Where(opri => opri.OrderId == request.OrderId && opri.SourceSkuId == request.SourceSkuId).ToList();
var orderPurchaseSkuList = fsql.Select<OrderPurchaseSkuInfo>().Where(posku => posku.OrderId == request.OrderId).ToList(); var orderPurchaseSkuList = fsql.Select<OrderPurchaseSkuInfo>().Where(posku => posku.OrderId == request.OrderId).ToList<OrderPurchaseSkuInfoResponse>();
var orderSkuList = fsql.Select<OrderSku>().Where(osku => osku.OrderId == request.OrderId).ToList(); var orderSku = fsql.Select<OrderSku>().Where(osku => osku.OrderId == request.OrderId && osku.BelongSkuId == request.SourceSkuId).ToOne();
IList<PurchaseExpressOrderResponse> list = new List<PurchaseExpressOrderResponse>(); IList<PurchaseExpressOrderResponse> list = new List<PurchaseExpressOrderResponse>();
#region 处理SKU的快递单 #region 处理SKU的快递单
foreach (var purchaseOrder in orderPurchaseInfoList) foreach (var purchaseExpressOrder in purchaseExpressOrderList)
{ {
if (purchaseOrder.PurchasePlatform == Enums.Platform.) purchaseExpressOrder.CalculationBelongOrderSku(orderPurchaseInfoList, orderPurchaseRelationList, orderPurchaseSkuList);
{ if (!string.IsNullOrEmpty(purchaseExpressOrder.BelongSkuIds))
var currentRelationList = orderPurchaseRelationList.Where(ori => ori.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList();
var waybillNos = orderPurchaseSkuList.Where(posku => posku.PurchaseOrderId == purchaseOrder.PurchaseOrderId &&
currentRelationList.Any(opri => opri.PurchaseSkuId == posku.PurchaseSkuId))
.Select(x => x.WaybillNo)
.ToList();
foreach (var waybillNo in waybillNos)
{
var peo = purchaseExpressOrderList.FirstOrDefault(x => x.WaybillNo == waybillNo);
if (peo != null && !list.Any(x => x.WaybillNo == waybillNo && x.PurchaseOrderId == purchaseOrder.PurchaseOrderId))
list.Add(peo);
}
}
else
{ {
var currentSkuList = orderSkuList.Where(osku => purchaseOrder.BelongSkuIds.Contains(osku.SkuId)).Select(osku => osku.BelongSkuId).Distinct().ToList(); if (purchaseExpressOrder.BelongSkuIds.Contains(orderSku.SkuId))
if (currentSkuList.Contains(request.SourceSkuId))
{ {
var peoList = purchaseExpressOrderList.Where(x => x.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList(); if (!list.Any(x => x.WaybillNo == purchaseExpressOrder.WaybillNo))
foreach (var peo in peoList) list.Add(purchaseExpressOrder);
{
if (!list.Any(x => x.WaybillNo == peo.WaybillNo && x.PurchaseOrderId == purchaseOrder.PurchaseOrderId))
list.Add(peo);
}
} }
} }
} }
//foreach (var purchaseOrder in orderPurchaseInfoList)
//{
// if (purchaseOrder.PurchasePlatform == Enums.Platform.阿里巴巴)
// {
// var currentRelationList = orderPurchaseRelationList.Where(ori => ori.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList();
// var waybillNos = orderPurchaseSkuList.Where(posku => posku.PurchaseOrderId == purchaseOrder.PurchaseOrderId &&
// currentRelationList.Any(opri => opri.PurchaseSkuId == posku.PurchaseSkuId))
// .Select(x => x.WaybillNo)
// .ToList();
// foreach (var waybillNo in waybillNos)
// {
// var peo = purchaseExpressOrderList.FirstOrDefault(x => x.WaybillNo == waybillNo);
// if (peo != null && !list.Any(x => x.WaybillNo == waybillNo && x.PurchaseOrderId == purchaseOrder.PurchaseOrderId))
// list.Add(peo);
// }
// }
// else
// {
// var currentSkuList = orderSkuList.Where(osku => purchaseOrder.BelongSkuIds.Contains(osku.SkuId)).Select(osku => osku.BelongSkuId).Distinct().ToList();
// if (currentSkuList.Contains(request.SourceSkuId))
// {
// var peoList = purchaseExpressOrderList.Where(x => x.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList();
// foreach (var peo in peoList)
// {
// if (!list.Any(x => x.WaybillNo == peo.WaybillNo && x.PurchaseOrderId == purchaseOrder.PurchaseOrderId))
// list.Add(peo);
// }
// }
// }
//}
#endregion #endregion
return list; return list;
} }
//public void OutStock(OutStockRequest request) public IList<PurchaseExpressOrderResponse> GetPurchaseExpressOrderList(IList<string> orderIds)
//{ {
// var dbOrder = fsql.Select<Order>(request.OrderId).ToOne(); var purchaseExpressOrderList = fsql.Select<ExpressOrderRelationInfo, PurchaseExpressOrder>()
// if (dbOrder == null) .InnerJoin((eori, peo) => eori.WayBillNo == peo.WaybillNo)
// throw new BusinessException($"订单{request.OrderId}不存在"); .Where((eori, peo) => orderIds.Contains(eori.OrderId)).ToList((eori, peo) => new PurchaseExpressOrderResponse
{
// var dbOrderPurchaseInfoList = fsql.Select<OrderPurchaseInfo>().Where(opi => opi.OrderId == request.OrderId && opi.IsEnabled == true).ToList(); CreateTime = peo.CreateTime,
// var dbOrderPurchaseInfo = dbOrderPurchaseInfoList.FirstOrDefault(opi => opi.PurchaseOrderId == request.PurchaseOrderId); ExpressContent = peo.ExpressContent,
ExpressChangedTime = peo.ExpressChangedTime,
// dbOrderPurchaseInfo.WaybillNo = request.WayBillNo; ExpressState = peo.ExpressState,
// dbOrderPurchaseInfo.SourceExpressId = request.SourceExpressId; IsSubscribeKD100 = peo.IsSubscribeKD100,
// dbOrderPurchaseInfo.SourceExpressName = request.SourceExpressName; OrderId = eori.OrderId,
// dbOrderPurchaseInfo.TargetExpressId = request.TargetExpressId; PurchaseOrderId = eori.PurchaseOrderId,
// dbOrderPurchaseInfo.TargetExpressName = request.TargetExpressName; ShopId = eori.ShopId.Value,
// dbOrderPurchaseInfo.OrderState = Enums.PurchaseOrderState.待收货; SourceExpressId = peo.SourceExpressId,
SourceExpressName = peo.SourceExpressName,
// #region 订单状态 TargetExpressId = peo.TargetExpressId,
// dbOrder.CalculationOrderState(fsql, null, dbOrderPurchaseInfoList); TargetExpressName = peo.TargetExpressName,
// #endregion WaybillNo = peo.WaybillNo
});
// if (!string.IsNullOrEmpty(request.TargetExpressId))
// { var orderPurchaseInfoList = fsql.Select<OrderPurchaseInfo>().Where(op => orderIds.Contains(op.OrderId) && op.IsEnabled == true).ToList<OrderPurchaseInfoResponse>();
// #region 订阅快递100 var orderPurchaseRelationList = fsql.Select<OrderPurchaseRelationInfo>().Where(opri => orderIds.Contains(opri.OrderId)).ToList();
var orderPurchaseSkuList = fsql.Select<OrderPurchaseSkuInfo>().Where(posku => orderIds.Contains(posku.OrderId)).ToList<OrderPurchaseSkuInfoResponse>();
// #endregion
#region 处理SKU的快递单
// //try foreach (var purchaseExpressOrder in purchaseExpressOrderList)
// //{ {
// // opPlatformClientFactory.GetClient((AdapterEnums.PlatformType)request.Platform) purchaseExpressOrder.CalculationBelongOrderSku(orderPurchaseInfoList, orderPurchaseRelationList, orderPurchaseSkuList);
// // .OutStock(new OP_OutStockRequest() }
// // { #endregion
// // AppKey = request.AppKey, return purchaseExpressOrderList;
// // AppSecret = request.AppSecret, }
// // AppToken = request.AppToken,
// // ExpressId = request.TargetExpressId,
// // ExpressName = request.TargetExpressName,
// // OrderId = request.OrderId,
// // Platform = (AdapterEnums.PlatformType)request.Platform,
// // WayBillNo = request.WayBillNo
// // });
// //}
// //catch (Exception ex)
// //{
// // nLogManager.Default().Error(ex, $"OutStock Request {JsonConvert.SerializeObject(request)}");
// //}
// }
// #region 通知C端出库
// //通知C端
// try
// {
// restApiService.SendRequest("https://bbwy.qiyue666.com",
// "/Api/PurchaseOrder/QuanTanSendGoodsCallback",
// new
// {
// OrderId = request.OrderId,
// ExpressId = request.SourceExpressId,
// ExpressName = request.SourceExpressName,
// request.WayBillNo
// },
// null,
// HttpMethod.Post);
// }
// catch (Exception ex)
// {
// }
// #endregion
// fsql.Transaction(() =>
// {
// fsql.Update<OrderPurchaseInfo>().SetSource(dbOrderPurchaseInfo).ExecuteAffrows();
// fsql.Update<Order>(request.OrderId).Set(o => o.OrderState, dbOrder.OrderState).ExecuteAffrows();
// });
//}
public void CancelOrder(CancelOrderRequest request, string mdsToken) public void CancelOrder(CancelOrderRequest request, string mdsToken)
{ {
@ -403,13 +384,26 @@ namespace BBWYB.Server.Business
fsql.Update<Order>(request.OrderId).Set(o => o.OrderState, Enums.OrderState.).ExecuteAffrows(); fsql.Update<Order>(request.OrderId).Set(o => o.OrderState, Enums.OrderState.).ExecuteAffrows();
var sql = $"update purchaseorderv2 set OrderState=6 where Id='{request.OrderId}'"; try
//取消C端采购单 {
restApiService.SendRequest("https://bbwy.qiyue666.com", restApiService.SendRequest("https://bbwy.qiyue666.com", "api/BatchPurchase/UpdatePurchaseOrderState", new
"/Api/Sql/ExecuteNonQuery", {
new { sql = sql.AESEncrypt() }, OrderId = request.OrderId,
new Dictionary<string, string>() { { "Authorization", $"{mdsToken}" } }, PurchaseOrderState = Enums.OrderState.
HttpMethod.Post); }, null, HttpMethod.Post);
}
catch
{
}
//var sql = $"update purchaseorderv2 set OrderState=6 where Id='{request.OrderId}'";
////取消C端采购单
//restApiService.SendRequest("https://bbwy.qiyue666.com",
// "/Api/Sql/ExecuteNonQuery",
// new { sql = sql.AESEncrypt() },
// new Dictionary<string, string>() { { "Authorization", $"Bearer {mdsToken}" } },
// HttpMethod.Post);
try try
{ {
@ -516,5 +510,37 @@ namespace BBWYB.Server.Business
{ {
} }
public void CheckSku(CheckSkuRequest request)
{
var dbOrder = fsql.Select<Order>(request.OrderId).ToOne();
if (dbOrder == null)
throw new BusinessException($"订单{request.OrderId}不存在");
var orderSkuList = fsql.Select<OrderSku>().Where(osku => osku.OrderId == request.OrderId).ToList();
var orderSku = orderSkuList.FirstOrDefault(osku => osku.BelongSkuId == request.SourceSkuId);
if (orderSku == null)
throw new BusinessException($"订单{request.OrderId}的归属sku中不存在{request.SourceSkuId}");
if (orderSku.IsCheck == true)
throw new BusinessException("已验收,无需重复验收");
IUpdate<Order> updateOrder = null;
IUpdate<OrderSku> updateOrderSku = null;
orderSku.IsCheck = true;
updateOrderSku = fsql.Update<OrderSku>(orderSku.Id).Set(osku => osku.IsCheck, true);
var oldOrderState = dbOrder.OrderState;
dbOrder.CalculationOrderState(fsql, orderSkuList, null);
if (oldOrderState != dbOrder.OrderState)
updateOrder = fsql.Update<Order>(dbOrder.Id).Set(o => o.OrderState, dbOrder.OrderState);
fsql.Transaction(() =>
{
updateOrderSku?.ExecuteAffrows();
updateOrder?.ExecuteAffrows();
});
}
} }
} }

163
BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs

@ -58,8 +58,7 @@ namespace BBWYB.Server.Business
{ {
Enums.OrderState., Enums.OrderState.,
Enums.OrderState., Enums.OrderState.,
Enums.OrderState., Enums.OrderState.
Enums.OrderState.
}; };
} }
@ -1021,17 +1020,6 @@ namespace BBWYB.Server.Business
var dbOrderCost = fsql.Select<OrderCost>(request.OrderId).ToOne(); var dbOrderCost = fsql.Select<OrderCost>(request.OrderId).ToOne();
var dbOrder = fsql.Select<Order>(request.OrderId).ToOne(); var dbOrder = fsql.Select<Order>(request.OrderId).ToOne();
//try
//{
// dbOrderCost.PurchaseAmount = dbOrderCostDetailList.Where(ocd => ocd.PurchaseOrderId != request.PurchaseOrderId).Sum(ocd => ocd.TotalCost);
//}
//catch
//{
// dbOrderCost.PurchaseAmount = 0;
//}
//dbOrderCost.Profit = dbOrder.OrderTotalPrice -
// dbOrderCost.PurchaseAmount -
// dbOrderCost.DeliveryExpressFreight; // -orderCost.PlatformCommissionAmount
var purchaseProductAmount = dbOrderCostDetailList.Count() == 0 ? 0M : dbOrderCostDetailList.Sum(ocd => ocd.SkuAmount) ?? 0M; var purchaseProductAmount = dbOrderCostDetailList.Count() == 0 ? 0M : dbOrderCostDetailList.Sum(ocd => ocd.SkuAmount) ?? 0M;
var purchaseFreight = dbOrderCostDetailList.Count() == 0 ? 0M : dbOrderCostDetailList.Sum(ocd => ocd.PurchaseFreight) ?? 0M; var purchaseFreight = dbOrderCostDetailList.Count() == 0 ? 0M : dbOrderCostDetailList.Sum(ocd => ocd.PurchaseFreight) ?? 0M;
var outPackAmount = dbOrderCostDetailList.Count() == 0 ? 0M : dbOrderCostDetailList.Sum(ocd => ocd.OutPackAmount) ?? 0M; var outPackAmount = dbOrderCostDetailList.Count() == 0 ? 0M : dbOrderCostDetailList.Sum(ocd => ocd.OutPackAmount) ?? 0M;
@ -1099,6 +1087,9 @@ namespace BBWYB.Server.Business
public void EditPurchaseExpressOrder(EditPurchaseExpressOrderRequest request) public void EditPurchaseExpressOrder(EditPurchaseExpressOrderRequest request)
{ {
nLogManager.Default().Info($"EditPurchaseExpressOrder {JsonConvert.SerializeObject(request)}"); nLogManager.Default().Info($"EditPurchaseExpressOrder {JsonConvert.SerializeObject(request)}");
throw new BusinessException("修改快递单已暂时下线,待调整后重新上线");
var dbOrder = fsql.Select<Order>(request.OrderId).ToOne(o => new { o.Id, o.ShopId, o.OrderSn }); var dbOrder = fsql.Select<Order>(request.OrderId).ToOne(o => new { o.Id, o.ShopId, o.OrderSn });
if (dbOrder == null) if (dbOrder == null)
throw new BusinessException($"订单号{request.OrderId}不存在"); throw new BusinessException($"订单号{request.OrderId}不存在");
@ -1109,8 +1100,8 @@ namespace BBWYB.Server.Business
var oldPeo = fsql.Select<PurchaseExpressOrder>(request.OldWaybillNo).ToOne(); var oldPeo = fsql.Select<PurchaseExpressOrder>(request.OldWaybillNo).ToOne();
if (oldPeo == null) if (oldPeo == null)
throw new BusinessException($"旧快递单号{request.OldWaybillNo}不存在"); throw new BusinessException($"旧快递单号{request.OldWaybillNo}不存在");
if (oldPeo.OrderId != request.OrderId || oldPeo.PurchaseOrderId != request.PurchaseOrderId) //if (oldPeo.OrderId != request.OrderId || oldPeo.PurchaseOrderId != request.PurchaseOrderId)
throw new BusinessException("快递单号不属于当前操作提交的订单或采购单"); // throw new BusinessException("快递单号不属于当前操作提交的订单或采购单");
var newPeo = fsql.Select<PurchaseExpressOrder>(request.NewWaybillNo).ToOne(); var newPeo = fsql.Select<PurchaseExpressOrder>(request.NewWaybillNo).ToOne();
if (newPeo != null) if (newPeo != null)
throw new BusinessException($"新快递单号{request.NewWaybillNo}已存在"); throw new BusinessException($"新快递单号{request.NewWaybillNo}已存在");
@ -1211,7 +1202,8 @@ namespace BBWYB.Server.Business
Id = o.Id, Id = o.Id,
OrderSn = o.OrderSn, OrderSn = o.OrderSn,
OrderState = o.OrderState, OrderState = o.OrderState,
ShopId = o.ShopId ShopId = o.ShopId,
IntoStoreType = o.IntoStoreType
}); });
if (dbOrder == null) if (dbOrder == null)
throw new BusinessException("未查询到采购单的订单信息"); throw new BusinessException("未查询到采购单的订单信息");
@ -1367,6 +1359,21 @@ namespace BBWYB.Server.Business
taskSchedulerManager.PurchaseOrderCallbackTaskScheduler); taskSchedulerManager.PurchaseOrderCallbackTaskScheduler);
} }
public void BatchManualSign(BatchManualSignRequest request)
{
if (request.WayBillNoList == null || request.WayBillNoList.Count() == 0)
throw new BusinessException("缺少快递单号");
if (request.WayBillNoList.Distinct().Count() < request.WayBillNoList.Count())
throw new BusinessException("不允许重复的快递单号");
Task.Factory.StartNew(() =>
{
foreach (var waybillNo in request.WayBillNoList)
OnExpressOrderChange(waybillNo, "QianShou", DateTime.Now, "手动签收");
}, CancellationToken.None,
TaskCreationOptions.LongRunning,
taskSchedulerManager.PurchaseOrderCallbackTaskScheduler);
}
///// <summary> ///// <summary>
///// 手动收货 ///// 手动收货
///// </summary> ///// </summary>
@ -1592,7 +1599,8 @@ namespace BBWYB.Server.Business
Id = o.Id, Id = o.Id,
OrderSn = o.OrderSn, OrderSn = o.OrderSn,
OrderState = o.OrderState, OrderState = o.OrderState,
ShopId = o.ShopId ShopId = o.ShopId,
IntoStoreType = o.IntoStoreType
}); });
if (dbOrder == null) if (dbOrder == null)
throw new Exception("未查询到采购单的订单信息"); throw new Exception("未查询到采购单的订单信息");
@ -2196,111 +2204,6 @@ namespace BBWYB.Server.Business
} }
} }
private void KuaiDi100PublishCore(string param)
{
JObject jobject = JObject.Parse(param);
var waybillNo = jobject["lastResult"].Value<string>("nu");
try
{
var state = jobject["lastResult"].Value<int>("state");
var convertState = kuaiDi100Manager.GetExpressState(state);
if (convertState == "Unknow")
return;
var dataArray = jobject["lastResult"]["data"].Children().Select(d => new
{
context = d.Value<string>("context"),
ftime = d.Value<DateTime>("ftime"),
statusCode = d.Value<int>("statusCode")
}).OrderByDescending(d => d.ftime).ToList();
var lastData = dataArray.FirstOrDefault();
IUpdate<PurchaseExpressOrder> updatePurchaseExpressOrder = null;
IUpdate<OrderPurchaseInfo> updateOrderPurchase = null;
IUpdate<Order> updateOrder = null;
#region 查询该笔快递单
var tpeo = fsql.Select<PurchaseExpressOrder>(waybillNo).ToOne();
if (tpeo == null)
throw new Exception("未查询到快递单");
#endregion
#region 查询采购单
var orderPurchaseInfoList = fsql.Select<OrderPurchaseInfo>().Where(opi => opi.OrderId == tpeo.OrderId && opi.IsEnabled == true).ToList();
var orderPurchaseInfo = orderPurchaseInfoList.FirstOrDefault(opi => opi.PurchaseOrderId == tpeo.PurchaseOrderId);
if (orderPurchaseInfo == null)
throw new Exception("未查询到采购单");
#endregion
#region 查询订单/采购sku/快递单/采购关系
var dbOrder = fsql.Select<Order>(tpeo.OrderId).ToOne(o => new Order
{
Id = o.Id,
ShopId = o.ShopId,
OrderState = o.OrderState
});
if (dbOrder == null)
throw new Exception("未查询到订单");
IList<OrderPurchaseSkuInfo> orderPurchaseSkuList = null;
IList<OrderPurchaseRelationInfo> orderPurchaseRelationList = null;
if (orderPurchaseInfo.PurchasePlatform == Enums.Platform.)
{
orderPurchaseSkuList = fsql.Select<OrderPurchaseSkuInfo>().Where(x => x.PurchaseOrderId == tpeo.PurchaseOrderId).ToList();
if (orderPurchaseSkuList.Count() == 0)
throw new BusinessException("未查询到采购单sku信息");
orderPurchaseRelationList = fsql.Select<OrderPurchaseRelationInfo>().Where(opri => opri.PurchaseOrderId == tpeo.PurchaseOrderId).ToList();
if (orderPurchaseRelationList.Count() == 0)
throw new BusinessException("未查询到采购单的关联信息");
}
var purchaseExpressOrderList = fsql.Select<PurchaseExpressOrder>().Where(x => x.PurchaseOrderId == tpeo.PurchaseOrderId).ToList();
var purchaseExpressOrder = purchaseExpressOrderList.FirstOrDefault(exo => exo.WaybillNo == waybillNo);
purchaseExpressOrder.ExpressState = convertState;
purchaseExpressOrder.ExpressChangedTime = lastData.ftime;
purchaseExpressOrder.ExpressContent = lastData.context;
updatePurchaseExpressOrder = fsql.Update<PurchaseExpressOrder>().SetSource(purchaseExpressOrder);
#endregion
#region 计算采购单状态
orderPurchaseInfo.CalculationOrderState(fsql, orderPurchaseSkuList, purchaseExpressOrderList);
updateOrderPurchase = fsql.Update<OrderPurchaseInfo>(orderPurchaseInfo.Id)
.Set(opi => opi.OrderState, orderPurchaseInfo.OrderState);
#endregion
#region 计算订单状态
dbOrder.CalculationOrderState(fsql, null, orderPurchaseInfoList);
updateOrder = fsql.Update<Order>(dbOrder.Id)
.Set(o => o.OrderState, dbOrder.OrderState);
#endregion
#region 通知齐库打包落仓情况
Task.Factory.StartNew(() => qiKuManager.PublishQiKu(orderPurchaseInfo, orderPurchaseRelationList, orderPurchaseSkuList, purchaseExpressOrderList),
CancellationToken.None,
TaskCreationOptions.LongRunning,
taskSchedulerManager.PurchaseOrderCallbackTaskScheduler);
#endregion
#region 通知C端状态
Task.Factory.StartNew(() => SendPurchaseOrderStateToC(dbOrder.Id, dbOrder.OrderState.Value), CancellationToken.None, TaskCreationOptions.None, taskSchedulerManager.PurchaseOrderCallbackTaskScheduler);
#endregion
fsql.Transaction(() =>
{
updatePurchaseExpressOrder?.ExecuteAffrows();
updateOrderPurchase?.ExecuteAffrows();
updateOrder?.ExecuteAffrows();
});
}
catch (Exception ex)
{
nLogManager.GetLogger("快递100").Error(ex, waybillNo);
}
}
/// <summary> /// <summary>
/// 快递单信息变更 /// 快递单信息变更
/// </summary> /// </summary>
@ -2337,7 +2240,8 @@ namespace BBWYB.Server.Business
{ {
Id = o.Id, Id = o.Id,
ShopId = o.ShopId, ShopId = o.ShopId,
OrderState = o.OrderState OrderState = o.OrderState,
IntoStoreType = o.IntoStoreType
}); });
if (orderList.Count() == 0) if (orderList.Count() == 0)
throw new Exception("未查询到任何订单"); throw new Exception("未查询到任何订单");
@ -2418,12 +2322,15 @@ namespace BBWYB.Server.Business
updateOrderPurchaseList.Add(update); updateOrderPurchaseList.Add(update);
#region 通知齐库打包落仓情况 #region 通知齐库打包落仓情况
var currentOrderPurchaseRelationList = orderPurchaseRelationList.Where(opri => opri.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList(); if (order.IntoStoreType == Enums.IntoStoreType.)
{
var currentOrderPurchaseRelationList = orderPurchaseRelationList.Where(opri => opri.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList();
Task.Factory.StartNew(() => qiKuManager.PublishQiKu(purchaseOrder, currentOrderPurchaseRelationList, currentPurchaseOrderSkuList, purchaseExpressOrderList), Task.Factory.StartNew(() => qiKuManager.PublishQiKu(purchaseOrder, currentOrderPurchaseRelationList, currentPurchaseOrderSkuList, purchaseExpressOrderList),
CancellationToken.None, CancellationToken.None,
TaskCreationOptions.LongRunning, TaskCreationOptions.LongRunning,
taskSchedulerManager.PurchaseOrderCallbackTaskScheduler); taskSchedulerManager.PurchaseOrderCallbackTaskScheduler);
}
#endregion #endregion
} }

11
BBWYB.Server.Model/Db/Order/PurchaseExpressOrder.cs

@ -40,11 +40,6 @@ namespace BBWYB.Server.Model.Db
[Column(StringLength = 100)] [Column(StringLength = 100)]
public string ExpressState { get; set; } public string ExpressState { get; set; }
[Column(StringLength = 100)]
public string OrderId { get; set; }
[Column(StringLength = 100)]
public string PurchaseOrderId { get; set; }
[Column(StringLength = 100)] [Column(StringLength = 100)]
public long ShopId { get; set; } public long ShopId { get; set; }
@ -79,6 +74,12 @@ namespace BBWYB.Server.Model.Db
[Column(DbType = "bit")] [Column(DbType = "bit")]
public bool IsSubscribeKD100 { get; set; } = false; public bool IsSubscribeKD100 { get; set; } = false;
[Column(IsIgnore = true)]
public string OrderId { get; set; }
[Column(IsIgnore = true)]
public string PurchaseOrderId { get; set; }
} }
} }

15
BBWYB.Server.Model/Dto/Request/Order/CheckSkuRequest.cs

@ -0,0 +1,15 @@
namespace BBWYB.Server.Model.Dto
{
public class CheckSkuRequest
{
/// <summary>
/// 订单Id
/// </summary>
public string OrderId { get; set; }
/// <summary>
/// 来源SKUID (JD)
/// </summary>
public string SourceSkuId { get; set; }
}
}

8
BBWYB.Server.Model/Dto/Request/Order/QueryExpressOrderRequest.cs

@ -1,10 +1,4 @@
using System; namespace BBWYB.Server.Model.Dto
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BBWYB.Server.Model.Dto
{ {
public class QueryExpressOrderRequest public class QueryExpressOrderRequest
{ {

5
BBWYB.Server.Model/Dto/Request/PurchaseOrder/ManualSignRequest.cs

@ -18,4 +18,9 @@
public string WayBillNo { get; set; } public string WayBillNo { get; set; }
} }
public class BatchManualSignRequest
{
public IList<string> WayBillNoList { get; set; }
}
} }

4
BBWYB.Server.Model/Dto/Response/Order/PurchaseExpressOrderResponse.cs

@ -4,5 +4,9 @@ namespace BBWYB.Server.Model.Dto
{ {
public class PurchaseExpressOrderResponse: PurchaseExpressOrder public class PurchaseExpressOrderResponse: PurchaseExpressOrder
{ {
/// <summary>
/// 归属SkuId,逗号间隔 (拳探SKU)
/// </summary>
public string BelongSkuIds { get; set; }
} }
} }

9
BBWYB.Server.Model/Enums.cs

@ -83,8 +83,8 @@
/// <para>暂停 = 7</para> /// <para>暂停 = 7</para>
/// <para>已退款 = 8</para> /// <para>已退款 = 8</para>
/// <para>Unknow = 100</para> /// <para>Unknow = 100</para>
/// <para>打包中 = 140</para> /// <para>待验收 = 140</para>
/// <para>待完结 = 150</para> /// <para>待核算 = 150</para>
/// </summary> /// </summary>
public enum OrderState public enum OrderState
{ {
@ -101,9 +101,8 @@
= 7, = 7,
退 = 8, 退 = 8,
Unknow = 100, Unknow = 100,
= 140, = 140,
= 150 = 150
//待配置 = 101, //待配置 = 101,
} }

Loading…
Cancel
Save