diff --git a/29WxOrderWpf/29WxOrderWpf.csproj b/29WxOrderWpf/29WxOrderWpf.csproj index 8b1d1ab..c7cabbc 100644 --- a/29WxOrderWpf/29WxOrderWpf.csproj +++ b/29WxOrderWpf/29WxOrderWpf.csproj @@ -59,7 +59,7 @@ true - ..\bin\ + ..\..\WxFindOrder155\ DEBUG;TRACE full x64 diff --git a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs index 5573289..d326769 100644 --- a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs @@ -183,6 +183,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls if (lstPddBuyerAfterSaleInfoLite == null) lstPddBuyerAfterSaleInfoLite = new ObservableCollection(); + lstPddBuyerAfterSaleInfoLite = new ObservableCollection(lstPddBuyerAfterSaleInfoLite.Where(af => af != null)); foreach (var item in lstPddBuyerAfterSaleInfoLite.ToList()) { if (item.orderDate < DateTime.Now.AddMonths(-1).ToString("yyMMdd").ParseToInt()) @@ -747,7 +748,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls order.ShopOrderIdStr = o.ShopOrderIdStr; order.ShopOrderSkuIdStr = o.ShopOrderSkuIdStr; order.ShopOrderSkuNameStr = o.ShopOrderSkuNameStr; - order.TransitBuyerOrderRefundStatus = o.ShopOrderSkuNameStr; + order.TransitBuyerOrderRefundStatus = o.TransitBuyerOrderRefundStatus; order.TransitWarehouseIdStr = o.TransitWarehouseIdStr; order.Express1WaybillStr = o.Express1WaybillStr; order.Express1CompanyStr = o.Express1CompanyStr; @@ -793,6 +794,11 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls { //SendOrderE57(order); //if (order.sendStatus.ParseToString().Contains("售后")) + + if (order.order_sn == "260706-681553467002665") + { + + } if (order.ShopOrderRefundStr.ParseToString().Contains("售后")) { if (!",2,3,4,5,7,8,10,31,".Contains("," + (order.after_sales?.after_sales_status).ParseToString() + ",")) @@ -800,6 +806,16 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls // 待发货直接售后,并通知中转仓接口修改退货状态 var afterSaleRst = PddAutoAfterSale(order); } + // 作废订单 后台服务端自动进行 需要核对,未取号订单也无法取消 + //if (order.PreAllocatedOrderNoStr == "0" && order.WxOrderVoidStatus != "1") + //{ + // string url2 = "https://po.e57.cn/prod-api/api/oms-api/external_procurement/discardOrder"; + // var data2 = new JObject(); + // data2["orderNo"] = order.ShopOrderIdStr; + // data2["outOrderNo"] = order.order_sn; + // var dataStr2 = JsonHelper.SerializeObject(data2); + // var discardRst = HttpResponseWXBLL.e57PostResponse(url2, dataStr2, ""); + //} } // 根据订单状态 取号/修改取号 @@ -920,7 +936,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls bool isUpdate = false; PddBuyerAfterSaleLiteInfo afterSale = null; - if (!this.lstPddBuyerAfterSaleInfoLite.Any(or => or.afterSalesId == af.afterSalesId)) + if (!this.lstPddBuyerAfterSaleInfoLite.ToList().Any(or => or.afterSalesId == af.afterSalesId)) { isUpdate = true; afterSale = af; @@ -1013,6 +1029,16 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls } } } + // 作废订单 后台服务端自动进行 需要核对,未取号订单也无法取消 + //if (afterSale.PreAllocatedOrderNoStr == "0" && afterSale.WxOrderVoidStatus != "1") + //{ + // string url2 = "https://po.e57.cn/prod-api/api/oms-api/external_procurement/discardOrder"; + // var data2 = new JObject(); + // data2["orderNo"] = afterSale.ShopOrderIdStr; + // data2["outOrderNo"] = afterSale.orderSn; + // var dataStr2 = JsonHelper.SerializeObject(data2); + // var discardRst = HttpResponseWXBLL.e57PostResponse(url2, dataStr2, ""); + //} } NaiBa.Util.Helper.ConfigHelper.SaveConfig("pdd_buyer_after_sale_list", lstPddBuyerAfterSaleInfoLite); } @@ -1649,6 +1675,11 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls ////https://mobile.yangkeduo.com/order.html?order_sn=260417-318525949581688 //// 退货详情页 ////https://mobile.yangkeduo.com/complaint.html?order_sn=260417-357103060621688&after_sales_reason=0&after_sales_type=1&after_sales_code=1001 + + if (order.ShopOrderIdStr == "3737553300321619456") + { + + } if (!order.order_status_prompt.Contains("待发货")) { diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml index 2f4c373..ca53fa8 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml @@ -8,7 +8,7 @@ xmlns:converters="clr-namespace:_29WxOrderWpf.Converters" xmlns:usercontrols="clr-namespace:_29WxOrderWpf.UserControls" mc:Ignorable="d" - d:DesignHeight="450" d:DesignWidth="800" Loaded="Window_Loaded"> + d:DesignHeight="450" d:DesignWidth="1200" Loaded="Window_Loaded"> @@ -143,7 +143,7 @@ - + @@ -158,15 +158,21 @@ - - - - - + + + + + + + + + diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs index 687a2c6..9df28ea 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs @@ -173,7 +173,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls var url1 = BaseClass.Build29WxObjString("order/get_erp_order_item_list"); var data1 = UserLogin.GetSignaturex(); data1 += "&erp_order_id_in=" + order_ids; - data1 += "&page_size=" + 1000; + data1 += "&page_size=" + 2000; var html1 = GetHtml.PostUtf8(url1, data1); if (string.IsNullOrEmpty(html1) || !html1.Contains("\"code\":200")) html1 = GetHtml.PostUtf8(url1, data1); @@ -255,7 +255,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls // 读取关联拍单商品 var urlMap = BaseClass.Build29WxObjString("order/wx_get_buy_prod_map"); var dataMap = UserLogin.GetSignaturex() - + "&spu_codes=" + string.Join(",", orderItems.Select(oi => oi.out_product_id)) + "," + string.Join(",", orderItems.Select(oi => oi.product_id)); + + "&spu_codes=" + string.Join(",", orderItems.Select(oi => GetHtml.UrlEncodeUtf8(oi.out_product_id))) + "," + string.Join(",", orderItems.Select(oi => oi.product_id)); dataMap += "&main_user_name=" + BaseClass.MainUserName; var resultMap = GetHtml.PostUtf8(urlMap, dataMap); if (string.IsNullOrEmpty(resultMap) || !resultMap.Contains("\"code\":200")) @@ -282,7 +282,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls Dispatcher.Invoke(new Action(() => { order = JsonHelper.DeserializeJsonToObject(JsonHelper.SerializeObject(jObj)); - if (order.order_id == "3737398647233862400") + if (order.order_id == "3737596572558051840") { } @@ -354,7 +354,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls Dispatcher.Invoke(new Action(() => { - disPlayOrderTabCount(); + disPlayOrderTabOrderCount(); })); var totalCount = BaseRegex.GetIntJson(ref html, "count"); @@ -374,37 +374,39 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls })); } - public void disPlayOrderTabCount() + public void disPlayOrderTabOrderCount() { - var tabItem = this.tabOrderType.Items.Cast().FirstOrDefault(t => t.Header.ParseToString().StartsWith("待采购")); + var filteLstTmp = new ObservableCollection(GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o, false))); + var tabItems = this.tabOrderType.Items.Cast(); + var tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待采购")); if (tabItem != null) { - tabItem.Header = "待采购(" + GlobalConfig.lstOrder.Where(r => r.IsWaitBuy).Count() + ")"; + tabItem.Header = "待采购(" + GlobalConfig.lstOrder.Where(r => r.IsWaitBuy).Count() + "|" + filteLstTmp.Where(r => r.IsWaitBuy).Count() + ")"; } - tabItem = this.tabOrderType.Items.Cast().FirstOrDefault(t => t.Header.ParseToString().StartsWith("待发货")); + tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待发货")); if (tabItem != null) { - tabItem.Header = "待发货(" + GlobalConfig.lstOrder.Where(r => r.IsWaitSend).Count() + ")"; + tabItem.Header = "待发货(" + GlobalConfig.lstOrder.Where(r => r.IsWaitSend).Count() + "|" + filteLstTmp.Where(r => r.IsWaitSend).Count() + ")"; } - tabItem = this.tabOrderType.Items.Cast().FirstOrDefault(t => t.Header.ParseToString().StartsWith("待收货")); + tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待收货")); if (tabItem != null) { - tabItem.Header = "待收货(" + GlobalConfig.lstOrder.Where(r => r.IsWaitReceive).Count() + ")"; + tabItem.Header = "待收货(" + GlobalConfig.lstOrder.Where(r => r.IsWaitReceive).Count() + "|" + filteLstTmp.Where(r => r.IsWaitReceive).Count() + ")"; } - tabItem = this.tabOrderType.Items.Cast().FirstOrDefault(t => t.Header.ParseToString().StartsWith("退款单")); + tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("退款单")); if (tabItem != null) { - tabItem.Header = "退款单(" + GlobalConfig.lstOrder.Where(r => r.IsRefund).Count() + ")"; + tabItem.Header = "退款单(" + GlobalConfig.lstOrder.Where(r => r.IsRefund).Count() + "|" + filteLstTmp.Where(r => r.IsRefund).Count() + ")"; } - tabItem = this.tabOrderType.Items.Cast().FirstOrDefault(t => t.Header.ParseToString().StartsWith("紧急单")); + tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("紧急单")); if (tabItem != null) { - tabItem.Header = "紧急单(" + GlobalConfig.lstOrder.Where(r => r.IsEmergency).Count() + ")"; + tabItem.Header = "紧急单(" + GlobalConfig.lstOrder.Where(r => r.IsEmergency).Count() + "|" + filteLstTmp.Where(r => r.IsEmergency).Count() + ")"; } - tabItem = this.tabOrderType.Items.Cast().FirstOrDefault(t => t.Header.ParseToString().StartsWith("全部订单")); + tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("全部订单")); if (tabItem != null) { - tabItem.Header = "全部订单(" + GlobalConfig.lstOrder.Count() + ")"; + tabItem.Header = "全部订单(" + GlobalConfig.lstOrder.Count() + "|" + filteLstTmp.Count() + ")"; } txtFilterCount.Text = "当前条件共计 " + GlobalConfig.lstFilterOrder.Count() + " 条订单记录"; } @@ -413,6 +415,9 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls { try { + if (this.lbxOrder == null) + return; + //foreach (var order in GlobalConfig.lstFilterOrder.ToList()) //{ // if (GetOrderIsFilter(order)) @@ -426,9 +431,11 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls //} GlobalConfig.lstFilterOrder = new ObservableCollection(GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o))); this.lbxOrder.ItemsSource = GlobalConfig.lstFilterOrder; - Dispatcher.Invoke(new Action(() => { - txtFilterCount.Text = "当前条件共计 " + GlobalConfig.lstFilterOrder.Count().ToString() + " 条订单记录"; - })); + + //Dispatcher.Invoke(new Action(() => { + // txtFilterCount.Text = "当前条件共计 " + GlobalConfig.lstFilterOrder.Count().ToString() + " 条订单记录"; + //})); + disPlayOrderTabOrderCount(); } catch (Exception ex) { @@ -458,13 +465,13 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls { Dispatcher.Invoke(new Action(() => { - disPlayOrderTabCount(); + disPlayOrderTabOrderCount(); })); } } - bool GetOrderIsFilter(oms_wei_order_info order) + bool GetOrderIsFilter(oms_wei_order_info order, bool isFilterTab = true) { if (order == null) return true; @@ -484,34 +491,48 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls { return true; } + // 过滤多件商品 + if (chkNoMultiOrder.IsChecked.ParseToBool() && order.orderItems.Sum(o => o.sku_cnt) > 1) + { + return true; + } + if (chkOnlyWarehouseOrder.IsChecked.ParseToBool() && order.status >= 30 && order.orderItems.All(oi => oi.ItemTransitOrderWithVoid == null)) + { + return true; + } if (order.createDateTime < dateStart.SelectedDate.Value) return true; if (chkEndDate.IsChecked == true && order.createDateTime > dateEnd.SelectedDate.Value) return true; - if (headerStr.StartsWith("待采购")) + + // 过滤标签页 + if (isFilterTab) { - if (!order.IsWaitBuy) + if (headerStr.StartsWith("待采购")) + { + if (!order.IsWaitBuy) + return true; + if (chkMapProdOnly.IsChecked == true && order.orderItems.All(oi => oi.BuyMap == null)) + return true; + if (chkNoMapProdOnly.IsChecked == true && order.orderItems.All(oi => oi.BuyMap != null)) + return true; + } + if (headerStr.StartsWith("待发货") && !order.IsWaitSend) + { return true; - if (chkMapProdOnly.IsChecked == true && order.orderItems.All(oi => oi.BuyMap == null)) + } + if (headerStr.StartsWith("待收货") && !order.IsWaitReceive) + { return true; - if (chkNoMapProdOnly.IsChecked == true && order.orderItems.All(oi => oi.BuyMap != null)) + } + if (headerStr.StartsWith("退款单") && !order.IsRefund) + { return true; - } - if (headerStr.StartsWith("待发货") && !order.IsWaitSend) - { - return true; - } - if (headerStr.StartsWith("待收货") && !order.IsWaitReceive) - { - return true; - } - if (headerStr.StartsWith("退款单") && !order.IsRefund) - { - return true; - } - if (headerStr.StartsWith("紧急单") && !order.IsEmergency) - { - return true; + } + if (headerStr.StartsWith("紧急单") && !order.IsEmergency) + { + return true; + } } return false; @@ -665,5 +686,16 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls { IsAutoReadOrder = chkAutoReadOrder.IsChecked == true; } + + private void TabItem_SizeChanged(object sender, SizeChangedEventArgs e) + { + var tabItems = this.tabOrderType.Items.Cast(); + wpFilter.Margin = new Thickness(tabItems.Sum(t => t.ActualWidth) + 20, 6, 0, 0); + } + + private void chkSubFilterSonditions_Checked(object sender, RoutedEventArgs e) + { + FilterOrders(); + } } } diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml index 2bde3c0..cba93c3 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml @@ -216,7 +216,7 @@ - @@ -246,14 +246,14 @@ - - + // { + // //BaseMsgWindow.ShowError("未找到店铺账户!" + BaseRegex.GetStringJson(ref html, "msg")); + // //btnBuyOrder.Cursor = Cursors.Hand; + // GlobalConfig.BuyConfig.IsUseAppBalance = true; + // })); + // //return; + // } + //} + + orderRetry: // 拍单前查询账户余额 if (GlobalConfig.BuyConfig.IsUseAppBalance) { @@ -292,10 +316,17 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls { Dispatcher.Invoke(new Action(() => { - BaseMsgWindow.ShowError("未找到店铺账户!" + BaseRegex.GetStringJson(ref html, "msg")); + //BaseMsgWindow.ShowError("未找到店铺账户!" + BaseRegex.GetStringJson(ref html, "msg")); btnBuyOrder.Cursor = Cursors.Hand; })); - return; + if (orderItem.Shop.ErpCorporateAccountUserId == null && orderItem.Shop.ErpManageUserId == null) + { + GlobalConfig.BuyConfig.IsUseAppBalance = true; + StartUp.SaveBuyConfig(); + BaseMsgWindow.ShowError("未找到店铺账户!" + BaseRegex.GetStringJson(ref html, "msg") + ",自动切换为快递余额拍单。"); + goto orderRetry; + } + //return; } if (!string.IsNullOrEmpty(html) && html.Contains("\"code\":200")) { @@ -307,10 +338,14 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls { Dispatcher.Invoke(new Action(() => { - BaseMsgWindow.ShowError("未找到店铺账户!"); + //BaseMsgWindow.ShowError("未找到店铺账户!"); btnBuyOrder.Cursor = Cursors.Hand; })); - return; + GlobalConfig.BuyConfig.IsUseAppBalance = true; + StartUp.SaveBuyConfig(); + BaseMsgWindow.ShowError("未找到店铺账户!自动切换为快递余额拍单。"); + goto orderRetry; + //return; } var balance = erpM.balance.ParseToDecimal(); @@ -573,7 +608,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls { try { - Clipboard.SetText(orderItem.ItemTransitOrder.out_order_no); + Clipboard.SetText(orderItem.ItemTransitOrderWithVoid.out_order_no); BaseMsgWindow.ShowAnimateMessage("复制成功"); } catch (Exception ex) diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs index d8530a2..f789dd5 100644 --- a/AllBase/BaseClass.cs +++ b/AllBase/BaseClass.cs @@ -22,7 +22,7 @@ namespace AllBase /// 版本ID /// - public static int VersionCount = 151; + public static int VersionCount = 157; public static string ServerUrl { get; set; } = "http://1.13.195.131:9000"; public static string DebugUrl { get; set; } = "http://localhost:9000"; diff --git a/AllBase/Model/Local/oms_wei_order_info.cs b/AllBase/Model/Local/oms_wei_order_info.cs index 207b068..2d4a753 100644 --- a/AllBase/Model/Local/oms_wei_order_info.cs +++ b/AllBase/Model/Local/oms_wei_order_info.cs @@ -31,7 +31,6 @@ namespace AllBase.Model.Local public ObservableCollection refundItems { get; set; } = new ObservableCollection(); - private bool isWaitBuy; /// /// 待采购 /// @@ -47,6 +46,7 @@ namespace AllBase.Model.Local if (purchase_status != 0) return false; if (!out_order_no.IsNullOrEmpty()) return false; if (status != 20 && status != 21) return false; + if (gift_order_status == 1 || gift_order_status == 2) return false; return true; } set { } @@ -70,7 +70,7 @@ namespace AllBase.Model.Local /// public bool IsWaitReceive { - get { return status == 30 || status == 100; } + get { return status == 30 || status == 100 || gift_order_status == 1 || gift_order_status == 2; } set { } } /// @@ -164,7 +164,7 @@ namespace AllBase.Model.Local { get { - if (this.refundItems.Any(r => "商家受理中,待买家退货,待商家收货,平台退款中,待用户确认,待用户处理商家协商,待用户处理商家代发起的售后申请".Contains(r.statusStr))) + if (this.refundItems.Any(r => "商家受理中,待买家退货,待商家收货,平台退款中,待用户确认,待用户处理商家协商,待用户处理商家代发起的售后申请,物流拦截中".Contains(r.statusStr))) return "退款中"; else if (this.refundItems.Any(r => r.statusStr == "退款完成" || r.statusStr == "退货退款完成")) return "退款完成"; diff --git a/AllBase/Model/Local/oms_wei_order_item_info.cs b/AllBase/Model/Local/oms_wei_order_item_info.cs index 9d77a47..09f4f5b 100644 --- a/AllBase/Model/Local/oms_wei_order_item_info.cs +++ b/AllBase/Model/Local/oms_wei_order_item_info.cs @@ -80,12 +80,18 @@ namespace AllBase.Model.Local } public List ItemTransitOrders { get; set; } = new List(); + /// + /// 当前仓库订单(不可以是作废单) + /// public oms_wei_external_procurement_log ItemTransitOrder { get { return ItemTransitOrders.FirstOrDefault(t => t.order_void_status != 1); } set { } } - public oms_wei_external_procurement_log ItemTransitOrderWithFake + /// + /// 当前仓库订单(可以是作废单) + /// + public oms_wei_external_procurement_log ItemTransitOrderWithVoid { get { return ItemTransitOrders.FirstOrDefault(); } set { } @@ -145,11 +151,14 @@ namespace AllBase.Model.Local { get { - if (PddBuyerOrder?.wx_order_id == "3737506236083093504") + if (PddBuyerOrder?.wx_order_id == "3737683253753151488") { - } - if ((PddBuyerOrder?.order_status_prompt).ParseToString().Contains("已签收")) + else if ((PddBuyerOrder?.order_status_prompt).ParseToString().Contains("退款成功")) + { + return "买手已退款"; + } + else if ((PddBuyerOrder?.order_status_prompt).ParseToString().Contains("已签收")) { return "已到中转仓"; } @@ -162,9 +171,18 @@ namespace AllBase.Model.Local return "买手已发货"; } - if (ItemTransitOrder?.pre_allocated_order_no == 1 || ItemTransitOrder?.pre_allocated_order_no == 3) + var ref_status = (ItemTransitOrderWithVoid?.refund_status).ParseToString(); + if (ref_status.Contains("退款成功")) + { + return "买手已退款"; + } + if (!ref_status.Contains("退款成功") && ref_status.Length > 0) + { return "买手已发货"; - if (ItemTransitOrder != null) + } + if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) + return "买手已发货"; + if (ItemTransitOrderWithVoid != null) return "买手未发货"; return ""; } @@ -174,6 +192,8 @@ namespace AllBase.Model.Local { get { + if (BuyerWaybillStatusStr.StartsWith("买手已退款")) + return new SolidColorBrush(Color.FromRgb(152, 96, 143)); if (BuyerWaybillStatusStr.StartsWith("已到中转仓")) return new SolidColorBrush(Color.FromRgb(19, 206, 102)); if (BuyerWaybillStatusStr.StartsWith("买手已发货")) @@ -188,6 +208,8 @@ namespace AllBase.Model.Local { get { + if (BuyerWaybillStatusStr.StartsWith("买手已退款")) + return new SolidColorBrush(Color.FromArgb(75, 152, 96, 143)); if (BuyerWaybillStatusStr.StartsWith("已到中转仓")) return new SolidColorBrush(Color.FromRgb(208, 245, 224)); if (BuyerWaybillStatusStr.StartsWith("买手已发货")) @@ -202,6 +224,8 @@ namespace AllBase.Model.Local { get { + if (BuyerWaybillStatusStr.StartsWith("买手已退款")) + return new SolidColorBrush(Color.FromArgb(35, 152, 96, 143)); if (BuyerWaybillStatusStr.StartsWith("已到中转仓")) return new SolidColorBrush(Color.FromRgb(231, 250, 240)); if (BuyerWaybillStatusStr.StartsWith("买手已发货")) @@ -217,13 +241,22 @@ namespace AllBase.Model.Local { get { - if ((ItemTransitOrder?.pre_allocated_order_no == 1 || ItemTransitOrder?.pre_allocated_order_no == 3) && !ItemTransitOrder.express_2_company.IsNullOrEmpty() && !ItemTransitOrder.express_2_waybill.IsNullOrEmpty()) + if(order_id == "3737596572558051840") + { + + } + + if (ItemTransitOrderWithVoid?.order_void_status == 2) + return "中转作废失败"; + if (ItemTransitOrderWithVoid?.order_void_status == 1) + return "中转已作废"; + if ((ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) && !ItemTransitOrderWithVoid.express_2_company.IsNullOrEmpty() && !ItemTransitOrderWithVoid.express_2_waybill.IsNullOrEmpty()) return "中转已发货"; - if (ItemTransitOrder?.pre_allocated_order_no == 1 || ItemTransitOrder?.pre_allocated_order_no == 3) + if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) return "待中转发货"; - if (ItemTransitOrder?.pre_allocated_order_no == 2) + if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 2) return "中转提前取号"; - if (ItemTransitOrder?.pre_allocated_order_no == 0) + if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 0) return "待中转取号"; return ""; } @@ -233,6 +266,8 @@ namespace AllBase.Model.Local { get { + if (WarehouseWaybillStatusStr.StartsWith("中转已作废")) + return new SolidColorBrush(Color.FromRgb(152, 96, 143)); if (WarehouseWaybillStatusStr.StartsWith("中转已发货")) return new SolidColorBrush(Color.FromRgb(19, 206, 102)); if (WarehouseWaybillStatusStr.StartsWith("待中转发货") || WarehouseWaybillStatusStr.StartsWith("中转提前取号")) @@ -247,13 +282,15 @@ namespace AllBase.Model.Local { get { + if (WarehouseWaybillStatusStr.StartsWith("中转已作废")) + return new SolidColorBrush(Color.FromArgb(75, 152, 96, 143)); if (WarehouseWaybillStatusStr.StartsWith("中转已发货")) return new SolidColorBrush(Color.FromRgb(208, 245, 224)); if (WarehouseWaybillStatusStr.StartsWith("待中转发货") || WarehouseWaybillStatusStr.StartsWith("中转提前取号")) return new SolidColorBrush(Color.FromRgb(255, 241, 204)); if (WarehouseWaybillStatusStr.StartsWith("待中转取号")) return new SolidColorBrush(Color.FromRgb(255, 219, 219)); - return new SolidColorBrush(Color.FromRgb(255, 73, 73)); + return new SolidColorBrush(Color.FromRgb(255, 219, 219)); } set { } } @@ -261,31 +298,51 @@ namespace AllBase.Model.Local { get { + if (WarehouseWaybillStatusStr.StartsWith("中转已作废")) + return new SolidColorBrush(Color.FromArgb(35, 152, 96, 143)); if (WarehouseWaybillStatusStr.StartsWith("中转已发货")) return new SolidColorBrush(Color.FromRgb(231, 250, 240)); if (WarehouseWaybillStatusStr.StartsWith("待中转发货") || WarehouseWaybillStatusStr.StartsWith("中转提前取号")) return new SolidColorBrush(Color.FromRgb(255, 248, 230)); if (WarehouseWaybillStatusStr.StartsWith("待中转取号")) return new SolidColorBrush(Color.FromRgb(255, 237, 237)); - return new SolidColorBrush(Color.FromRgb(255, 73, 73)); + return new SolidColorBrush(Color.FromRgb(255, 237, 237)); } set { } } - + /// + /// 中转仓表买手售后字段文字显示 + /// public string TransitRefundStatusStr { get { - if (!string.IsNullOrEmpty(ItemTransitOrder?.refund_status)) + if (!string.IsNullOrEmpty(ItemTransitOrderWithVoid?.refund_status)) { - if (!ItemTransitOrder.refund_status.Contains("需手动申请售后")) - return "已申请售后 " + ItemTransitOrder.refund_status.Replace("申请收到,", ""); - return ItemTransitOrder.refund_status; + if (!ItemTransitOrderWithVoid.refund_status.Contains("需手动申请售后")) + return "已申请售后 " + ItemTransitOrderWithVoid.refund_status.Replace("申请收到,", ""); + return ItemTransitOrderWithVoid.refund_status; } return ""; } set { } } + /// + /// 中转仓表买手售后字段文字显示背景颜色 + /// + public SolidColorBrush TransitRefundStatusBackColor + { + get + { + if (TransitRefundStatusStr.Contains("退款成功")) + return new SolidColorBrush(Color.FromRgb(19, 206, 102)); + if (TransitRefundStatusStr.Contains("需手动申请售后")) + return new SolidColorBrush(Color.FromRgb(255, 73, 73)); + //return new SolidColorBrush(Color.FromRgb(255, 186, 0)); + return new SolidColorBrush(Color.FromRgb(255, 155, 0)); + } + set { } + } // 仓库采购时间是否达标字段 @@ -293,14 +350,14 @@ namespace AllBase.Model.Local { get { - if (ItemTransitOrderWithFake == null) + if (ItemTransitOrderWithVoid == null) return ""; if (ItemOrder.createDateTime == null) ItemOrder.createDateTime = BaseClass.StampToDateTime(ItemOrder.create_time); - string timeStr = "采购时间:" + ItemTransitOrderWithFake.created_time.ToString("yyyy-MM-dd HH:mm:ss"); - if (ItemOrder.createDateTime.Value.Date != ItemTransitOrderWithFake.created_time.Date && ItemTransitOrderWithFake.created_time > ItemTransitOrderWithFake.created_time.Date.AddHours(1.5)) + string timeStr = "采购时间:" + ItemTransitOrderWithVoid.created_time.ToString("yyyy-MM-dd HH:mm:ss"); + if (ItemOrder.createDateTime.Value.Date != ItemTransitOrderWithVoid.created_time.Date && ItemTransitOrderWithVoid.created_time > ItemTransitOrderWithVoid.created_time.Date.AddHours(1.5)) return timeStr + " ×"; return timeStr + " √"; } diff --git a/AllBase/Model/Local/oms_wei_refund_info.cs b/AllBase/Model/Local/oms_wei_refund_info.cs index e3a69f7..eac3e25 100644 --- a/AllBase/Model/Local/oms_wei_refund_info.cs +++ b/AllBase/Model/Local/oms_wei_refund_info.cs @@ -30,6 +30,7 @@ namespace AllBase.Model.Local if (status == "MERCHANT_FAIL") return "售后关闭"; if (status == "USER_WAIT_CONFIRM_UPDATE") return "待用户处理商家协商"; if (status == "USER_WAIT_HANDLE_MERCHANT_AFTER_SALE") return "待用户处理商家代发起的售后申请"; + if (status == "WAIT_PACKAGE_INTERCEPT") return "物流拦截中"; return "售后状态读取失败"; } set { } @@ -42,7 +43,8 @@ namespace AllBase.Model.Local get { if (status == "MERCHANT_PROCESSING" || status == "PLATFORM_REFUNDING" || status == "USER_WAIT_RETURN" || status == "MERCHANT_WAIT_RECEIPT" || - status == "USER_WAIT_CONFIRM" || status == "USER_WAIT_CONFIRM_UPDATE" || status == "USER_WAIT_HANDLE_MERCHANT_AFTER_SALE") + status == "USER_WAIT_CONFIRM" || status == "USER_WAIT_CONFIRM_UPDATE" || status == "USER_WAIT_HANDLE_MERCHANT_AFTER_SALE" || + status == "WAIT_PACKAGE_INTERCEPT") return new SolidColorBrush(Color.FromRgb(230, 162, 60)); if (status == "MERCHANT_REFUND_SUCCESS" || status == "MERCHANT_RETURN_SUCCESS") return new SolidColorBrush(Color.FromRgb(103, 194, 58)); @@ -85,6 +87,7 @@ namespace AllBase.Model.Local /// MERCHANT_FAIL 售后关闭 /// USER_WAIT_CONFIRM_UPDATE 待用户处理商家协商 /// USER_WAIT_HANDLE_MERCHANT_AFTER_SALE 待用户处理商家代发起的售后申请 + /// WAIT_PACKAGE_INTERCEPT 物流拦截中; /// public string status { get; set; } /// diff --git a/AllBase/Model/MvvmBaseClasses/PropertyNotifyObject.cs b/AllBase/Model/MvvmBaseClasses/PropertyNotifyObject.cs index 2f40f14..ef93659 100644 --- a/AllBase/Model/MvvmBaseClasses/PropertyNotifyObject.cs +++ b/AllBase/Model/MvvmBaseClasses/PropertyNotifyObject.cs @@ -27,7 +27,8 @@ namespace AllBase.Model.MvvmBaseClasses if (!_ValueDictionary.TryGetValue(propertyName, out _propertyValue)) { _propertyValue = default(T); - _ValueDictionary.Add(propertyName, _propertyValue); + //_ValueDictionary.Add(propertyName, _propertyValue); + _ValueDictionary[propertyName] = _propertyValue; } return (T)_propertyValue; } diff --git a/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs b/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs index e92aa15..f52e493 100644 --- a/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs +++ b/Work/_29Tools/Forms/PddMobileBuyOrderForm.cs @@ -653,7 +653,7 @@ namespace TemuKJD.ToolForms var url = BaseClass.Build29WxObjString("order/wx_add_mdy_buy_prod_map"); var data = UserLogin.GetSignaturex() - + "&spu_code=" + txtUpSpuCode.Text.Trim() + + "&spu_code=" + GetHtml.UrlEncodeUtf8(txtUpSpuCode.Text.Trim()) + "&sku_code=" + GetHtml.UrlEncodeUtf8(txtUpSkuCode.Text.Trim()) + "&main_user_name=" + BaseClass.MainUserName + "&map_goods_name=" + txtMapGoodsName.Text.Trim() diff --git a/Work/_29Tools/Forms/PddMobileBuyOrderForm.designer.cs b/Work/_29Tools/Forms/PddMobileBuyOrderForm.designer.cs index ccf5169..877daaf 100644 --- a/Work/_29Tools/Forms/PddMobileBuyOrderForm.designer.cs +++ b/Work/_29Tools/Forms/PddMobileBuyOrderForm.designer.cs @@ -89,14 +89,14 @@ this.label26 = new System.Windows.Forms.Label(); this.txtOrderId = new System.Windows.Forms.TextBox(); this.pnlBuy = new System.Windows.Forms.Panel(); + this.label28 = new System.Windows.Forms.Label(); + this.txtSourceCode = new System.Windows.Forms.TextBox(); this.btnReMap = new DevComponents.DotNetBar.PanelEx(); this.label25 = new System.Windows.Forms.Label(); this.txtBuyTransitWarehouse = new System.Windows.Forms.TextBox(); this.pnlMap = new System.Windows.Forms.Panel(); this.chkAutoChangeWarehouseAddress = new Work.UserComponents.UcCheckBox(this.components); this.pictureBox1 = new System.Windows.Forms.PictureBox(); - this.label28 = new System.Windows.Forms.Label(); - this.txtSourceCode = new System.Windows.Forms.TextBox(); ((System.ComponentModel.ISupportInitialize)(this.pbCloseBase)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel2.SuspendLayout(); @@ -816,6 +816,25 @@ this.pnlBuy.Size = new System.Drawing.Size(468, 226); this.pnlBuy.TabIndex = 872; // + // label28 + // + this.label28.AutoSize = true; + this.label28.Location = new System.Drawing.Point(266, 142); + this.label28.Name = "label28"; + this.label28.Size = new System.Drawing.Size(44, 17); + this.label28.TabIndex = 884; + this.label28.Text = "溯源码"; + // + // txtSourceCode + // + this.txtSourceCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtSourceCode.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.txtSourceCode.Location = new System.Drawing.Point(310, 139); + this.txtSourceCode.Name = "txtSourceCode"; + this.txtSourceCode.Size = new System.Drawing.Size(152, 23); + this.txtSourceCode.TabIndex = 885; + // // btnReMap // this.btnReMap.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); @@ -908,25 +927,6 @@ this.pictureBox1.TabStop = false; this.pictureBox1.Click += new System.EventHandler(this.pictureBox1_Click); // - // label28 - // - this.label28.AutoSize = true; - this.label28.Location = new System.Drawing.Point(266, 142); - this.label28.Name = "label28"; - this.label28.Size = new System.Drawing.Size(44, 17); - this.label28.TabIndex = 884; - this.label28.Text = "溯源码"; - // - // txtSourceCode - // - this.txtSourceCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.txtSourceCode.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.txtSourceCode.Location = new System.Drawing.Point(310, 139); - this.txtSourceCode.Name = "txtSourceCode"; - this.txtSourceCode.Size = new System.Drawing.Size(152, 23); - this.txtSourceCode.TabIndex = 885; - // // PddMobileBuyOrderForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;