diff --git a/29WxOrder.sln b/29WxOrder.sln
index 2ffd4f3..f7b161d 100644
--- a/29WxOrder.sln
+++ b/29WxOrder.sln
@@ -1,14 +1,12 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 17
-VisualStudioVersion = 17.14.36221.1 d17.14
+# Visual Studio Version 18
+VisualStudioVersion = 18.7.12002.237 oobstable
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "29WxOrderAllBase", "AllBase\29WxOrderAllBase.csproj", "{6461D807-B1C8-45F0-B388-E0CA1A418DE0}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "29供应链-微信小店拍单", "29供应链-微信小店拍单", "{1A7830FA-AC8F-40FB-A232-F0626812B8BE}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "29WxOrder", "29WxOrder\29WxOrder.csproj", "{D51A1BB0-17BB-44C3-9129-1F3187E82729}"
-EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "29WxOrderWork", "Work\29WxOrderWork.csproj", "{1AD45D66-6872-4522-ACF0-04E2C0514048}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "29WxOrderWpf", "29WxOrderWpf\29WxOrderWpf.csproj", "{D7884375-E42F-4B89-AA3A-D8E75508D8C7}"
@@ -43,22 +41,6 @@ Global
{6461D807-B1C8-45F0-B388-E0CA1A418DE0}.Release|x64.Build.0 = Release|x64
{6461D807-B1C8-45F0-B388-E0CA1A418DE0}.Release|x86.ActiveCfg = Release|x86
{6461D807-B1C8-45F0-B388-E0CA1A418DE0}.Release|x86.Build.0 = Release|x86
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|Mixed Platforms.Build.0 = Debug|x86
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|x64.ActiveCfg = Debug|x64
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|x64.Build.0 = Debug|x64
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|x86.ActiveCfg = Debug|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Debug|x86.Build.0 = Debug|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|Any CPU.Build.0 = Release|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|x64.ActiveCfg = Release|x64
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|x64.Build.0 = Release|x64
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|x86.ActiveCfg = Release|x86
- {D51A1BB0-17BB-44C3-9129-1F3187E82729}.Release|x86.Build.0 = Release|x86
{1AD45D66-6872-4522-ACF0-04E2C0514048}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1AD45D66-6872-4522-ACF0-04E2C0514048}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1AD45D66-6872-4522-ACF0-04E2C0514048}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
@@ -97,7 +79,6 @@ Global
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{6461D807-B1C8-45F0-B388-E0CA1A418DE0} = {4A54DC2A-B47C-4ED1-A482-EE60161DB2C3}
- {D51A1BB0-17BB-44C3-9129-1F3187E82729} = {1A7830FA-AC8F-40FB-A232-F0626812B8BE}
{1AD45D66-6872-4522-ACF0-04E2C0514048} = {4A54DC2A-B47C-4ED1-A482-EE60161DB2C3}
{D7884375-E42F-4B89-AA3A-D8E75508D8C7} = {1A7830FA-AC8F-40FB-A232-F0626812B8BE}
EndGlobalSection
diff --git a/29WxOrderWpf/29WxOrderWpf.csproj b/29WxOrderWpf/29WxOrderWpf.csproj
index 246def0..4694fc4 100644
--- a/29WxOrderWpf/29WxOrderWpf.csproj
+++ b/29WxOrderWpf/29WxOrderWpf.csproj
@@ -55,7 +55,7 @@
4
- 29_common_icon.ico
+ gear.ico
true
@@ -168,6 +168,9 @@
ShopListCtrl.xaml
+
+ UcWaterMarkTextBox.xaml
+
LoginWindow.xaml
@@ -179,7 +182,7 @@
Icons.xaml
-
+
UcWindowBoxes.xaml
@@ -219,6 +222,10 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
@@ -386,7 +393,9 @@
-
+
+
+
diff --git a/29WxOrderWpf/29WxOrderWpf.csproj.user b/29WxOrderWpf/29WxOrderWpf.csproj.user
index e56288b..e905d8d 100644
--- a/29WxOrderWpf/29WxOrderWpf.csproj.user
+++ b/29WxOrderWpf/29WxOrderWpf.csproj.user
@@ -9,6 +9,6 @@
zh-CN
false
- ShowAllFiles
+ ProjectFiles
\ No newline at end of file
diff --git a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs
index 8311a37..aa33f75 100644
--- a/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs
+++ b/29WxOrderWpf/Ctrls/BuyerCtrls/PDDBuyerOrderReadCtrl.xaml.cs
@@ -590,6 +590,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls
}
pdd_order.TransitCreateTime = wx_transit_order?.created_time ?? DateTime.MinValue;
pdd_order.TransitPickupTime = wx_transit_order?.pickup_time ?? DateTime.MaxValue.AddMonths(-1);
+ pdd_order.TransitWarehouseRawMessage = wx_transit_order?.raw_message;
}
@@ -748,6 +749,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls
order.TransitCreateTime = o.TransitCreateTime;
order.TransitPickupTime = o.TransitPickupTime;
+ order.TransitWarehouseRawMessage = o.TransitWarehouseRawMessage;
order.WxOrderCreateTime = o.WxOrderCreateTime;
order.ShopOrderIdStr = o.ShopOrderIdStr;
order.ShopOrderSkuIdStr = o.ShopOrderSkuIdStr;
@@ -800,7 +802,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls
//SendOrderE57(order);
//if (order.sendStatus.ParseToString().Contains("售后"))
- if (order.order_sn == "260706-681553467002665")
+ if (order.order_sn == "260711-223346705920980")
{
}
@@ -813,6 +815,14 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls
var afterSaleRst = PddAutoAfterSale(order);
}
}
+ if (order.TransitWarehouseRawMessage.ParseToString().Contains("超出派送范围"))
+ {
+ if (!",2,3,4,5,7,8,10,31,".Contains("," + (order.after_sales?.after_sales_status).ParseToString() + ","))
+ {
+ // 待发货直接售后,并通知中转仓接口修改退货状态
+ var afterSaleRst = PddAutoAfterSale(order);
+ }
+ }
// 根据订单状态 取号/修改取号
SendTransitOrderE57(order);
@@ -1029,6 +1039,10 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls
if (isUpdate)
{
+ if (afterSale.ShopOrderIdStr == "3737682397646176256")
+ {
+
+ }
// 如果买手退款成功,仓库不是买手退款成功,则修改仓库售后字段为买手退款成功
if (afterSale.AfterSaleStatusStr.Contains("退款成功") || afterSale.AfterSaleStatusStr.Contains("交易已取消"))
{
@@ -1048,7 +1062,7 @@ namespace _29WxOrderWpf.Ctrls.BuyerCtrls
}
}
// 如果中转仓表买手售后状态不等于买手售后单售后,更新仓库买手售后状态
- else if (afterSale.TransitBuyerOrderRefundStatus != afterSale.AfterSaleStatusStr)
+ else if (afterSale.TransitBuyerOrderRefundStatus != "买手退款成功" && afterSale.TransitBuyerOrderRefundStatus != afterSale.AfterSaleStatusStr)
{
//if (!afterSale.AfterSaleStatusStr.Contains("关闭") && !afterSale.AfterSaleStatusStr.Contains("撤销") && !afterSale.AfterSaleStatusStr.Contains("失败"))
var orderTmp = new PddBuyerOrderLiteInfo() { ShopOrderIdStr = afterSale.ShopOrderIdStr, order_sn = afterSale.orderSn };
diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml
index 6f768f3..a3abb31 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml
@@ -21,11 +21,11 @@
-
-
-
+
+
+
@@ -33,60 +33,62 @@
-
-
+
-
-
-
-
-
+
+
+
+
-
-
+
-
-
+
+
+
+
+
+ 成交时间
+
+
+
-
+
-
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
@@ -143,7 +145,7 @@
-
+
@@ -158,29 +160,103 @@
-
-
-
-
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
- {
- order = JsonHelper.DeserializeJsonToObject(JsonHelper.SerializeObject(jObj));
- if (order.order_id == "3737596572558051840")
- {
-
- }
- }));
+ order = JsonHelper.DeserializeJsonToObject(JsonHelper.SerializeObject(jObj));
//装载订单商品详情
order.orderItems = new ObservableCollection();
@@ -354,14 +347,17 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
// 读取订单后立即赋值,防止滚动时实时赋值造成卡顿
foreach (var orderItem in order.orderItems)
{
- orderItem.SetTransitOrder();
- orderItem.SetItemRefund();
+ orderItem.Dispatcher = this.Dispatcher;
+ orderItem.SetOrderItemTextProperty();
}
// 删除再添加,触发更新。 todo: 如果已存在相同订单,则直接修改更新
var orderExist = GlobalConfig.lstOrder.FirstOrDefault(o => o.order_id == order.order_id);
- if (orderExist != null)
+ while (orderExist != null)
+ {
GlobalConfig.lstOrder.Remove(orderExist);
+ orderExist = GlobalConfig.lstOrder.FirstOrDefault(o => o.order_id == order.order_id);
+ }
var nextOrder = GlobalConfig.lstOrder.FirstOrDefault(o => o.create_time < order.create_time);
if (nextOrder != null)
@@ -413,37 +409,43 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
if (tabItem != null)
{
var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "待采购")));
- tabItem.Header = "待采购(" + userOrderLst.Where(r => r.IsWaitBuy).Count() + "|" + filteLstTmp.Where(r => r.IsWaitBuy).Count() + ")";
+ //tabItem.Header = "待采购(" + userOrderLst.Where(r => r.IsWaitBuy).Count() + "|" + filteLstTmp.Where(r => r.IsWaitBuy).Count() + ")";
+ tabItem.Header = "待采购(" + userOrderLst.Where(r => r.IsWaitBuy).Count() + "|" + filteLstTmp.Count() + ")";
}
tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待发货"));
if (tabItem != null)
{
var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "待发货")));
- tabItem.Header = "待发货(" + userOrderLst.Where(r => r.IsWaitSend).Count() + "|" + filteLstTmp.Where(r => r.IsWaitSend).Count() + ")";
+ //tabItem.Header = "待发货(" + userOrderLst.Where(r => r.IsWaitSend).Count() + "|" + filteLstTmp.Where(r => r.IsWaitSend).Count() + ")";
+ tabItem.Header = "待发货(" + userOrderLst.Where(r => r.IsWaitSend).Count() + "|" + filteLstTmp.Count() + ")";
}
tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待收货"));
if (tabItem != null)
{
var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "待收货")));
- tabItem.Header = "待收货(" + userOrderLst.Where(r => r.IsWaitReceive).Count() + "|" + filteLstTmp.Where(r => r.IsWaitReceive).Count() + ")";
+ //tabItem.Header = "待收货(" + userOrderLst.Where(r => r.IsWaitReceive).Count() + "|" + filteLstTmp.Where(r => r.IsWaitReceive).Count() + ")";
+ tabItem.Header = "待收货(" + userOrderLst.Where(r => r.IsWaitReceive).Count() + "|" + filteLstTmp.Count() + ")";
}
- tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("退款单"));
+ tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("售后完成订单"));
if (tabItem != null)
{
- var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "退款单")));
- tabItem.Header = "退款单(" + userOrderLst.Where(r => r.IsRefund).Count() + "|" + filteLstTmp.Where(r => r.IsRefund).Count() + ")";
+ var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "售后完成订单")));
+ //tabItem.Header = "售后完成订单(" + userOrderLst.Where(r => r.IsRefund).Count() + "|" + filteLstTmp.Where(r => r.IsRefund).Count() + ")";
+ tabItem.Header = "售后完成订单(" + userOrderLst.Where(r => r.IsRefund).Count() + "|" + filteLstTmp.Count() + ")";
}
- tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("紧急单"));
+ tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("需处理售后订单"));
if (tabItem != null)
{
- var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "紧急单")));
- tabItem.Header = "紧急单(" + userOrderLst.Where(r => r.IsEmergency).Count() + "|" + filteLstTmp.Where(r => r.IsEmergency).Count() + ")";
+ var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "需处理售后订单")));
+ //tabItem.Header = "需处理售后订单(" + userOrderLst.Where(r => r.IsEmergency).Count() + "|" + filteLstTmp.Where(r => r.IsEmergency).Count() + ")";
+ tabItem.Header = "需处理售后订单(" + userOrderLst.Where(r => r.IsEmergency).Count() + "|" + filteLstTmp.Count() + ")";
}
- tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("异常单"));
+ tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("异常订单"));
if (tabItem != null)
{
- var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "异常单")));
- tabItem.Header = "异常单(" + userOrderLst.Where(r => r.isAbnormal).Count() + "|" + filteLstTmp.Where(r => r.isAbnormal).Count() + ")";
+ var filteLstTmp = new ObservableCollection(userOrderLst.Where(o => !GetOrderIsFilter(o, "异常订单")));
+ //tabItem.Header = "异常订单(" + userOrderLst.Where(r => r.isAbnormal).Count() + "|" + filteLstTmp.Where(r => r.isAbnormal).Count() + ")";
+ tabItem.Header = "异常订单(" + userOrderLst.Where(r => r.isAbnormal).Count() + "|" + filteLstTmp.Count() + ")";
}
tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("全部订单"));
if (tabItem != null)
@@ -490,12 +492,15 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
public void FilterOneOrder(oms_wei_order_info order, bool updateTabCount = false)
{
+ var orderExist = GlobalConfig.lstFilterOrder.FirstOrDefault(o => o.order_id == order.order_id);
+ while (orderExist != null)
+ {
+ GlobalConfig.lstFilterOrder.Remove(orderExist);
+ orderExist = GlobalConfig.lstFilterOrder.FirstOrDefault(o => o.order_id == order.order_id);
+ }
+
if (!GetOrderIsFilter(order))
{
- var orderExist = GlobalConfig.lstFilterOrder.FirstOrDefault(o => o.order_id == order.order_id);
- if (orderExist != null)
- GlobalConfig.lstFilterOrder.Remove(orderExist);
-
var nextOrder = GlobalConfig.lstFilterOrder.FirstOrDefault(o => o.create_time < order.create_time);
if (nextOrder != null)
{
@@ -524,6 +529,31 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
if (!GlobalConfig.ShopLoginList.Any(s => s.ErpShopId.ParseToLong() == order.shop_id))
return true;
+ if (!string.IsNullOrEmpty(strSearchAll))
+ {
+ bool isFilter = true;
+ // 买手物流
+ if (order.orderItems.Any(oi => oi.ItemTransitOrders.Any(t => t.express_1_waybill.ParseToString().Contains(strSearchAll))))
+ isFilter = false;
+ // 仓库物流
+ else if (order.orderItems.Any(oi => oi.ItemTransitOrders.Any(t => t.express_2_waybill.ParseToString().Contains(strSearchAll))))
+ isFilter = false;
+ // 退货物流
+ else if (order.refundItems.Any(ri => ri.return_waybill_id.ParseToString().Contains(strSearchAll)))
+ isFilter = false;
+ // 退货单号
+ else if (order.refundItems.Any(ri => ri.after_sale_order_id.ParseToString().Contains(strSearchAll)))
+ isFilter = false;
+ // 仓库采购单号
+ else if (order.orderItems.Any(oi => oi.ItemTransitOrders.Any(t => t.out_order_no.ParseToString().Contains(strSearchAll))))
+ isFilter = false;
+ // 仓库退款单号
+ else if (order.orderItems.Any(oi => oi.ItemTransitOrderAfterSales.Any(t => t.refund_waybill.ParseToString().Contains(strSearchAll))))
+ isFilter = false;
+ if (isFilter)
+ return true;
+ }
+
// 过滤店铺名称
if (!string.IsNullOrEmpty(txtShopName.Text.Trim()) && !(";" + txtShopName.Text.Trim() + ";").Contains(";" + order.shop_name + ";"))
{
@@ -549,6 +579,8 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
{
return true;
}
+
+ // 过滤时间范围
if (order.createDateTime < dateStart.SelectedDate.Value)
return true;
if (chkEndDate.IsChecked == true && order.createDateTime > dateEnd.SelectedDate.Value)
@@ -577,24 +609,70 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
{
return true;
}
- if (filterHeadStr.StartsWith("待收货") && !order.IsWaitReceive)
+ if (filterHeadStr.StartsWith("待收货"))
+ {
+ if (!order.IsWaitReceive)
+ return true;
+
+ if (chkWaitReceiveBuyerIsNotSend.IsChecked == true && order.orderItems.All(oi => oi.BuyerTransitWaybillStatusStr != "买手未发货"))
+ return true;
+ if (chkWaitReceiveBuyerIsSend.IsChecked == true && order.orderItems.All(oi => oi.BuyerTransitWaybillStatusStr != "买手已发货"))
+ return true;
+ if (chkWaitReceiveBuyerIsInWarehouse.IsChecked == true && order.orderItems.All(oi => oi.BuyerTransitWaybillStatusStr != "已到中转仓"))
+ return true;
+
+ if (chkWaitReceiveWarehouseIsNotPickup.IsChecked == true && order.orderItems.All(oi => oi.WarehouseWaybillStatusStr != "中转待取号"))
+ return true;
+ if (chkWaitReceiveWarehouseIsPickup.IsChecked == true && order.orderItems.All(oi => oi.WarehouseWaybillStatusStr != "中转提前取号" && oi.WarehouseWaybillStatusStr != "中转已取号" && oi.WarehouseWaybillStatusStr != "中转已入库"))
+ return true;
+ if (chkWaitReceiveWarehouseIsSendOut.IsChecked == true && order.orderItems.All(oi => oi.WarehouseWaybillStatusStr != "中转已出库"))
+ return true;
+ }
+ if (filterHeadStr.StartsWith("异常订单") && !order.isAbnormal)
{
return true;
}
- if (filterHeadStr.StartsWith("退款单") && !order.IsRefund)
- {
- return true;
- }
- if (filterHeadStr.StartsWith("紧急单"))
+ if (filterHeadStr.StartsWith("需处理售后订单"))
{
if (!order.IsEmergency)
return true;
- if (chkWaitOperate.IsChecked == true && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("需手动申请售后")))
+
+ if (chkEmergencyBuyerWaitAfterSale.IsChecked == true && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("需手动申请售后")))
+ return true;
+ else if (chkEmergencyBuyerWaitSendBack.IsChecked == true && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("待用户发货")))
+ return true;
+ else if (chkEmergencyBuyerWaitSupplierRefund.IsChecked == true && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("商家处理中")))
+ return true;
+ else if (chkEmergencyBuyerRefundFail.IsChecked == true && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("退款失败")))
+ return true;
+
+ if (chkEmergencyShopCustomRefundHasWaybill.IsChecked == true && order.orderItems.Any(oi => oi.ReturnWaybillIdStr.IsNullOrEmpty()))
+ return true;
+ else if (chkEmergencyShopCustomRefundNoWaybill.IsChecked == true && order.orderItems.All(oi => !oi.ReturnWaybillIdStr.IsNullOrEmpty()))
+ return true;
+
+ if (chkEmergencyShopAfterSaleSuccess.IsChecked == true && order.DeliveryDeadlineDtatusStr != "退款完成")
+ return true;
+ else if (chkEmergencyShopInAfterSale.IsChecked == true && order.DeliveryDeadlineDtatusStr != "退款中")
return true;
}
- if (filterHeadStr.StartsWith("异常单") && !order.isAbnormal)
+ if (filterHeadStr.StartsWith("售后完成订单"))
{
- return true;
+ if (!order.IsRefund)
+ return true;
+
+ if (chkAftersaleIsSend.IsChecked == true && !order.DeliveryDeadlineStr.Contains("已发货"))
+ return true;
+ else if (chkAftersaleIsNotSend.IsChecked == true && !order.DeliveryDeadlineStr.Contains("未发货"))
+ return true;
+
+ if (chkAftersaleBuyerIsBuy.IsChecked == true && order.orderItems.All(oi => oi.BuyerTransitWaybillStatusStr.IsNullOrEmpty()))
+ return true;
+ if (chkAftersaleWarehouseIsNotPickup.IsChecked == true && order.orderItems.All(oi => oi.WarehouseWaybillStatusStr != "中转待取号" && !oi.WarehouseWaybillStatusStr.Contains("取号异常")))
+ return true;
+ if (chkAftersaleWarehouseIsPickup.IsChecked == true && order.orderItems.All(oi => oi.WarehouseWaybillStatusStr != "中转提前取号" && oi.WarehouseWaybillStatusStr != "中转已取号" &&
+ oi.WarehouseWaybillStatusStr != "中转已入库" && oi.WarehouseWaybillStatusStr != "中转已出库"))
+ return true;
}
return false;
@@ -713,6 +791,11 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
chkSelectAll.Unchecked += ChkSelectAll_Unchecked;
}
+ private void txtSearchAll_TextChanged(object sender, TextChangedEventArgs e)
+ {
+ strSearchAll = txtSearchAll.Text.Trim();
+ }
+
private void tabOrderType_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
GlobalConfig.OrderTabHeaderStr = ((tabOrderType.SelectedItem as TabItem)?.Header).ParseToString();
@@ -760,8 +843,105 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
FilterOrders();
}
- private void chkWaitOperate_Click(object sender, RoutedEventArgs e)
+ ///
+ /// 待处理订单买手售后状态过滤
+ ///
+ private void chkEmergencyBuyerAfterSale_Click(object sender, RoutedEventArgs e)
{
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkEmergencyBuyerWaitAfterSale.IsChecked = chkEmergencyBuyerWaitSendBack.IsChecked = chkEmergencyBuyerWaitSupplierRefund.IsChecked = chkEmergencyBuyerRefundFail.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+ ///
+ /// 待处理订单店铺买家售后物流状态过滤
+ ///
+ private void chkEmergencyShopCustomRefundWaybill_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkEmergencyShopCustomRefundHasWaybill.IsChecked = chkEmergencyShopCustomRefundNoWaybill.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+ ///
+ /// 待处理订单店铺售后状态过滤
+ ///
+ ///
+ ///
+ private void chkEmergencyShopAfterSale_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkEmergencyShopAfterSaleSuccess.IsChecked = chkEmergencyShopInAfterSale.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+
+ ///
+ /// 待收货 买手发货状态
+ ///
+ ///
+ ///
+ private void chkWaitReceiveBuyerStatus_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkWaitReceiveBuyerIsSend.IsChecked = chkWaitReceiveBuyerIsNotSend.IsChecked = chkWaitReceiveBuyerIsInWarehouse.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+
+ private void chkWaitReceiveWarehouseStatus_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkWaitReceiveWarehouseIsNotPickup.IsChecked = chkWaitReceiveWarehouseIsPickup.IsChecked = chkWaitReceiveWarehouseIsSendOut.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+
+ private void chkAftersaleSendStatus_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkAftersaleIsSend.IsChecked = chkAftersaleIsNotSend.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+
+ private void chkAftersaleBuyerStatus_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkAftersaleBuyerIsBuy.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+
+ private void chkAftersaleWarehouseStatus_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkAftersaleWarehouseIsPickup.IsChecked = chkAftersaleWarehouseIsNotPickup.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
FilterOrders();
}
}
diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowHeaderCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowHeaderCtrl.xaml
index 453cd8d..591c21b 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowHeaderCtrl.xaml
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowHeaderCtrl.xaml
@@ -21,7 +21,7 @@
-
+
@@ -35,10 +35,10 @@
+ Text="{Binding DeliveryDeadlineDtatusStr}" BorderThickness="0" />
+ Text="{Binding DeliveryDeadlineStr}" BorderThickness="0" />
-->
@@ -49,20 +49,20 @@
+ Text="{Binding DeliveryDeadlineDtatusStr}" BorderThickness="0" />
+ Text="{Binding DeliveryDeadlineStr}" BorderThickness="0" />
-
-
@@ -72,7 +72,7 @@
-
+
diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
index ab2dd63..30702b3 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
@@ -54,26 +54,26 @@
-
-
-
-
-
-
@@ -90,15 +90,15 @@
-
-
-
@@ -116,33 +116,33 @@
-
-
-
-
-
-
-
-
@@ -178,7 +178,7 @@
-
@@ -187,7 +187,7 @@
Margin="4,0,0,0" Content="仓库退货地址:点击复制" Click="btnGetRefundAddress_Click" Tag="{Binding order_id}">-->
-
-
-
-
-
-
-
-
-
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
\ No newline at end of file