diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs
index d64bb61..2a776da 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs
@@ -5,6 +5,7 @@ using _29WxOrderWpf.Ctrls.BuyerCtrls;
using _29WxOrderWpf.Ctrls.Statistics;
using _29WxOrderWpf.Services;
using _29WxOrderWpf.Utils;
+using _29WxOrderWpf.Windows.OrderWindows;
using AllBase;
using AllBase.Extension;
using AllBase.Helper;
@@ -378,8 +379,14 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
if (string.IsNullOrEmpty(orderIds))
AutoUpdateTransitPackageToPddShop();
+ // 处理退货仓分销退货
if (string.IsNullOrEmpty(orderIds))
- Task.Run(DoReturnOrderBuyerRefendSlient);
+ Task.Run(async () =>
+ {
+ await DoReturnOrderBuyerRefendSlient();
+ await DoReturnOrderTransitCreateSlient();
+ await AutoUpdateTransitReturnOrderToPddShop();
+ });
if (string.IsNullOrEmpty(orderIds))
hasReadOrder = true;
@@ -785,6 +792,10 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
}
}
}
+
+ ///
+ /// 中转仓拦截去总店填写退货物流信息
+ ///
public void AutoUpdateTransitPackageToPddShop()
{
Task.Run(() =>
@@ -863,6 +874,139 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
});
}
+ ///
+ /// 退货仓去总店填写退货物流信息
+ ///
+ public async Task AutoUpdateTransitReturnOrderToPddShop()
+ {
+ await Task.Run(() =>
+ {
+ foreach (var order in GlobalConfig.lstOrder)
+ {
+ foreach (var orderItem in order.orderItems)
+ {
+ if (order.OrderBuyType == "直发" || order.OrderBuyType == "云改直")
+ {
+ //if (order.out_after_sale_status.ParseToString().Contains("待用户发货") && !(orderItem.DistribReturnOrderInfo?.real_logistics_express_code).IsNullOrEmpty())
+ //{
+ // string orderSn = order.out_order_no;
+ // if (orderSn.IsNullOrEmpty())
+ // continue;
+ // string buyerNickName = order.out_account;
+ // if (buyerNickName.IsNullOrEmpty())
+ // continue;
+ // var buyer = GlobalConfig.PDDBuyerLoginList.ToList().FirstOrDefault(b => b.buyer_nick == buyerNickName);
+ // if (buyer == null)
+ // continue;
+ // var afterSalesId = orderItem.PddBuyerAfterSale?.afterSalesId;
+ // if (string.IsNullOrEmpty(afterSalesId))
+ // continue;
+ // var waybillId = orderItem.DistribReturnOrderInfo?.real_logistics_express_code;
+
+ // var chkRst = AddReturnPddShopPackageInfocheck(buyer, orderSn, afterSalesId, waybillId);
+ // var type = 4;
+ // if (chkRst.Contains("\"interactType\":0"))
+ // type = 2;
+ // var result = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId, "韵达快递", "121", type.ToString());
+ // if (!result.Contains("\"result\":\"ok\""))
+ // {
+ // type = type == 4 ? 2 : 4;
+ // chkRst = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId, "韵达快递", "121", type.ToString());
+ // }
+
+ // if (result.Contains("\"result\":\"ok\""))
+ // {
+ // order.out_after_sale_status = "商家处理中";
+ // }
+ // else
+ // {
+ // order.out_after_sale_status = "待用户发货 自动退货失败";
+ // }
+ // var pddBuyerOrderLiteInfo = new PddBuyerOrderLiteInfo()
+ // {
+ // ShopOrderIdStr = orderItem.order_id,
+ // order_sn = orderSn,
+ // };
+ // // 更新中转仓退货信息
+ // var e57Rst = PDDBuyerOrderReadCtrl.SendAfterSaleE57NeedManual(pddBuyerOrderLiteInfo, order.out_after_sale_status);
+ // if (e57Rst.Contains("0") || e57Rst.Contains("200"))
+ // {
+ // BaseMsgWindow.ShowAnimateMessage("买手退款信息更新成功", "Msg", 3);
+ // Thread.Sleep(Randomx.GetId(10000, 12001));
+ // }
+ // else
+ // {
+ // var msg = BaseRegex.GetStringXml(ref e57Rst, "msg");
+ // BaseMsgWindow.ShowAnimateMessage("买手退款信息更新失败,服务端返回 " + msg, "Error", 5);
+ // }
+ //}
+ }
+ else
+ {
+ if (orderItem.TransitRefundStatusStr.ParseToString().Contains("待用户发货") && !(orderItem.DistribReturnOrderInfo?.real_logistics_express_code).IsNullOrEmpty())
+ {
+ string orderSn = orderItem.ItemTransitOrderWithVoid.out_order_no;
+ if (orderSn.IsNullOrEmpty())
+ continue;
+ string buyerNickName = orderItem.ItemTransitOrderWithVoid.buyer_account;
+ if (buyerNickName.IsNullOrEmpty())
+ continue;
+ var buyer = GlobalConfig.PDDBuyerLoginList.ToList().FirstOrDefault(b => b.buyer_nick == buyerNickName);
+ if (buyer == null)
+ continue;
+ var afterSalesId = orderItem.PddBuyerAfterSale?.afterSalesId;
+ if (string.IsNullOrEmpty(afterSalesId))
+ continue;
+ var waybillId = orderItem.DistribReturnOrderInfo?.real_logistics_express_code;
+
+ var chkRst = AddReturnPddShopPackageInfocheck(buyer, orderSn, afterSalesId, waybillId);
+ var type = 4;
+ if (chkRst.Contains("\"interactType\":0"))
+ type = 2;
+ var result = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId,"韵达快递", "121", type.ToString());
+ if (!result.Contains("\"result\":\"ok\""))
+ {
+ type = type == 4 ? 2 : 4;
+ chkRst = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId, "韵达快递", "121", type.ToString());
+ }
+
+ if (result.Contains("\"result\":\"ok\""))
+ {
+ orderItem.ItemTransitOrderWithVoid.refund_status = "商家处理中";
+ }
+ else
+ {
+ orderItem.ItemTransitOrderWithVoid.refund_status = "待用户发货 自动退货失败";
+ }
+ var pddBuyerOrderLiteInfo = new PddBuyerOrderLiteInfo()
+ {
+ ShopOrderIdStr = orderItem.order_id,
+ order_sn = orderSn,
+ };
+ // 更新中转仓退货信息
+ var e57Rst = PDDBuyerOrderReadCtrl.SendTransitAfterSaleE57(pddBuyerOrderLiteInfo, orderItem.ItemTransitOrderWithVoid.refund_status);
+ if (e57Rst.Contains("0") || e57Rst.Contains("200"))
+ {
+ BaseMsgWindow.ShowAnimateMessage("买手退款信息更新成功", "Msg", 5);
+ }
+ else
+ {
+ var msg = BaseRegex.GetStringXml(ref e57Rst, "msg");
+ BaseMsgWindow.ShowAnimateMessage("买手退款信息更新失败,服务端返回 " + msg, "Error", 5);
+ }
+ }
+ }
+ // 赋值显示订单元素
+ Dispatcher.Invoke(new Action(() =>
+ {
+ InitOrderItemObservableProp(orderItem);
+ MainWindow.Instance.orderListCtrl.FilterOneOrder(order);
+ }));
+ }
+ }
+ });
+ }
+
public void disPlayOrderTabOrderCount()
{
@@ -1589,7 +1733,53 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
}
///
- /// 退货仓退货
+ /// 退货仓创建退货单
+ ///
+ ///
+ public async Task DoReturnOrderTransitCreateSlient()
+ {
+ List emergencyRefundOrders = new List();
+ Dispatcher.Invoke(new Action(() =>
+ {
+ emergencyRefundOrders = GlobalConfig.lstOrder.Where(o => o.IsEmergency).ToList();
+ }));
+ List tmpOrderItems = new List();
+ foreach (var order in emergencyRefundOrders)
+ {
+ foreach (var orderItem in order.orderItems)
+ {
+ if (order.order_id == "3738480261631214336")
+ {
+
+ }
+
+ // 退货地址不是退货仓,跳过
+ if (orderItem.ItemRefund?.return_detail != GlobalConfig.TransitReturnOrderReturnAddress)
+ continue;
+
+ if (orderItem.DistribReturnOrderInfo == null || orderItem.DistribReturnOrderInfo.warehouse_status == 0)
+ {
+ if (!tmpOrderItems.Any(oi => oi.order_id == orderItem.order_id))
+ tmpOrderItems.Add(orderItem);
+ }
+ }
+ }
+
+ if (tmpOrderItems.Count > 0)
+ {
+ foreach (var orderItem in tmpOrderItems)
+ {
+ if (orderItem.order_id == "3738480261631214336")
+ {
+
+ }
+ await Task.Run(() => { TransitReturnOrderWindow.AddReturnOrder(orderItem); });
+ }
+ }
+ }
+
+ ///
+ /// 退货仓买手申请退货
///
///
public async Task DoReturnOrderBuyerRefendSlient()
@@ -1604,10 +1794,16 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
{
foreach (var orderItem in order.orderItems)
{
- // 退货地址是退货仓的,直接申请退货退款,取到地址后直接去填写退货仓退货信息
+ if (order.order_id == "3738480261631214336")
+ {
+
+ }
+
+ // 退货地址不是退货仓,跳过
if (orderItem.ItemRefund?.return_detail != GlobalConfig.TransitReturnOrderReturnAddress)
continue;
+ // 退货地址是退货仓的,直接申请退货退款,取到地址后直接去填写退货仓退货信息
if (orderItem?.ItemOrder?.OrderBuyType == "云仓")
{
if (!string.IsNullOrEmpty(orderItem.ItemTransitOrderWithVoid?.out_order_no) && orderItem.PddBuyerAfterSaleAddressStr.IsNullOrEmpty() &&
@@ -1621,6 +1817,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
((orderItem.ItemOrder?.out_after_sale_status).ParseToString().Contains("需手动申请售后") || (orderItem.ItemOrder?.out_after_sale_status).ParseToString().Contains("待用户发货")))
tmpOrderItems.Add(orderItem);
}
+
// 云改直有两个买手单,暂时只处理直发的,云仓默认已退款
if (orderItem?.ItemOrder?.OrderBuyType == "云改直")
{
@@ -1634,6 +1831,10 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
await DoBuyerRefend(tmpOrderItems);
}
+ ///
+ /// 退货仓买手退货
+ ///
+ ///
public async Task DoBuyerRefend(List tmpOrderItems)
{
if (tmpOrderItems == null)
@@ -1658,6 +1859,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
if (buyer == null)
{
BaseMsgWindow.ShowAnimateMessage("买手单:" + pddOrderSn + " 买手不在当前账户下,跳过", "Error", 3);
+ continue;
}
// 检测一下买手号
diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
index 8e56b2f..efff70b 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
@@ -539,11 +539,12 @@
Margin="12,0,2,0"
VerticalAlignment="Center"
VerticalContentAlignment="Center"
+ d:Text="礼品单已购买"
Background="Transparent"
BorderThickness="0"
Foreground="{StaticResource PageWarningBrush}"
IsReadOnly="True"
- Text="礼品单已购买" />
+ Text="{Binding ItemOrder.GiftOrderStatusStr}" />
@@ -1588,7 +1589,7 @@
Background="Transparent"
BorderThickness="1"
IsReadOnly="True"
- Text="{Binding DistribReturnOrderInfo.real_logistics_express_code}"
+ Text="{Binding AddEditTransitWarehouseReturnOrderWaybillStr}"
TextWrapping="Wrap"
WaterMark="云仓退货" />