From 5719cbc277be224ce730b51ea3574e20ac74c627 Mon Sep 17 00:00:00 2001 From: wule Date: Thu, 6 Aug 2026 12:03:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8B=BC=E5=A4=9A=E5=A4=9A=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E5=A1=AB=E5=86=99=E9=80=80=E8=B4=A7=E5=8C=85?= =?UTF-8?q?=E8=A3=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BuyerCtrls/PDDBuyerOrderReadCtrl.xaml | 2 +- .../BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs | 13 +- .../Ctrls/OrderCtrls/OrderListCtrl.xaml.cs | 154 +++++++++++++++++- .../OrderWindows/TransitAfterSaleWindow.xaml | 2 +- .../TransitAfterSaleWindow.xaml.cs | 1 + AllBase/BaseClass.cs | 2 +- AllBase/GetHtml.cs | 2 + .../Model/DBModel/oms_wei_order_item_info.cs | 9 +- Work/_29Tools/BLL/HttpResponseWXBLL.cs | 50 +++++- Work/_29Tools/BLL/HttpResponseYkdBLL.cs | 1 + Work/_29Tools/Forms/PddMobileBuyOrderForm.cs | 9 +- 11 files changed, 225 insertions(+), 20 deletions(-) diff --git a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml index 72891d0..e48bb76 100644 --- a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml +++ b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml @@ -87,7 +87,7 @@ - + diff --git a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs index c9ce70e..f25ea94 100644 --- a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs @@ -947,7 +947,8 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls currentReadBuyer = ""; //return; } - if (data.Contains("\"error_code\":40001")) + //{\"error_code\":50000,\"error_msg\":\"http error:504\"} + if (data.Contains("\"error_code\":40001") || data.Contains("\"error_code\":50000")) { currentReadBuyer = ""; PddMobileLoginForm.CheckBuyerLogin(new List { buyer }, false); @@ -2368,11 +2369,13 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls if (btnHideBuyer.Content.ParseToString() == "▶") { btnHideBuyer.Content = "◀"; + btnHideBuyer.Width = 20; borderPddBuyer.Visibility = Visibility.Visible; } else { btnHideBuyer.Content = "▶"; + btnHideBuyer.Width = 17; borderPddBuyer.Visibility = Visibility.Collapsed; } } @@ -2414,7 +2417,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls //if (e.Source) } - private void TextBox_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) + private void txtBuyerNick_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { if (sender is TextBox txt) { @@ -2430,6 +2433,12 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls } } } + + private void txtBuyerNick_Loaded(object sender, RoutedEventArgs e) + { + if (sender is TextBox txtBuyerNick) + txtBuyerNick.AddHandler(TextBox.MouseUpEvent, new MouseButtonEventHandler(txtBuyerNick_MouseLeftButtonDown), true); + } } public class YkdBuyerOrder diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs index 04092b1..529201d 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs @@ -420,11 +420,16 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls } } - if (string.IsNullOrEmpty(orderIds)) - GetShopWaybillExceptionOrder(); + // 处理店铺后台物流异常单 + if (string.IsNullOrEmpty(orderIds)) + GetShopWaybillExceptionOrder(); - if (string.IsNullOrEmpty(orderIds)) - hasReadOrder = true; + // 处理中转仓退货包裹 + if (string.IsNullOrEmpty(orderIds)) + AutoUpdateTransitPackageToPddShop(); + + if (string.IsNullOrEmpty(orderIds)) + hasReadOrder = true; Dispatcher.Invoke(new Action(() => { @@ -660,6 +665,81 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls } } } + public void AutoUpdateTransitPackageToPddShop() + { + Task.Run(() => + { + foreach (var order in GlobalConfig.lstOrder) + { + foreach (var orderItem in order.orderItems) + { + //// 测试写死 + //if (orderItem.ItemOrder?.order_id == "3738160750339728384") + //{ + // orderItem.ItemTransitOrderAfterSale = new oms_wei_external_procurement_after_sale_info() + // { + // downstream_waybill = "315090716621027", + + // }; + //} + // 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) + { + 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.ItemTransitOrderAfterSale.downstream_waybill; + + var chkRst = AddReturnPddShopPackageInfocheck(buyer, orderSn, afterSalesId, waybillId); + var result = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId); + + 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(() => + { + orderItem.SetOrderItemTextProperty(); + order.SetOrderTextProperty(); + MainWindow.Instance.orderListCtrl.FilterOneOrder(order); + })); + } + } + } + }); + } + public void disPlayOrderTabOrderCount() { @@ -1579,7 +1659,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls } FilterOrders(); } - + private void btn_ShowShopRevenueStatisticsView(object sender, RoutedEventArgs e) { new DialogWindow() @@ -1588,7 +1668,67 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls Content = new ShopRevenueStatisticsView(), }.ShowDialog(); - } - } + + /// + /// + /// + /// + /// + /// + /// 121韵达快递 384极兔速递 115中通快递 + /// + /// + public string MdyReturnShippingINfo(BuyerLoginInfo buyer, string order_sn, string after_sales_id, string shipping_name, string shipping_id, string tracking_number) + { + // 物流版本 version 中通2 韵达4 极兔5 + //https://mobile.yangkeduo.com/proxy/api/api/asm/modify_return_shipping_info?pdduid=5746442372052 + //修改{"after_sales_id":"21943158712295","question_desc":"已发极兔速递(JT3172520393785)","version":5,"images":[],"shipping_id":384,"shipping_name":"极兔速递","tracking_number":"JT3172520393785","can_merge_tracking_number":false,"remark_shipping_name":"","id":"21943158712295"} + //{"success":true,"errorCode":1000000,"errorMsg":null,"result":null} + //修改{"after_sales_id":"21944843820487","question_desc":"已发韵达快递(315091268379268)","version":4,"images":[],"shipping_id":121,"shipping_name":"韵达快递","tracking_number":"315091268379268","can_merge_tracking_number":false,"remark_shipping_name":"","id":"21944843820487"} + //{"success":true,"errorCode":1000000,"errorMsg":null,"result":null} + //新增{"after_sales_id":"22051692661447","question_desc":"已发中通快递(73719278250925)","version":2,"images":[],"shipping_id":115,"shipping_name":"中通快递","tracking_number":"73719278250925","can_merge_tracking_number":false,"remark_shipping_name":"","express_fee":0} + //{"after_sales_status":11,"result":"ok"} + + string url = "https://mobile.yangkeduo.com/proxy/api/api/asm/modify_return_shipping_info?pdduid=" + buyer.buyer_id; + string data = "{\"after_sales_id\":\"" + after_sales_id + "\",\"question_desc\":\"已发" + shipping_name + "(" + tracking_number + ")\",\"version\":4,\"images\":[],\"shipping_id\":" + + shipping_id + "," + "\"shipping_name\":\"" + shipping_name + "\",\"tracking_number\":\"" + tracking_number + + "\",\"can_merge_tracking_number\":false,\"remark_shipping_name\":\"\",\"id\":\"" + after_sales_id + "\"}"; + string referer = "https://mobile.yangkeduo.com/complaint.html?mode=1024&after_sales_id=" + after_sales_id + + "&order_sn=" + order_sn + "&refer_page_name=complaints_new_detail"; + return HttpResponseYkdBLL.YangkeduoPostResponse(buyer, url, data, referer); + } + + public string AddReturnPddShopPackageInfo(BuyerLoginInfo buyer, string order_sn, string after_sales_id, string tracking_number, + string shipping_name = "韵达快递", string shipping_id = "121", string version = "4") + { + //https://mobile.yangkeduo.com/proxy/api/after_sales/confirm_delivery/22051692661447?pdduid=5746442372052 + //修改{"after_sales_id":"21943158712295","question_desc":"已发极兔速递(JT3172520393785)","version":5,"images":[],"shipping_id":384,"shipping_name":"极兔速递","tracking_number":"JT3172520393785","can_merge_tracking_number":false,"remark_shipping_name":"","id":"21943158712295"} + //{"success":true,"errorCode":1000000,"errorMsg":null,"result":null} + //修改{"after_sales_id":"21944843820487","question_desc":"已发韵达快递(315091268379268)","version":4,"images":[],"shipping_id":121,"shipping_name":"韵达快递","tracking_number":"315091268379268","can_merge_tracking_number":false,"remark_shipping_name":"","id":"21944843820487"} + //{"success":true,"errorCode":1000000,"errorMsg":null,"result":null} + //新增{"after_sales_id":"22051692661447","question_desc":"已发中通快递(73719278250925)","version":2,"images":[],"shipping_id":115,"shipping_name":"中通快递","tracking_number":"73719278250925","can_merge_tracking_number":false,"remark_shipping_name":"","express_fee":0} + //{"after_sales_status":11,"result":"ok"} + + string url = "https://mobile.yangkeduo.com/proxy/api/after_sales/confirm_delivery/" + after_sales_id + "?pdduid=" + buyer.buyer_id; + string data = "{\"after_sales_id\":\"" + after_sales_id + "\",\"question_desc\":\"已发" + shipping_name + "(" + tracking_number + ")\",\"version\":" + version + + ",\"images\":[],\"shipping_id\":" + shipping_id + "," + "\"shipping_name\":\"" + shipping_name + "\",\"tracking_number\":\"" + tracking_number + + "\",\"can_merge_tracking_number\":false,\"remark_shipping_name\":\"\",\"express_fee\":0}"; + string referer = "https://mobile.yangkeduo.com/complaint.html?mode=128&after_sales_id=" + after_sales_id + + "&order_sn=" + order_sn + "&refer_page_name=complaints_new_detail"; + + return HttpResponseYkdBLL.YangkeduoPostResponse(buyer, url, data, referer); + } + + public string AddReturnPddShopPackageInfocheck(BuyerLoginInfo buyer, string order_sn, string after_sales_id, string tracking_number, + string shipping_name = "韵达快递", string shipping_id = "121") + { + string url = "https://mobile.yangkeduo.com/proxy/api/api/asm/express/tracking_number/check?pdduid=" + buyer.buyer_id; + string body = @"{""orderSn"":""" + order_sn + @""",""afterSalesId"":""" + after_sales_id + @""",""shippingId"":121,""trackingNumber"":""" + tracking_number + @"""}"; + string referer = "https://mobile.yangkeduo.com/complaint.html?mode=128&after_sales_id=" + after_sales_id + + "&order_sn=" + order_sn + ""; + + return HttpResponseYkdBLL.YangkeduoPostResponse(buyer, url, body , referer); + } + } } diff --git a/29WxOrderWpf/Windows/OrderWindows/TransitAfterSaleWindow.xaml b/29WxOrderWpf/Windows/OrderWindows/TransitAfterSaleWindow.xaml index 3c7526c..2d6e62a 100644 --- a/29WxOrderWpf/Windows/OrderWindows/TransitAfterSaleWindow.xaml +++ b/29WxOrderWpf/Windows/OrderWindows/TransitAfterSaleWindow.xaml @@ -91,7 +91,7 @@