diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml
index 2b4becf..48ea5e0 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml
@@ -666,15 +666,35 @@
Margin="4,0,4,4"
BorderBrush="#e0e0e0"
BorderThickness="0,0,0,1">
-
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs
index b358987..6e73510 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListCtrl.xaml.cs
@@ -1557,6 +1557,31 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
if (!rst2)
return true;
}
+
+ if (chkWaitSend72HourNoWaybill.IsChecked == true)
+ {
+ if (order.orderItems.Any(oi => oi.DirectPddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && bOrder?.order_time <= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72))))
+ { }
+ else if (order.orderItems.Any(oi => oi.PddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && bOrder?.order_time <= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72))))
+ { }
+ else
+ return true;
+ }
+ else if (chkWaitSend48HourNoWaybill.IsChecked == true)
+ {
+ if (order.orderItems.Any(oi => oi.DirectPddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && (bOrder?.order_time < BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-48)) &&
+ bOrder.order_time >= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72)))))
+ { }
+ else if (order.orderItems.Any(oi => oi.PddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && (bOrder?.order_time < BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-48)) &&
+ bOrder.order_time >= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72)))))
+ { }
+ else
+ return true;
+ }
}
if (filterHeadStr.StartsWith("待收货"))
{
@@ -1585,6 +1610,31 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
return true;
if (chkWaitReceiveWarehouseIsSendOut.IsChecked == true && order.orderItems.All(oi => oi.WarehouseWaybillStatusStr != "中转已出库"))
return true;
+
+ if (chk72HourNoWaybill.IsChecked == true)
+ {
+ if (order.orderItems.Any(oi => oi.DirectPddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && bOrder?.order_time <= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72))))
+ { }
+ else if (order.orderItems.Any(oi => oi.PddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && bOrder?.order_time <= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72))))
+ { }
+ else
+ return true;
+ }
+ else if (chk48HourNoWaybill.IsChecked == true)
+ {
+ if (order.orderItems.Any(oi => oi.DirectPddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && (bOrder?.order_time < BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-48)) &&
+ bOrder.order_time >= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72)))))
+ { }
+ else if (order.orderItems.Any(oi => oi.PddBuyerOrders.OrderByDescending(bo => bo.order_time).FirstOrDefault() is order_pdd_buyer_order bOrder &&
+ (bOrder?.tracking_number).IsNullOrEmpty() && (bOrder?.order_time < BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-48)) &&
+ bOrder.order_time >= BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-72)))))
+ { }
+ else
+ return true;
+ }
}
if (filterHeadStr.StartsWith("异常需重拍") && !order.isAbnormal)
{
@@ -1683,12 +1733,9 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
foreach (var orderItem in order.orderItems)
{
- for (int i = 0; i < 1000; i++)
- {
- var receiver = TransitReturnOrderWindow.PddAddressAnalysis(orderItem.PddBuyerAfterSale?.afterSaleAddress);
- if (!receiver.receiver_address.IsNullOrEmpty())
- return true;
- }
+ var receiver = TransitReturnOrderWindow.PddAddressAnalysis(orderItem.PddBuyerAfterSale?.afterSaleAddress);
+ if (!receiver.receiver_address.IsNullOrEmpty() && receiver.receiver_name.Length <= 15)
+ return true;
}
}
else
@@ -1699,11 +1746,34 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
foreach (var orderItem in order.orderItems)
{
var receiver = TransitReturnOrderWindow.PddAddressAnalysis(orderItem.DirectPddBuyerAfterSale?.afterSaleAddress);
- if (!receiver.receiver_address.IsNullOrEmpty())
+ if (!receiver.receiver_address.IsNullOrEmpty() && receiver.receiver_name.Length <= 15)
return true;
}
}
}
+
+ var cmbReturnOrderStatusText = cmbReturnOrderStatus.SelectedItem.ParseToString().Replace("System.Windows.Controls.ComboBoxItem: ", "");
+ if (cmbReturnOrderStatusText == "未创建" && !order.orderItems.Any(oi => oi.AddEditTransitWarehouseReturnOrderStr == "未创建"))
+ return true;
+ if (cmbReturnOrderStatusText == "创建失败" && !order.orderItems.Any(oi => oi.AddEditTransitWarehouseReturnOrderStr == "创建失败"))
+ return true;
+ if (cmbReturnOrderStatusText == "已创建未到仓" && !order.orderItems.Any(oi => oi.AddEditTransitWarehouseReturnOrderStr.StartsWith("已创建未到仓")))
+ return true;
+ if (cmbReturnOrderStatusText == "已到仓" && !order.orderItems.Any(oi => oi.AddEditTransitWarehouseReturnOrderStr.StartsWith("已到仓")))
+ return true;
+ if (cmbReturnOrderStatusText == "已发回" && !order.orderItems.Any(oi => oi.AddEditTransitWarehouseReturnOrderStr.StartsWith("已发回")))
+ return true;
+
+ var cmbReturnOrderBuyerStatusText = cmbReturnOrderBuyerStatus.SelectedItem.ParseToString().Replace("System.Windows.Controls.ComboBoxItem: ", "");
+
+ if (cmbReturnOrderBuyerStatusText == "买手待申请售后" && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("需手动申请售后")))
+ return true;
+ else if (cmbReturnOrderBuyerStatusText == "买手待退货" && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("待用户发货")))
+ return true;
+ else if (cmbReturnOrderBuyerStatusText == "买手已寄出待商家退款" && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("商家处理中")))
+ return true;
+ else if (cmbReturnOrderBuyerStatusText == "买手退货失败" && order.orderItems.All(oi => !oi.TransitRefundStatusStr.Contains("退款失败")))
+ return true;
}
if (filterHeadStr.StartsWith("售后完成单"))
{
@@ -2762,6 +2832,38 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
Content = autoBuyIntroForm,
}.ShowDialog();
}
+
+ private void chkNoWaybill_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chk48HourNoWaybill.IsChecked = chk72HourNoWaybill.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+
+ private void chkWaitSendNoWaybill_Click(object sender, RoutedEventArgs e)
+ {
+ if (sender is CheckBox chk)
+ {
+ var isCheck = !chk.IsChecked.ParseToBool();
+ chkWaitSend48HourNoWaybill.IsChecked = chkWaitSend72HourNoWaybill.IsChecked = false;
+ chk.IsChecked = !isCheck;
+ }
+ FilterOrders();
+ }
+
+ private void cmbReturnOrderStatus_SelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ FilterOrders();
+ }
+
+ private void cmbReturnOrderBuyerStatus_SelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ FilterOrders();
+ }
}
public class OrderFilterConfig : PropertyNotifyObject
diff --git a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
index e136c2e..f97bea2 100644
--- a/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
+++ b/29WxOrderWpf/Ctrls/OrderCtrls/OrderListRowItemCtrl.xaml
@@ -430,15 +430,33 @@
-
+
+
+
+
+
diff --git a/29WxOrderWpf/Windows/OrderWindows/TransitReturnOrderWindow.xaml.cs b/29WxOrderWpf/Windows/OrderWindows/TransitReturnOrderWindow.xaml.cs
index 3eedbb7..adbca4f 100644
--- a/29WxOrderWpf/Windows/OrderWindows/TransitReturnOrderWindow.xaml.cs
+++ b/29WxOrderWpf/Windows/OrderWindows/TransitReturnOrderWindow.xaml.cs
@@ -110,7 +110,8 @@ namespace _29WxOrderWpf.Windows.OrderWindows
txtMobile.Text = OrderItem.DistribReturnOrderInfo.receiver_phone;
}
- if (OrderItem.AddEditTransitWarehouseReturnOrderStr == "已创建" || OrderItem.AddEditTransitWarehouseReturnOrderStr == "处理中")
+ if (OrderItem.AddEditTransitWarehouseReturnOrderStr == "已创建未到仓" || OrderItem.AddEditTransitWarehouseReturnOrderStr == "已到仓" ||
+ OrderItem.AddEditTransitWarehouseReturnOrderStr == "已发回")
btnAdd.IsEnabled = false;
}
}
@@ -254,7 +255,7 @@ namespace _29WxOrderWpf.Windows.OrderWindows
if (wxExpressName.IsNullOrEmpty() || OrderItem.ItemRefund.return_waybill_id.IsNullOrEmpty() || receiver.receiver_name.IsNullOrEmpty() || receiver.receiver_phone.IsNullOrEmpty() ||
receiver.receiver_province.IsNullOrEmpty() || receiver.receiver_city.IsNullOrEmpty() || receiver.receiver_area.IsNullOrEmpty() || receiver.receiver_address.IsNullOrEmpty())
{
- if (!string.IsNullOrWhiteSpace(aftersaleAddress))
+ if (!string.IsNullOrWhiteSpace(aftersaleAddress) || receiver.receiver_name.Length > 15)
{
// todo 提示地址解析失败请手动提交
OrderItem.AddEditTransitWarehouseReturnOrderStr = "解析失败请手动添加";
diff --git a/AllBase/Model/DBModel/oms_wei_order_info.cs b/AllBase/Model/DBModel/oms_wei_order_info.cs
index fe3b97f..958b992 100644
--- a/AllBase/Model/DBModel/oms_wei_order_info.cs
+++ b/AllBase/Model/DBModel/oms_wei_order_info.cs
@@ -703,6 +703,11 @@ namespace AllBase.Model.DBModel
IsWaitBuy = GetIsWaitBuy();
IsWaitSend = GetIsWaitSend();
IsWaitReceive = GetIsWaitReceive();
+
+ if (order_id == "3739089000222605568")
+ {
+
+ }
isAbnormal = GetIsAbnormal();
}
@@ -777,6 +782,11 @@ namespace AllBase.Model.DBModel
public bool GetIsAbnormal()
{
+ // 三退或者两退,为退款完成单
+ //if (orderItems.All(oi => (oi.refund_status == 4 || oi.refund_status == 11) && (oi.ItemTransitOrder != null || string.IsNullOrWhiteSpace(out_order_no)) &&
+ // (oi.ItemTransitOrder == null || oi.ItemTransitOrder?.refund_status == "买手退款成功") && (string.IsNullOrWhiteSpace(out_order_no) || out_after_sale_status == "退款成功")))
+ // return false;
+
// 如果有售后,直接作为售后单处理
if (orderItems.All(oi => oi.refund_status > 1))
return false;
@@ -785,7 +795,6 @@ namespace AllBase.Model.DBModel
return false;
if (gift_order_status == 1 || gift_order_status == 2)
return false;
-
if (orderItems.Any(oi => !(oi.OrderItemExt?.abnormal_text).IsNullOrEmpty()))
return true;
diff --git a/AllBase/Model/DBModel/oms_wei_order_item_info.cs b/AllBase/Model/DBModel/oms_wei_order_item_info.cs
index e0c5aab..70cbabe 100644
--- a/AllBase/Model/DBModel/oms_wei_order_item_info.cs
+++ b/AllBase/Model/DBModel/oms_wei_order_item_info.cs
@@ -345,18 +345,38 @@ namespace AllBase.Model.DBModel
}
// 关闭中转包裹退回,改为中转分销退货
+ //if (AddEditTransitWarehouseAfterSaleStr == "添加")
+ // AddEditTransitWarehouseAfterSaleStr = "";
+ //AddEditTransitWarehouseReturnOrderStr = DistribReturnOrderInfo == null ? "添加" : "已添加";
+ //if (DistribReturnOrderInfo?.warehouse_status == 1)
+ // AddEditTransitWarehouseReturnOrderStr = "已创建";
+ //if (DistribReturnOrderInfo?.warehouse_status == 2)
+ // AddEditTransitWarehouseReturnOrderStr = "创建异常";
+ //if (DistribReturnOrderInfo?.warehouse_status == 3)
+ // AddEditTransitWarehouseReturnOrderStr = "处理中";
+ //if (TransitRefundStatusStr.Contains("退款成功"))
+ //{
+ // if (AddEditTransitWarehouseReturnOrderStr == "添加")
+ // AddEditTransitWarehouseReturnOrderStr = "";
+ //}
+
if (AddEditTransitWarehouseAfterSaleStr == "添加")
AddEditTransitWarehouseAfterSaleStr = "";
- AddEditTransitWarehouseReturnOrderStr = DistribReturnOrderInfo == null ? "添加" : "已添加";
+ AddEditTransitWarehouseReturnOrderStr = DistribReturnOrderInfo == null ? "未创建" : "已添加";
if (DistribReturnOrderInfo?.warehouse_status == 1)
- AddEditTransitWarehouseReturnOrderStr = "已创建";
+ {
+ if ((DistribReturnOrderInfo?.real_logistics_express_code).IsNullOrEmpty())
+ AddEditTransitWarehouseReturnOrderStr = "已到仓";
+ else
+ AddEditTransitWarehouseReturnOrderStr = "已发回";
+ }
if (DistribReturnOrderInfo?.warehouse_status == 2)
- AddEditTransitWarehouseReturnOrderStr = "创建异常";
+ AddEditTransitWarehouseReturnOrderStr = "创建失败";
if (DistribReturnOrderInfo?.warehouse_status == 3)
- AddEditTransitWarehouseReturnOrderStr = "处理中";
+ AddEditTransitWarehouseReturnOrderStr = "已创建未到仓";
if (TransitRefundStatusStr.Contains("退款成功"))
{
- if (AddEditTransitWarehouseReturnOrderStr == "添加")
+ if (AddEditTransitWarehouseReturnOrderStr == "未创建")
AddEditTransitWarehouseReturnOrderStr = "";
}
}
@@ -961,7 +981,11 @@ namespace AllBase.Model.DBModel
///
public Visibility PurchasePriceVisibility
{
- get { if (ItemOrder.out_amount > 0 || ItemTransitOrder?.out_amount > 0) return Visibility.Collapsed; return Visibility.Visible; }
+ get
+ {
+ //if (ItemOrder.out_amount > 0 || ItemTransitOrder?.out_amount > 0) return Visibility.Collapsed; return Visibility.Visible;
+ return Visibility.Collapsed;
+ }
set { }
}
@@ -978,10 +1002,10 @@ namespace AllBase.Model.DBModel
/// 运费文本是否可见
///
public Visibility FreightVisibility
- {
- get { if (ItemOrder.out_amount > 0 || ItemTransitOrder?.out_amount > 0) return Visibility.Collapsed; return Visibility.Visible; }
- //get { if (ItemOrder.freight > 0) return Visibility.Visible; return Visibility.Collapsed; }
- set { }
+ {
+ //get { if (ItemOrder.out_amount > 0 || ItemTransitOrder?.out_amount > 0) return Visibility.Collapsed; return Visibility.Visible; }
+ get { return Visibility.Collapsed; }
+ set { }
}
///
@@ -1171,6 +1195,13 @@ namespace AllBase.Model.DBModel
}
}
+ public string RefundStatusStr
+ {
+ get { return this.GetValue(x => x.RefundStatusStr); }
+ set { this.SetValue(x => x.RefundStatusStr, value); }
+ }
+
+
///
/// 订单商品表数据库id
///
@@ -1312,7 +1343,24 @@ namespace AllBase.Model.DBModel
///
/// 售后状态 1:无售后或售后关闭,2:售后处理中,3:退款中,4:退款成功,11:已取消(售后完成订单取消)
///
- public int? refund_status { get; set; }
+ public int? refund_status
+ {
+ get { return this.GetValue(x => x.refund_status); }
+ set
+ {
+ this.SetValue(x => x.refund_status, value);
+ if (value == 1)
+ RefundStatusStr = "无售后/售后关闭";
+ else if (value == 2)
+ RefundStatusStr = "售后处理中";
+ else if (value == 3)
+ RefundStatusStr = "退款中";
+ else if (value == 4)
+ RefundStatusStr = "退款成功";
+ else if (value == 11)
+ RefundStatusStr = "售后完成订单取消";
+ }
+ }
public void SetOrderItemTextProperty()
{
diff --git a/AllBase/Model/Result/PDDFrontProductInfo3.cs b/AllBase/Model/Result/PDDFrontProductInfo3.cs
index 96484d6..a87353a 100644
--- a/AllBase/Model/Result/PDDFrontProductInfo3.cs
+++ b/AllBase/Model/Result/PDDFrontProductInfo3.cs
@@ -203,7 +203,10 @@ namespace AllBase.Model.Result
set
{
_specs = value;
- SpecNameStr = string.Join(",", value.Select(s => s.spec_value));
+ if (value != null)
+ SpecNameStr = string.Join(",", value.Select(s => s.spec_value));
+ else
+ SpecNameStr = "";
}
}
public int? price { get; set; } // 0,