diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs index db7ddda..70b13f0 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs @@ -240,34 +240,14 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls // 读取中转仓拍单订单售后状态 var transitAfterSaleList = GetTransitWarehouseAfterSaleList(order_ids); + // 读取分销退货(中转仓退货)订单 + var transitReturnOrderList = GetTransitReturnOrderList(order_ids); + // 读取暂时记录的买手订单,后面想办法放到中转订单库里去 var pddBuyerOrders = GetPddBuyerOrders(order_ids); - // 读取暂时记录的买手售后单,后面想办法放到中转订单库里去 - var url6 = BaseClass.Build29WxObjString("order/wx_get_buyer_after_sale_list"); - var data6 = UserLogin.GetSignaturex(); - data6 += "&wx_order_id_in=" + order_ids; - List pddBuyerAfterSales = new List(); - if (!string.IsNullOrEmpty(order_ids)) - { - var html6 = GetHtml.PostUtf8(url6, data6); - if (string.IsNullOrEmpty(html6) || !html6.Contains("\"code\":200")) - html6 = GetHtml.PostUtf8(url6, data6); - if (string.IsNullOrEmpty(html6) || !html6.Contains("\"code\":200")) - { - BaseMsgWindow.ShowError("订单读取失败(买手售后) " + BaseRegex.GetStringJson(ref html6, "msg")); - break; - } - try - { - pddBuyerAfterSales = JsonHelper.DeserializeJsonToList(JObject.Parse(html6)["data"].ParseToString()) - .OrderByDescending(p => p.TransitCreateTime).ToList(); - } - catch - { - } - } + var pddBuyerAfterSales = GetPddBuyerAfterSales(order_ids); // 读取关联拍单商品 var urlMap = BaseClass.Build29WxObjString("order/wx_get_buy_prod_map"); @@ -331,6 +311,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls item.ItemTransitOrders.AddRange(transitOrderList.Where(t => t.order_no == item.order_id)); // 中转仓退货包裹订单 item.ItemTransitOrderAfterSales = transitAfterSaleList.Where(a => item.ItemTransitOrders.Any(t => t.out_order_no == a.order_code)).ToList(); + item.DistribReturnOrderInfos = transitReturnOrderList.Where(tr => tr.order_code_source == item.order_id).ToList(); // 中转仓买手订单(wx_send_type等于0) item.PddBuyerOrders = pddBuyerOrders.Where(po => po.wx_order_id == item.order_id && po.wx_sku_id == item.sku_id && po.wx_send_type == 0).ToList(); @@ -567,6 +548,36 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls return new List(); } + public static List GetTransitReturnOrderList(string order_ids) + { + if (string.IsNullOrEmpty(order_ids)) + return new List(); + + // 读取中转仓处理售后单 + var url5 = BaseClass.Build29WxObjString("order/wx_get_erp_return_order_list"); + var data5 = UserLogin.GetSignaturex(); + data5 += "&erp_order_id_in=" + order_ids; + var html5 = GetHtml.PostUtf8(url5, data5); + if (string.IsNullOrEmpty(html5) || !html5.Contains("\"code\":200")) + html5 = GetHtml.PostUtf8(url5, data5); + if (string.IsNullOrEmpty(html5) || !html5.Contains("\"code\":200")) + { + BaseMsgWindow.ShowAnimateMessage("云仓分销退货订单读取失败 " + BaseRegex.GetStringJson(ref html5, "msg"), "Error", 5); + } + List transitAfterSaleList = new List(); + try + { + transitAfterSaleList = JsonHelper.DeserializeJsonToList(JObject.Parse(html5)["data"].ParseToString()) + .OrderByDescending(p => p.created_at).ToList(); + if (transitAfterSaleList != null) + return transitAfterSaleList; + } + catch + { + } + return new List(); + } + public static List GetPddBuyerOrders(string order_ids) { if (string.IsNullOrEmpty(order_ids)) @@ -595,6 +606,34 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls return new List(); } + public static List GetPddBuyerAfterSales(string order_ids) + { + var url6 = BaseClass.Build29WxObjString("order/wx_get_buyer_after_sale_list"); + var data6 = UserLogin.GetSignaturex(); + data6 += "&wx_order_id_in=" + order_ids; + List pddBuyerAfterSales = new List(); + if (!string.IsNullOrEmpty(order_ids)) + { + var html6 = GetHtml.PostUtf8(url6, data6); + if (string.IsNullOrEmpty(html6) || !html6.Contains("\"code\":200")) + html6 = GetHtml.PostUtf8(url6, data6); + if (string.IsNullOrEmpty(html6) || !html6.Contains("\"code\":200")) + { + BaseMsgWindow.ShowAnimateMessage("订单读取失败(买手售后) " + BaseRegex.GetStringJson(ref html6, "msg"), "Error", 6); + return new List(); + } + try + { + pddBuyerAfterSales = JsonHelper.DeserializeJsonToList(JObject.Parse(html6)["data"].ParseToString()).OrderByDescending(p => p.TransitCreateTime).ToList(); + return pddBuyerAfterSales; + } + catch + { + } + } + return new List(); + } + public void GetShopWaybillExceptionOrder() { foreach (var shop in GlobalConfig.ShopLoginList) @@ -754,8 +793,12 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls //} // 260801-439070256640980260801-439070256640980 // string url = "https://mobile.yangkeduo.com/complaint.html?mode=128&after_sales_id=22059412840967&order_sn=260801-439070256640980" - if (orderItem.TransitRefundStatusStr.Contains("待用户发货") && orderItem.ItemTransitOrderAfterSale?.downstream_waybill != null) + if (orderItem.TransitRefundStatusStr.Contains("待用户发货") && !(orderItem.ItemTransitOrderAfterSale?.downstream_waybill).IsNullOrEmpty()) { + if (orderItem.order_id == "3738382691615546112") + { + + } string orderSn = orderItem.ItemTransitOrderWithVoid.out_order_no; if (orderSn.IsNullOrEmpty()) continue; diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml index 383e895..73e2a37 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml @@ -1513,6 +1513,7 @@ Grid.Column="1" Margin="2,0,0,0" HorizontalAlignment="Center" + d:Content="申请" Background="Transparent" BorderBrush="Transparent" Click="btnAddEditTransitWarehouseReject_Click" @@ -1546,7 +1547,7 @@ IsReadOnly="True" Text="{Binding TransitWarehouseAfterSaleWayBillStr}" TextWrapping="Wrap" - WaterMark="退回中转仓" /> + WaterMark="中转仓退回" />