|
|
@ -809,86 +809,65 @@ namespace BBWY.Server.Business |
|
|
|
return orderState; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 接收订单推送
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="request"></param>
|
|
|
|
public void OrderPublish(OrderPublishRequest request) |
|
|
|
{ |
|
|
|
/* |
|
|
|
if (erpOrderStatus.equals(("1"))){ |
|
|
|
status="新订单"; |
|
|
|
}else if (erpOrderStatus.equals(("2"))){ |
|
|
|
status="等待付款"; |
|
|
|
}else if (erpOrderStatus.equals(("3"))){ |
|
|
|
status="等待付款确认"; |
|
|
|
}else if (erpOrderStatus.equals(("4"))){ |
|
|
|
status="延迟付款确认"; |
|
|
|
}else if (erpOrderStatus.equals(("5"))){ |
|
|
|
status="暂停"; |
|
|
|
}else if (erpOrderStatus.equals(("6"))){ |
|
|
|
status="店长最终审核"; |
|
|
|
}else if (erpOrderStatus.equals(("7"))){ |
|
|
|
status="等待打印"; |
|
|
|
}else if (erpOrderStatus.equals(("8"))){ |
|
|
|
status="等待出库"; |
|
|
|
}else if (erpOrderStatus.equals(("9"))){ |
|
|
|
status="等待打包"; |
|
|
|
}else if (erpOrderStatus.equals(("10"))){ |
|
|
|
status="等待发货"; |
|
|
|
}else if (erpOrderStatus.equals(("11"))){ |
|
|
|
status="自提途中"; |
|
|
|
}else if (erpOrderStatus.equals(("12"))){ |
|
|
|
status="上门提货"; |
|
|
|
}else if (erpOrderStatus.equals(("13"))){ |
|
|
|
status="自提退货"; |
|
|
|
}else if (erpOrderStatus.equals(("14"))){ |
|
|
|
status="确认自提"; |
|
|
|
}else if (erpOrderStatus.equals(("15"))){ |
|
|
|
status="等待回执"; |
|
|
|
}else if (erpOrderStatus.equals(("16"))){ |
|
|
|
status="等待确认收货"; |
|
|
|
}else if (erpOrderStatus.equals(("17"))){ |
|
|
|
status="配送退货"; |
|
|
|
}else if (erpOrderStatus.equals(("18"))){ |
|
|
|
status="货到付款确认"; |
|
|
|
}else if (erpOrderStatus.equals(("19"))){ |
|
|
|
status="完成"; |
|
|
|
}else if (erpOrderStatus.equals(("20"))){ |
|
|
|
status="等待分期付款"; |
|
|
|
}else if (erpOrderStatus.equals(("21"))){ |
|
|
|
status="收款确认"; |
|
|
|
}else if (erpOrderStatus.equals(("22"))){ |
|
|
|
status="锁定"; |
|
|
|
}else if (erpOrderStatus.equals(("23"))){ |
|
|
|
status="等待退款"; |
|
|
|
}else if (erpOrderStatus.equals(("24"))){ |
|
|
|
status="等待客户回复"; |
|
|
|
}else if (erpOrderStatus.equals(("25"))){ |
|
|
|
status="厂商确认完成"; |
|
|
|
}else if (erpOrderStatus.equals(("29"))){ |
|
|
|
status="等待三方出库"; |
|
|
|
}else if (erpOrderStatus.equals(("30"))){ |
|
|
|
status="等待三方发货"; |
|
|
|
}else if (erpOrderStatus.equals(("31"))){ |
|
|
|
status="等待三方发货完成"; |
|
|
|
}else if (erpOrderStatus.equals(("26"))){ |
|
|
|
status="等待再审核"; |
|
|
|
}else if (erpOrderStatus.equals(("27"))){ |
|
|
|
status="对账中"; |
|
|
|
}else if (erpOrderStatus.equals(("28"))){ |
|
|
|
status="退款中"; |
|
|
|
}else if (erpOrderStatus.equals(("-1"))){ |
|
|
|
status="未知"; |
|
|
|
}else if (erpOrderStatus.equals(("NOT_PAY"))){ |
|
|
|
status="新订单"; |
|
|
|
}else if (erpOrderStatus.equals( |
|
|
|
*/ |
|
|
|
nLogManager.Default().Info($"订单推送-{JsonConvert.SerializeObject(request)}"); |
|
|
|
|
|
|
|
if (request.orderStatus != "5") |
|
|
|
if (request.orderStatus != "TRADE_CREATED") |
|
|
|
return; |
|
|
|
var shop = venderBusiness.GetShopByVenderId(request.venderId); |
|
|
|
if (shop == null) |
|
|
|
return; |
|
|
|
|
|
|
|
Task.Factory.StartNew(() => SyncOrder(shop, request.orderId, null, null, isAuto: false, Enums.SortTimeType.StartTime), CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.SyncOrderTaskScheduler); |
|
|
|
var isExists = fsql.Select<WaitPayOrder>(request.orderId).Any(); |
|
|
|
if (!isExists) |
|
|
|
{ |
|
|
|
fsql.Insert(new WaitPayOrder() |
|
|
|
{ |
|
|
|
CreateTime = DateTime.Now, |
|
|
|
Id = request.orderId, |
|
|
|
ShopId = long.Parse(shop.ShopId) |
|
|
|
}).ExecuteAffrows(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
#region 同步暂停订单
|
|
|
|
public void CheckJDPauseOrder(long? shopId) |
|
|
|
{ |
|
|
|
var shopList = venderBusiness.GetShopList(shopId); |
|
|
|
var shopIds = shopList.Select(s => long.Parse(s.ShopId)).ToList(); |
|
|
|
|
|
|
|
fsql.Delete<WaitPayOrder>().Where(wo => shopIds.Contains(wo.ShopId.Value)) |
|
|
|
.Where(wo => fsql.Select<Order>().Where(o => o.Id == wo.Id).Any()) |
|
|
|
.ExecuteAffrows(); |
|
|
|
|
|
|
|
|
|
|
|
var waitPayOrderList = fsql.Select<WaitPayOrder>().Where(wo => shopIds.Contains(wo.ShopId.Value)).ToList(); |
|
|
|
if (waitPayOrderList.Count() == 0) |
|
|
|
return; |
|
|
|
|
|
|
|
foreach (var shop in shopList) |
|
|
|
{ |
|
|
|
var currentWaitPayOrderList = waitPayOrderList.Where(wo => wo.ShopId == long.Parse(shop.ShopId)).ToList(); |
|
|
|
if (currentWaitPayOrderList.Count() > 0) |
|
|
|
{ |
|
|
|
Task.Factory.StartNew(() => CheckJDPauseOrder(shop, currentWaitPayOrderList), CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.SyncOrderTaskScheduler); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void CheckJDPauseOrder(ShopResponse shop, IList<WaitPayOrder> waitPayOrderList) |
|
|
|
{ |
|
|
|
foreach (var w in waitPayOrderList) |
|
|
|
{ |
|
|
|
SyncOrder(shop, w.Id); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
#endregion
|
|
|
|
} |
|
|
|
} |
|
|
|