diff --git a/29WxOrderWpf/Converters/ListBoxIndexConverter.cs b/29WxOrderWpf/Converters/ListBoxIndexConverter.cs index c95e0a8..4fe6386 100644 --- a/29WxOrderWpf/Converters/ListBoxIndexConverter.cs +++ b/29WxOrderWpf/Converters/ListBoxIndexConverter.cs @@ -19,9 +19,9 @@ namespace _29WxOrderWpf.Converters return 0; return listView.ItemContainerGenerator.IndexFromContainer(item) + 1; - } + } - public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw new NotImplementedException(); } diff --git a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs index a62e483..657e3b1 100644 --- a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs +++ b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs @@ -1265,7 +1265,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls // 退款状态有变化才发起修改(退款状态不能从退款成功变成未退款) PddBuyerAfterSaleLiteInfo afterSaleRefundSuccessExist = null; afterSaleRefundSuccessExist = lstPddBuyerAfterSaleInfoLite.ToList().FirstOrDefault(a => a.afterSalesId != afterSale.afterSalesId && - a.orderSn == afterSale.orderSn && (a.AfterSaleStatusStr.Contains("退款成功") || a.AfterSaleStatusStr.Contains("交易已取消"))); + a.orderSn == afterSale.orderSn && !string.IsNullOrEmpty(a.AfterSaleStatusStr) && (a.AfterSaleStatusStr.Contains("退款成功") || a.AfterSaleStatusStr.Contains("交易已取消"))); if ((afterSaleRefundSuccessExist == null || afterSale.AfterSaleStatusStr == afterSaleRefundSuccessExist.AfterSaleStatusStr) && (afterSale.AfterSaleStatusOldStr != afterSale.AfterSaleStatusStr)) diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml index 2de9c26..c484f6a 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml @@ -1416,7 +1416,8 @@ CanUserReorderColumns="False" ColumnDisplayIndexChanged="dgOrderHeader_ColumnDisplayIndexChanged" ColumnHeaderHeight="{Binding ElementName=lstTitle, Path=ActualHeight}" - LayoutUpdated="dgOrderHeader_LayoutUpdated"> + LayoutUpdated="dgOrderHeader_LayoutUpdated" + Sorting="dgOrderHeader_Sorting"> + Header="交易时间 ▼" + HeaderStyle="{StaticResource BaseDataGridColumnHeaderStyle}"> + + + + + + + _columnHeaderTitle; + set + { + _columnHeaderTitle = value; + OnPropertyChanged(new PropertyChangedEventArgs("ColumnHeaderTitle")); + } + } string cmbReturnOrderBuyerStatusText = string.Empty; string cmbReturnPackageStatusText = string.Empty; @@ -2266,6 +2276,8 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls GlobalConfig.lstFilterOrder.Clear(); GlobalConfig.lstFilterOrder = new ObservableCollection(); this.lbxOrder.ItemsSource = GlobalConfig.lstFilterOrder; + + dgHeaderTime.Header = ColumnHeaderTitle = "交易时间 ▼"; } GlobalConfig.OrderTabHeaderStr = ((tabOrderType.SelectedItem as TabItem)?.Header).ParseToString(); FilterOrders(); @@ -3144,6 +3156,34 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls } } + private void dgOrderHeader_Sorting(object sender, DataGridSortingEventArgs e) + { + if (e.Column.Header.ParseToString().StartsWith("交易时间")) + { + if (e.Column.Header.ParseToString() == "交易时间 ▲") + { + if (GlobalConfig.OrderTabHeaderStr.StartsWith("需处理售后单") || GlobalConfig.OrderTabHeaderStr.StartsWith("退货仓自动售后单")) + GlobalConfig.lstFilterOrder.SortDesc(o => o.RefundDatetime); + else if (GlobalConfig.OrderTabHeaderStr.StartsWith("异常需重拍")) + GlobalConfig.lstFilterOrder.SortDesc(o => o.update_time); + else + GlobalConfig.lstFilterOrder.SortDesc(o => o.create_time); + e.Column.Header = ColumnHeaderTitle = "交易时间 ▼"; + } + else + { + if (GlobalConfig.OrderTabHeaderStr.StartsWith("需处理售后单") || GlobalConfig.OrderTabHeaderStr.StartsWith("退货仓自动售后单")) + GlobalConfig.lstFilterOrder.Sort(o => o.RefundDatetime); + else if (GlobalConfig.OrderTabHeaderStr.StartsWith("异常需重拍")) + GlobalConfig.lstFilterOrder.Sort(o => o.update_time); + else + GlobalConfig.lstFilterOrder.Sort(o => o.create_time); + e.Column.Header = ColumnHeaderTitle = "交易时间 ▲"; + } + } + + } + private void cmbFilterRemark_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (cmbFilterRemark.SelectedItem is ComboBoxItem comboBoxItem) diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml index a0ad508..30df9e4 100644 --- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml +++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml @@ -58,10 +58,13 @@ - + d:Text="1" + Text="{Binding ItemOrder.Index}" /> + + o.orderItems .Any(oi => oi.ItemTransitOrder?.order_no == orderItem.order_id && oi.ItemTransitOrder?.order_sku_id == orderItem.sku_id))) { @@ -378,6 +379,8 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls orderItem = newOrder?.orderItems?.FirstOrDefault(oi => oi.sku_id == skuId); if (orderItem == null) return; + if (isAbnormalOrder) + orderItem.BtnAbnormalOrderRebuyVisibility = oldVisibility; if (!isAbnormalOrder && orderItem.ItemTransitOrder != null) { @@ -1440,6 +1443,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls void directBuyOrder() { var orderItem = this.DataContext as oms_wei_order_item_info; + var oldVisibility = orderItem.BtnAbnormalOrderRebuyVisibility; if (orderItem == null) { BaseMsgWindow.ShowError("订单信息为空"); @@ -1471,12 +1475,13 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls var skuId = orderItem.sku_id; MainWindow.Instance.orderListCtrl.GetOrder(orderId); var newOrder = GlobalConfig.lstOrder.FirstOrDefault(or => or.order_id == orderId); - if (newOrder.orderItems.Count == 1) + if (newOrder?.orderItems.Count == 1) orderItem = newOrder?.orderItems?.FirstOrDefault(); else orderItem = newOrder?.orderItems?.FirstOrDefault(oi => oi.sku_id == skuId); if (orderItem == null) return; + orderItem.BtnAbnormalOrderRebuyVisibility = oldVisibility; if (!orderItem.ItemOrder.out_order_no.IsNullOrEmpty() && orderItem.ItemOrder.out_after_sale_status != "退款成功") { diff --git a/AllBase/Model/DBModel/oms_wei_order_info.cs b/AllBase/Model/DBModel/oms_wei_order_info.cs index 4316078..efa8e0a 100644 --- a/AllBase/Model/DBModel/oms_wei_order_info.cs +++ b/AllBase/Model/DBModel/oms_wei_order_info.cs @@ -30,6 +30,10 @@ namespace AllBase.Model.DBModel get { return this.GetValue(x => x.Shop); } set { this.SetValue(x => x.Shop, value); } } + public int Index + { + get { return GlobalConfig.lstFilterOrder.IndexOf(this) + 1; } + } public string OrderDiffItemCountStr { get { return this.GetValue(x => x.OrderDiffItemCountStr); }