From da01c9f83fc3c5864b51d22e649396a7dbb2c678 Mon Sep 17 00:00:00 2001 From: wule Date: Fri, 30 Oct 2026 17:11:55 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E4=B8=8A=E4=B8=80=E6=9D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs | 2 +- .../OrderCtrls/OrderListRowItemCtrl.xaml.cs | 6 +- .../OrderTransitListDetailCtrl.xaml | 6 +- .../OrderTransitListDetailCtrl.xaml.cs | 138 ++++++++++++++++-- ...ei_external_procurement_after_sale_info.cs | 9 +- .../Model/DBModel/oms_wei_order_item_info.cs | 4 +- .../oms_wei_order_item_transit_info.cs | 47 ++++-- AllBase/Model/DBModel/user_payment_record.cs | 2 + Work/Extension/ConvertExtension.cs | 79 ++++++++++ Work/_29Tools/BLL/HttpResponseWXBLL.cs | 6 - Work/_29Tools/Forms/PddMobileBuyOrderForm.cs | 72 ++++++--- 11 files changed, 310 insertions(+), 61 deletions(-) create mode 100644 Work/Extension/ConvertExtension.cs diff --git a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs index 29e9194..2bea0c6 100644 --- a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs @@ -51,9 +51,9 @@ using Work._29Tools.BLL; using Work._29Tools.CefTools; using Work.BaseForms; using Work.BuyUsers; +using Work.Extension; using WxOrder.Framework.Commons; using WxOrder.Framework.Helpers; -using static System.Windows.Forms.VisualStyles.VisualStyleElement.Tab; namespace _29WxOrderWpf.Ctrls.BuyerCtrls { diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml.cs b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml.cs index 67a2c88..9e31f44 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml.cs @@ -1253,7 +1253,9 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls try { var transitOrder = orderItem.ItemTransitOrder ?? orderItem.ItemTransitOrderWithVoid; - BaseMsgWindow.ShowInfo(await RejectTransitOrder(orderItem, transitOrder)); + var rejectRst = await RejectTransitOrder(orderItem, transitOrder); + if (!string.IsNullOrEmpty(rejectRst)) + BaseMsgWindow.ShowInfo(rejectRst); } catch (Exception ex) { @@ -1512,7 +1514,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls // 拍单前查询订单是否退款 var orderId = orderItem.order_id; var skuId = orderItem.sku_id; - MainWindow.Instance.orderListCtrl.GetOrder(orderId); + await MainWindow.Instance.orderListCtrl.GetOrder(orderId); var newOrder = GlobalConfig.lstOrder.FirstOrDefault(or => or.order_id == orderId); if (newOrder?.orderItems.Count == 1) orderItem = newOrder?.orderItems?.FirstOrDefault(); diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderTransitListDetailCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderTransitListDetailCtrl.xaml index 060b3ee..4cead3c 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderTransitListDetailCtrl.xaml +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderTransitListDetailCtrl.xaml @@ -23,7 +23,7 @@ @@ -31,7 +31,7 @@ - + 作废包裹 - private void btnVoidPackage_Click(object sender, RoutedEventArgs e) + private async void btnVoidPackage_Click(object sender, RoutedEventArgs e) { + if (this.DataContext is oms_wei_order_item_transit_detail_info transitDetailInfo) + { + var orderItem = transitDetailInfo.oms_wei_order_item_info; + var transitOrder = transitDetailInfo.oms_wei_external_procurement_log_info; + var returnOrder = transitDetailInfo.oms_wei_external_procurement_after_sale_info; + var extOrder = transitDetailInfo.oms_wei_transfer_extra_package; + // 作废发货包裹 + if (transitOrder != null) + { + + } + // 作废退货包裹 + else if (returnOrder != null) + { + try + { + var voidResult = await VoidAfterSalePackage(orderItem, returnOrder); + if (!string.IsNullOrEmpty(voidResult)) + BaseMsgWindow.ShowInfo(voidResult); + } + catch (Exception ex) + { + BaseMsgWindow.ShowError(ex.Message); + } + } + // 作废额外包裹 + else if (extOrder != null) + { + try + { + var voidResult = await VoidExtraPackage(orderItem, extOrder); + if (!string.IsNullOrEmpty(voidResult)) + BaseMsgWindow.ShowInfo(voidResult); + } + catch (Exception ex) + { + BaseMsgWindow.ShowError(ex.Message); + } + } + + RefreshListCtrl(orderItem); + } + } + + /// + /// 作废售后包裹 + /// + /// + /// + public static async Task VoidAfterSalePackage(oms_wei_order_item_info orderItem, oms_wei_external_procurement_after_sale_info returnOrder) + { + string typeStr = returnOrder?.pack_type == 1 ? "作废分销发货退货包裹" : "作废额外包裹退货包裹"; + string msg = $@"确定{typeStr}吗?"; + + if (BaseMsgWindow.ShowConfirm(msg, typeStr, null, MsgWindowLevel.MEDIUM, 300).DialogResult != true) + return ""; + + string url2 = "https://po.e57.cn/prod-api/api/oms-api/external_procurement/orders/interceptReturn"; + var data = new JObject(); + data["externalOrderNo"] = returnOrder.external_order_no; + data["orderNo"] = returnOrder.order_no; // 订单编号 + data["orderCode"] = returnOrder.order_code; + data["packType"] = returnOrder.pack_type; /* 1作废分销发货退货包裹 2作废额外包裹退货包裹 */ + var dataStr2 = JsonHelper.SerializeObject(data); + var voidRst = await HttpResponseWXBLL.e57PostResponseAsync(url2, dataStr2); + + if (voidRst.Contains("\"code\":0") || voidRst.Contains("\"code\":200")) + { + StartUp.UpdateBalance(); + returnOrder.order_void_status = 1; + orderItem.SetOrderItemTextProperty(); + return typeStr + "成功!"; + } + else + { + throw new Exception(typeStr + "失败,服务端返回:" + BaseRegex.GetStringJsonByRegs(ref voidRst, voidRst, "msg")); + } + } + + /// + /// 作废额外包裹 + /// + /// + /// + /// + /// + public static async Task VoidExtraPackage(oms_wei_order_item_info orderItem, oms_wei_transfer_extra_package extraOrder) + { + string typeStr = "作废额外包裹"; + string msg = $@"确定{typeStr}吗?"; + + if (BaseMsgWindow.ShowConfirm(msg, typeStr, null, MsgWindowLevel.MEDIUM, 300).DialogResult != true) + return ""; + + var data = new JObject(); + data["batchId"] = extraOrder.batchId; + data["orderCode"] = extraOrder.order_code; + var dataStr = JsonHelper.SerializeObject(data); + var url = "https://po.e57.cn/prod-api/api/oms-api/external_procurement/extraOrders/void"; + var voidRst = await HttpResponseWXBLL.e57PostResponseAsync(url, dataStr); + if (BaseRegex.GetStringJson(ref voidRst, "code") != "0" && BaseRegex.GetStringJson(ref voidRst, "code") != "200") + { + throw new Exception("作废额外包裹失败,服务端返回:" + BaseRegex.GetStringJsonByRegs(ref voidRst, voidRst, "msg")); + } + StartUp.UpdateBalance(); + extraOrder.order_void_status = 1; + orderItem.SetOrderItemTextProperty(); + //MainWindow.Instance.orderListCtrl.FilterOneOrder(orderItem.order_id); + return "作废额外包裹成功!"; } /// 拒收包裹 @@ -65,15 +178,7 @@ public partial class OrderTransitListDetailCtrl : UserControl } - // 更新列表 - if (FindParent(this) is OrderTransitListCtrl transitListCtrl) - { - oms_wei_order_item_transit_info transitInfo = new oms_wei_order_item_transit_info() - { - OrderItem = GlobalConfig.lstOrder.FirstOrDefault(o => o.order_id == orderItem.order_id)?.orderItems.FirstOrDefault(oi => oi.sku_id == orderItem.sku_id), - }; - transitListCtrl.UpdateViewModel(transitInfo); - } + RefreshListCtrl(orderItem); } } @@ -87,6 +192,19 @@ public partial class OrderTransitListDetailCtrl : UserControl } + public void RefreshListCtrl(oms_wei_order_item_info orderItem) + { + // 更新列表 + if (FindParent(this) is OrderTransitListCtrl transitListCtrl) + { + oms_wei_order_item_transit_info transitInfo = new oms_wei_order_item_transit_info() + { + OrderItem = GlobalConfig.lstOrder.FirstOrDefault(o => o.order_id == orderItem?.order_id)?.orderItems.FirstOrDefault(oi => oi.sku_id == orderItem?.sku_id), + }; + transitListCtrl.UpdateViewModel(transitInfo); + } + } + /// /// 查找指定类型的父级控件 /// diff --git a/AllBase/Model/DBModel/oms_wei_external_procurement_after_sale_info.cs b/AllBase/Model/DBModel/oms_wei_external_procurement_after_sale_info.cs index 43d6d16..84aa8bd 100644 --- a/AllBase/Model/DBModel/oms_wei_external_procurement_after_sale_info.cs +++ b/AllBase/Model/DBModel/oms_wei_external_procurement_after_sale_info.cs @@ -110,6 +110,13 @@ namespace AllBase.Model.DBModel /// 货架写入时间 /// public DateTime? location_write_time { get; set; } - + /// + /// 1商品退货包裹2额外退货包裹 + /// + public int? pack_type { get; set; } + /// + /// 作废状态 1作废成功 2作废失败 + /// + public int? order_void_status { get; set; } } } diff --git a/AllBase/Model/DBModel/oms_wei_order_item_info.cs b/AllBase/Model/DBModel/oms_wei_order_item_info.cs index aaf312c..5e4e449 100644 --- a/AllBase/Model/DBModel/oms_wei_order_item_info.cs +++ b/AllBase/Model/DBModel/oms_wei_order_item_info.cs @@ -398,7 +398,9 @@ namespace AllBase.Model.DBModel this.ItemTransitExtraOrder = ItemTransitExtraOrders?.FirstOrDefault(t => t.order_void_status != 1) ?? ItemTransitExtraOrders.FirstOrDefault(); - this.ItemTransitOrderAfterSale = ItemTransitOrderAfterSales?.FirstOrDefault(); + // 未作废且已发出的商品退货包裹 ?? 未作废的商品退货包裹 ?? 任意商品退货包裹 + this.ItemTransitOrderAfterSale = ItemTransitOrderAfterSales?.Where(taf => taf.pack_type == 1)?.FirstOrDefault(taf => taf.order_void_status != 1 && !taf.downstream_waybill.IsNullOrEmpty()) ?? + ItemTransitOrderAfterSales?.Where(taf => taf.pack_type == 1)?.FirstOrDefault(taf => taf.order_void_status != 1) ?? ItemTransitOrderAfterSales?.Where(taf => taf.pack_type == 1)?.FirstOrDefault(); this.PddBuyerOrder = PddBuyerOrders?.FirstOrDefault(); // 优先找非撤销买手退款单 this.PddBuyerAfterSale = PddBuyerAfterSales?.FirstOrDefault(p => p.orderSn == this.ItemTransitOrderWithVoid?.out_order_no && p.statusText == "退款成功") ?? diff --git a/AllBase/Model/DBModel/oms_wei_order_item_transit_info.cs b/AllBase/Model/DBModel/oms_wei_order_item_transit_info.cs index a84be0a..c8862ba 100644 --- a/AllBase/Model/DBModel/oms_wei_order_item_transit_info.cs +++ b/AllBase/Model/DBModel/oms_wei_order_item_transit_info.cs @@ -8,6 +8,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; +using System.Windows.Media; namespace AllBase.Model.DBModel; @@ -16,8 +17,8 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject public oms_wei_order_item_info OrderItem { get { return this.GetValue(x => x.OrderItem); } - set - { + set + { this.SetValue(x => x.OrderItem, value); GetOrderItemTransitList(); } @@ -60,8 +61,8 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject { var transitDetail = new oms_wei_order_item_transit_detail_info() { - //VoidPackageBtnVisibility = Visibility.Visible, - RejectPackageBtnVisibility = Visibility.Visible, + //VoidPackageBtnVisibility = Visibility.Visible, /* 作废发货包裹 */ + RejectPackageBtnVisibility = Visibility.Visible, /* 拒收发货包裹 */ //ReturnPackageBtnVisibility = Visibility.Visible, //ExtraPackagesBtnVisibility = Visibility.Visible, @@ -156,7 +157,7 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject } catch (Exception ex) { - + } } return detailList; @@ -182,13 +183,14 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject var transitOrder = OrderItem.ItemTransitOrders?.FirstOrDefault(t => t.order_code == transitAftersaleOrder.order_code); var transitDetail = new oms_wei_order_item_transit_detail_info() { + VoidPackageBtnVisibility = Visibility.Visible, /* 作废退货包裹 */ + oms_wei_order_item_info = OrderItem, oms_wei_external_procurement_after_sale_info = transitAftersaleOrder, ShopName = OrderItem.ItemOrder.shop_name, - //TransitTypeStr = "拦截退回", - TransitTypeStr = "退货包裹", + TransitTypeStr = "退货包裹", /* 拦截退回 */ OrderCode = transitAftersaleOrder.order_code + " / " + transitAftersaleOrder.external_order_no, SourceCode = transitOrder?.random_code, @@ -207,7 +209,7 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject DownWaybill = (transitAftersaleOrder.downstream_express_code + "-" + transitAftersaleOrder.downstream_waybill).Trim('-'), BuyRefundStatus = transitOrder.refund_status, - // todo 售后暂时缺少取号时间 + // todo 退货包裹暂时缺少取号时间 PickUpTime = transitAftersaleOrder.pickup_time == DateTime.MinValue ? null : transitAftersaleOrder.pickup_time, CreateTimeStr = transitAftersaleOrder.created_time == null ? null : transitAftersaleOrder.created_time.Value.ToString("yyyy-MM-dd HH:mm:ss"), InboundTime = transitAftersaleOrder.inbound_time, @@ -245,9 +247,9 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject else if (transitAftersaleOrder.warehouse_status == 3) transitDetail.WarehouseStatus = "已拦截到仓"; - // 售后暂时没有作废状态 - //if (transitAftersaleOrder.order_void_status == 1) - // transitDetail.TransitVoidStatus = "已作废"; + // 售后作废状态 + if (transitAftersaleOrder.order_void_status == 1) + transitDetail.TransitVoidStatus = "已作废"; //else if (transitOrder.order_void_status == 2) // transitDetail.TransitVoidStatus = "作废失败"; @@ -259,7 +261,7 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject } catch (Exception ex) { - + } } return detailList; @@ -386,11 +388,11 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject public class oms_wei_order_item_transit_detail_info : PropertyNotifyObject { - public oms_wei_order_item_transit_detail_info() + public oms_wei_order_item_transit_detail_info() { VoidPackageBtnVisibility = Visibility.Collapsed; RejectPackageBtnVisibility = Visibility.Collapsed; - ReturnPackageBtnVisibility = Visibility.Collapsed; + ReturnPackageBtnVisibility = Visibility.Collapsed; ExtraPackagesBtnVisibility = Visibility.Collapsed; } @@ -411,7 +413,20 @@ public class oms_wei_order_item_transit_detail_info : PropertyNotifyObject public string TransitTypeStr { get { return this.GetValue(x => x.TransitTypeStr); } - set { this.SetValue(x => x.TransitTypeStr, value); } + set + { + this.SetValue(x => x.TransitTypeStr, value); + TransitTypeStrColor = GlobalConfig.PurpleBrush; + if (value == "退货包裹") + TransitTypeStrColor = GlobalConfig.RedBrush; + else if (value == "额外包裹") + TransitTypeStrColor = GlobalConfig.GreenBrush; + } + } + public SolidColorBrush TransitTypeStrColor + { + get { return this.GetValue(x => x.TransitTypeStrColor); } + set { this.SetValue(x => x.TransitTypeStrColor, value); } } /// 仓库订单号 @@ -570,7 +585,7 @@ public class oms_wei_order_item_transit_detail_info : PropertyNotifyObject public string InboundTimeStr { get { return this.GetValue(x => x.InboundTimeStr); } - set { this.SetValue(x => x.InboundTimeStr, value); } + set { this.SetValue(x => x.InboundTimeStr, value); } } public DateTime? OutboundTime { diff --git a/AllBase/Model/DBModel/user_payment_record.cs b/AllBase/Model/DBModel/user_payment_record.cs index 3049281..911eda1 100644 --- a/AllBase/Model/DBModel/user_payment_record.cs +++ b/AllBase/Model/DBModel/user_payment_record.cs @@ -86,6 +86,8 @@ namespace AllBase.Model.DBModel 礼物单退费 = 34, 额外订单创建 = 35, 额外订单作废 = 36, + 额外订单超重支出 = 37, + 退货包裹作废返还 = 38, 同步物流 = 55, } diff --git a/Work/Extension/ConvertExtension.cs b/Work/Extension/ConvertExtension.cs new file mode 100644 index 0000000..c681d56 --- /dev/null +++ b/Work/Extension/ConvertExtension.cs @@ -0,0 +1,79 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Work.Extension; + +public static class ConvertExtension +{ + #region 转换为string + /// + /// 将object转换为string,若转换失败,则返回string.Empty。不抛出异常。 + /// + /// + /// + public static string ParseToStr(this object obj) + { + try + { + if (obj == null) + { + return string.Empty; + } + else + { + if (obj is DateTime dt) + return dt.ToString("yyyy-MM-dd HH:mm:ss"); + return obj.ToString(); + } + } + catch + { + return string.Empty; + } + } + + public static string ParseToNullableStr(this object obj) + { + try + { + if (obj == null) + { + return null; + } + else + { + if (obj is DateTime dt) + return dt.ToString("yyyy-MM-dd HH:mm:ss"); + return obj.ToString(); + } + } + catch + { + return null; + } + } + + public static string ParseToStrs(this object obj, string split = ",") + { + try + { + var list = obj as IEnumerable; + if (list != null) + { + return string.Join(split, list); + } + else + { + return obj.ToString(); + } + } + catch + { + return string.Empty; + } + } + #endregion +} diff --git a/Work/_29Tools/BLL/HttpResponseWXBLL.cs b/Work/_29Tools/BLL/HttpResponseWXBLL.cs index 8b127a1..3918d48 100644 --- a/Work/_29Tools/BLL/HttpResponseWXBLL.cs +++ b/Work/_29Tools/BLL/HttpResponseWXBLL.cs @@ -599,13 +599,7 @@ namespace Work._29Tools.BLL request = (HttpWebRequest)WebRequest.Create(url); request.KeepAlive = true; - //request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0"); - //request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36"; request.ContentType = "application/json"; - //request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"; //request.Accept = "*/*"; - //request.Referer = referer; - //request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate"); - //request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9"); request.Headers.Add("sec-ch-ua", @"""Not(A:Brand"";v=""8"", ""Chromium"";v=""144"", ""Google Chrome"";v=""144"""); request.Headers.Add("sec-ch-ua-mobile", @"?0"); request.Headers.Add("sec-ch-ua-platform", @"""Windows"""); diff --git a/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs b/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs index 54e6bc4..ffc3a75 100644 --- a/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs +++ b/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs @@ -172,6 +172,7 @@ namespace TemuKJD.ToolForms } if (this.Created) + { Invoke(new Action(() => { //this.pnlMask.Visible = false; @@ -179,6 +180,7 @@ namespace TemuKJD.ToolForms this.pnlMask.Dock = DockStyle.Bottom; this.pnlMask.Height = 120; })); + } }); } @@ -341,13 +343,16 @@ namespace TemuKJD.ToolForms { } - private async void CefWebBrowser_AddressChanged(object sender, CefSharp.AddressChangedEventArgs e) + private void CefWebBrowser_AddressChanged(object sender, CefSharp.AddressChangedEventArgs e) { - if (!this.IsClose && this.Created && !this.Disposing && !this.IsDisposed) + Task.Run(() => { currentUrl = e.Address; - Invoke(() => { txtAddress.Text = e.Address; }); - } + if (!this.IsClose && this.Created && !this.Disposing && !this.IsDisposed) + { + Invoke(() => { txtAddress.Text = e.Address; }); + } + }); } private void CefWebBrowser_FrameLoadEnd(object sender, CefSharp.FrameLoadEndEventArgs e) @@ -377,7 +382,10 @@ namespace TemuKJD.ToolForms jObj["name"] = TransitWaybillHelper.LastName[Randomx.GetId(TransitWaybillHelper.LastName.Count)] + (Randomx.GetId(2) == 1 ? "先生" : "女士"); postData = JsonHelper.SerializeObject(jObj); request.PostData.Elements[0].Bytes = System.Text.Encoding.UTF8.GetBytes(postData); - Invoke(() => { this.pnlMask.Visible = false; }); + Task.Run(() => + { + Invoke(() => { this.pnlMask.Visible = false; }); + }); } else if (BuyType == "direct" && orderItem?.ItemOrder?.AddressStr.Contains("******") == false) { @@ -396,7 +404,10 @@ namespace TemuKJD.ToolForms jObj["name"] = orderItem.ItemOrder.user_name; postData = JsonHelper.SerializeObject(jObj); request.PostData.Elements[0].Bytes = System.Text.Encoding.UTF8.GetBytes(postData); - Invoke(() => { this.pnlMask.Visible = false; }); + Task.Run(() => + { + Invoke(() => { this.pnlMask.Visible = false; }); + }); } catch { @@ -470,6 +481,8 @@ namespace TemuKJD.ToolForms sendProvince = data.Substring(sendProvinceIndex + "{\"key\":\"发货地\",\"values\":[".Length); sendProvince = sendProvince.Substring(0, sendProvince.IndexOf("]")); sendProvince = sendProvince.Trim('\"'); + if (!this.Created) + return; Invoke(new Action(() => { this.txtSendProvince.Text = sendProvince; })); } @@ -494,6 +507,8 @@ namespace TemuKJD.ToolForms if (buyPrice.IsNullOrZero()) buyPrice = BaseRegex.GetIntJson(ref data, "orderAmount"); var orderSn = BaseRegex.GetIntJson(ref data, "orderSn"); + if (!this.Created) + return; Invoke(new Action(() => { // 自动填写关联信息界面 @@ -595,6 +610,8 @@ namespace TemuKJD.ToolForms { if (AbnormalTransitWarehouseOrderInfo != null) { + if (!this.Created) + return; Invoke(new Action(() => { txtSourceCode.Text = AbnormalTransitWarehouseOrderInfo.random_code; })); } else @@ -602,6 +619,8 @@ namespace TemuKJD.ToolForms var sourceCodeRst = GetSourceCode(transit); if (sourceCodeRst.Contains("失败")) { + if (!this.Created) + return; Invoke(new Action(() => { if (cefWebBrowser != null) @@ -614,7 +633,7 @@ namespace TemuKJD.ToolForms } // 填地址 - var rst = await ChangeAddress(transit); + var rst = await ChangeAddress(transit); // 领优惠券 await AutoGetCoupon(); @@ -632,6 +651,8 @@ namespace TemuKJD.ToolForms url.StartsWith("https://mobile.yangkeduo.com/proxy/api/api/van-spike/prepay?pdduid=")) { var data = postData; + if (!this.Created) + return; Invoke(new Action(() => { txtBuyOrderId.Text = BaseRegex.GetStringJsonByRegs(ref data, "", "order_sn", "orderSn"); @@ -643,6 +664,8 @@ namespace TemuKJD.ToolForms var uri = url; var pData = postData; var rData = responseData; + if (!this.Created) + return; Invoke(new Action(() => { btnManualUpdateBuyOrder_Click(null, null); @@ -837,7 +860,8 @@ namespace TemuKJD.ToolForms var randomCode = BaseRegex.GetStringXml(ref sourceCodeRst, "randomCode"); if (!string.IsNullOrEmpty(randomCode)) { - Invoke(new Action(() => { txtSourceCode.Text = randomCode; })); + if (this.Created) + Invoke(new Action(() => { txtSourceCode.Text = randomCode; })); return randomCode; } else @@ -1066,6 +1090,8 @@ namespace TemuKJD.ToolForms } if (warehouseParam.TransFullAddress.Contains(sendProvince)) { + if (!this.Created) + return; Invoke(new Action(() => { cmbTransitWarehouse.Text = warehouseParam.TransName + " " + warehouseParam.TransFullAddress; @@ -1078,6 +1104,8 @@ namespace TemuKJD.ToolForms if (!isAutoGetWarehouse) { //黄导家庭父母5天训练营-《父母5天成为孩子成长的引路人》+《不内卷养育》2本书 + if (!this.Created) + return; Invoke(() => { cmbTransitWarehouse.Text = ""; @@ -1348,8 +1376,8 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("溯源码长度错误!"); - else - Invoke(() => { lblErrMsg.Text = "溯源码长度错误!"; }); + else if (this.Created) + Invoke(() => { lblErrMsg.Text = "溯源码长度错误!"; }); return; } var client = cefWebBrowser?.GetDevToolsClient(); @@ -1357,7 +1385,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("页面未加载!"); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "页面未加载!"; }); return; } @@ -1386,7 +1414,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("缺少中转地址,请重新绑定商品并选择仓库地址"); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "缺少中转地址,请重新绑定商品并选择仓库地址"; }); return; } @@ -1395,7 +1423,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("中转地址对应的中转仓不存在,请核对"); - else + else if(this.Created) Invoke(() => { lblErrMsg.Text = "中转地址对应的中转仓不存在,请核对"; }); return; } @@ -1403,7 +1431,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("缺少拍单订单号,请拍单后再提交"); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "缺少拍单订单号,请拍单后再提交"; }); return; } @@ -1411,7 +1439,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("缺少拍单金额,请拍单后再提交"); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "缺少拍单金额,请拍单后再提交"; }); return; } @@ -1470,7 +1498,7 @@ namespace TemuKJD.ToolForms } if (!IsAutoBuy) BaseMsgForm.ShowError("拍单保存失败,服务端返回 " + msg, "拍单信息保存失败"); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "拍单保存失败,服务端返回 " + msg; }); btnManualUpdateBuyOrder.Enabled = true; return; @@ -1531,7 +1559,7 @@ namespace TemuKJD.ToolForms // } // if (!IsAutoBuy) // BaseMsgForm.ShowError("拍单信息保存成功,接收到服务端传递的错误消息:" + msg, "订单提前取号失败"); - // else + // else if (this.Created) // Invoke(() => { lblErrMsg.Text = "拍单信息保存成功,接收到服务端传递的错误消息:" + msg; }); // btnManualUpdateBuyOrder.Enabled = true; // return; @@ -1603,7 +1631,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("缺少店铺信息!"); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "缺少店铺信息!"; }); return; } @@ -1619,7 +1647,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("直发拍单信息保存失败(01) " + BaseRegex.GetStringJson(ref html, "msg")); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "直发拍单信息保存失败(01) " + BaseRegex.GetStringJson(ref html, "msg"); }); return; } @@ -1648,7 +1676,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("直发拍单信息保存失败(02) " + BaseRegex.GetStringJson(ref html1, "msg")); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "直发拍单信息保存失败(02) " + BaseRegex.GetStringJson(ref html, "msg"); }); return; } @@ -1665,7 +1693,7 @@ namespace TemuKJD.ToolForms { if (!IsAutoBuy) BaseMsgForm.ShowError("直发拍单信息保存失败(03) " + BaseRegex.GetStringJson(ref html2, "msg")); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "直发拍单信息保存失败(03) " + BaseRegex.GetStringJson(ref html, "msg"); }); return; } @@ -1715,7 +1743,7 @@ namespace TemuKJD.ToolForms //NaiBa.Util.Helper.ConfigHelper.SaveConfig("other_buyer_order_list", lstOtherBuyerOrderInfoLite); if (!IsAutoBuy) BaseMsgForm.ShowError("直发拍单保存失败,服务端返回 " + msg, "拍单信息保存失败"); - else + else if (this.Created) Invoke(() => { lblErrMsg.Text = "直发拍单保存失败,服务端返回 " + msg; }); return; }