优化读单卡顿问题
This commit is contained in:
1 parent
7998a753cc
commit
5721d0f7f3
6 files changed
+293
-267
No files matched your search
@@ -327,7 +327,7 @@
|
||||
Checked="chkSubFilterSonditions_Checked"
|
||||
Content="过滤多商品订单"
|
||||
FontSize="12"
|
||||
IsChecked="{Binding orderFilterConfig.chkHideGreenFlagIsChecked}"
|
||||
IsChecked="{Binding orderFilterConfig.chkNoMultiOrderIsChecked}"
|
||||
Unchecked="chkSubFilterSonditions_Checked" />
|
||||
<Polyline
|
||||
Grid.Column="5"
|
||||
|
||||
@@ -970,59 +970,59 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
}
|
||||
if (order.OrderBuyType == "直发" || order.OrderBuyType == "云改直")
|
||||
{
|
||||
//if (order.out_after_sale_status.ParseToString().Contains("待用户发货") && !(orderItem.DistribReturnOrderInfo?.real_logistics_express_code).IsNullOrEmpty())
|
||||
//{
|
||||
// string orderSn = order.out_order_no;
|
||||
// if (orderSn.IsNullOrEmpty())
|
||||
// continue;
|
||||
// string buyerNickName = order.out_account;
|
||||
// if (buyerNickName.IsNullOrEmpty())
|
||||
// continue;
|
||||
// var buyer = GlobalConfig.PDDBuyerLoginList.ToList().FirstOrDefault(b => b.buyer_nick == buyerNickName);
|
||||
// if (buyer == null)
|
||||
// continue;
|
||||
// var afterSalesId = orderItem.PddBuyerAfterSale?.afterSalesId;
|
||||
// if (string.IsNullOrEmpty(afterSalesId))
|
||||
// continue;
|
||||
// var waybillId = orderItem.DistribReturnOrderInfo?.real_logistics_express_code;
|
||||
if (order.out_after_sale_status.ParseToString().Contains("待用户发货") && !(orderItem.DistribReturnOrderInfo?.real_logistics_express_code).IsNullOrEmpty())
|
||||
{
|
||||
string orderSn = order.out_order_no;
|
||||
if (orderSn.IsNullOrEmpty())
|
||||
continue;
|
||||
string buyerNickName = order.out_account;
|
||||
if (buyerNickName.IsNullOrEmpty())
|
||||
continue;
|
||||
var buyer = GlobalConfig.PDDBuyerLoginList.ToList().FirstOrDefault(b => b.buyer_nick == buyerNickName);
|
||||
if (buyer == null)
|
||||
continue;
|
||||
var afterSalesId = orderItem.PddBuyerAfterSale?.afterSalesId;
|
||||
if (string.IsNullOrEmpty(afterSalesId))
|
||||
continue;
|
||||
var waybillId = orderItem.DistribReturnOrderInfo?.real_logistics_express_code;
|
||||
|
||||
// var chkRst = AddReturnPddShopPackageInfocheck(buyer, orderSn, afterSalesId, waybillId);
|
||||
// var type = 4;
|
||||
// if (chkRst.Contains("\"interactType\":0"))
|
||||
// type = 2;
|
||||
// var result = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId, "韵达快递", "121", type.ToString());
|
||||
// if (!result.Contains("\"result\":\"ok\""))
|
||||
// {
|
||||
// type = type == 4 ? 2 : 4;
|
||||
// result = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId, "韵达快递", "121", type.ToString());
|
||||
// }
|
||||
var chkRst = AddReturnPddShopPackageInfocheck(buyer, orderSn, afterSalesId, waybillId);
|
||||
var type = 4;
|
||||
if (chkRst.Contains("\"interactType\":0"))
|
||||
type = 2;
|
||||
var result = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId, "韵达快递", "121", type.ToString());
|
||||
if (!result.Contains("\"result\":\"ok\""))
|
||||
{
|
||||
type = type == 4 ? 2 : 4;
|
||||
result = AddReturnPddShopPackageInfo(buyer, orderSn, afterSalesId, waybillId, "韵达快递", "121", type.ToString());
|
||||
}
|
||||
|
||||
// if (result.Contains("\"result\":\"ok\""))
|
||||
// {
|
||||
// order.out_after_sale_status = "商家处理中";
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// order.out_after_sale_status = "待用户发货 自动退货失败";
|
||||
// }
|
||||
// var pddBuyerOrderLiteInfo = new PddBuyerOrderLiteInfo()
|
||||
// {
|
||||
// ShopOrderIdStr = orderItem.order_id,
|
||||
// order_sn = orderSn,
|
||||
// };
|
||||
// // 更新中转仓退货信息
|
||||
// var e57Rst = PDDBuyerOrderReadCtrl.SendAfterSaleE57NeedManual(pddBuyerOrderLiteInfo, order.out_after_sale_status);
|
||||
// if (e57Rst.Contains("<code>0</code>") || e57Rst.Contains("<code>200</code>"))
|
||||
// {
|
||||
// BaseMsgWindow.ShowAnimateMessage("买手退款信息更新成功", "Msg", 3);
|
||||
// Thread.Sleep(Randomx.GetId(10000, 12001));
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// var msg = BaseRegex.GetStringXml(ref e57Rst, "msg");
|
||||
// BaseMsgWindow.ShowAnimateMessage("买手退款信息更新失败,服务端返回 " + msg, "Error", 5);
|
||||
// }
|
||||
//}
|
||||
if (result.Contains("\"result\":\"ok\""))
|
||||
{
|
||||
order.out_after_sale_status = "商家处理中";
|
||||
}
|
||||
else
|
||||
{
|
||||
order.out_after_sale_status = "待用户发货 自动退货失败";
|
||||
}
|
||||
var pddBuyerOrderLiteInfo = new PddBuyerOrderLiteInfo()
|
||||
{
|
||||
ShopOrderIdStr = orderItem.order_id,
|
||||
order_sn = orderSn,
|
||||
};
|
||||
// 更新中转仓退货信息
|
||||
var e57Rst = PDDBuyerOrderReadCtrl.SendAfterSaleE57NeedManual(pddBuyerOrderLiteInfo, order.out_after_sale_status);
|
||||
if (e57Rst.Contains("<code>0</code>") || e57Rst.Contains("<code>200</code>"))
|
||||
{
|
||||
BaseMsgWindow.ShowAnimateMessage("买手退款信息更新成功", "Msg", 3);
|
||||
Thread.Sleep(Randomx.GetId(10000, 12001));
|
||||
}
|
||||
else
|
||||
{
|
||||
var msg = BaseRegex.GetStringXml(ref e57Rst, "msg");
|
||||
BaseMsgWindow.ShowAnimateMessage("买手退款信息更新失败,服务端返回 " + msg, "Error", 5);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1107,77 +1107,103 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待采购")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "待采购")).ToList();
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "待采购(" + userOrderLst.Where(r => r.IsWaitBuy).Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
var lstCount = userOrderLst.Where(r => r.IsWaitBuy).Count();
|
||||
var filteLstTmpCount = userOrderLst.Where(o => !GetOrderIsFilter(o, "待采购")).Count();
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "待采购(" + lstCount + "|" + filteLstTmpCount + ")"; }));
|
||||
}
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待发货")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "待发货")).ToList();
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "待发货(" + userOrderLst.Where(r => r.IsWaitSend).Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
var lstCount = userOrderLst.Where(r => r.IsWaitSend).Count();
|
||||
var filteLstTmpCount = userOrderLst.Where(o => !GetOrderIsFilter(o, "待发货")).Count();
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "待发货(" + lstCount + "|" + filteLstTmpCount + ")"; }));
|
||||
}
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("待收货")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "待收货")).ToList();
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "待收货(" + userOrderLst.Where(r => r.IsWaitReceive).Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
var lstCount = userOrderLst.Where(r => r.IsWaitReceive).Count();
|
||||
var filteLstTmpCount = userOrderLst.Where(o => !GetOrderIsFilter(o, "待收货")).Count();
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "待收货(" + lstCount + "|" + filteLstTmpCount + ")"; }));
|
||||
}
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("售后完成单")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "售后完成单")).ToList();
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "售后完成单"));
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "售后完成单(" + userOrderLst.Where(r => r.IsRefund).Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
}
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("需处理售后单")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "需处理售后单")).ToList();
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "需处理售后单"));
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "需处理售后单(" + userOrderLst.Where(r => r.IsEmergencyManualReturnOrder).Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
}
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("退货仓自动售后单")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "退货仓自动售后单")).ToList();
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "退货仓自动售后单"));
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "退货仓自动售后单(" + userOrderLst.Where(r => r.IsEmergencyDistribReturnOrder).Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
}
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("异常单")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "异常单")).ToList();
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "异常单"));
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "异常单(" + userOrderLst.Where(r => r.isAbnormal).Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
}
|
||||
Dispatcher.Invoke(new Action(() => { tabItem = tabItems.FirstOrDefault(t => t.Header.ParseToString().StartsWith("全部订单")); }));
|
||||
if (tabItem != null)
|
||||
{
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "全部订单")).ToList();
|
||||
var filteLstTmp = userOrderLst.Where(o => !GetOrderIsFilter(o, "全部订单"));
|
||||
Dispatcher.Invoke(new Action(() => { tabItem.Header = "全部订单(" + userOrderLst.Count() + "|" + filteLstTmp.Count() + ")"; }));
|
||||
}
|
||||
//txtMsg.Text = "当前条件共计 " + GlobalConfig.lstFilterOrder.Count() + " 条订单记录";
|
||||
}
|
||||
|
||||
CancellationTokenSource TokenSource = null;
|
||||
public void FilterOrders()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (this.lbxOrder == null)
|
||||
return;
|
||||
if (TokenSource != null)
|
||||
TokenSource.Cancel();
|
||||
TokenSource = new CancellationTokenSource();
|
||||
|
||||
Dispatcher.Invoke(new Action(() =>
|
||||
Task.Run(() =>
|
||||
{
|
||||
var token = TokenSource.Token;
|
||||
try
|
||||
{
|
||||
if (GlobalConfig.OrderTabHeaderStr.StartsWith("需处理售后单") || GlobalConfig.OrderTabHeaderStr.StartsWith("退货仓自动售后单"))
|
||||
GlobalConfig.lstFilterOrder = new ObservableCollectionThreadSafe<oms_wei_order_info>(GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o)).OrderByDescending(o => o.RefundDatetime));
|
||||
else if (GlobalConfig.OrderTabHeaderStr.StartsWith("异常单"))
|
||||
GlobalConfig.lstFilterOrder = new ObservableCollectionThreadSafe<oms_wei_order_info>(GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o)).OrderByDescending(o => o.update_time));
|
||||
else
|
||||
GlobalConfig.lstFilterOrder = new ObservableCollectionThreadSafe<oms_wei_order_info>(GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o)).OrderByDescending(o => o.create_time));
|
||||
this.lbxOrder.ItemsSource = GlobalConfig.lstFilterOrder;
|
||||
if (this.lbxOrder == null)
|
||||
return;
|
||||
|
||||
disPlayOrderTabOrderCount();
|
||||
}));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
}
|
||||
var orderLstTmp = new List<oms_wei_order_info>();
|
||||
if (GlobalConfig.OrderTabHeaderStr.StartsWith("需处理售后单") || GlobalConfig.OrderTabHeaderStr.StartsWith("退货仓自动售后单"))
|
||||
orderLstTmp = GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o)).OrderByDescending(o => o.RefundDatetime).ToList();
|
||||
else if (GlobalConfig.OrderTabHeaderStr.StartsWith("异常单"))
|
||||
orderLstTmp = GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o)).OrderByDescending(o => o.update_time).ToList();
|
||||
else
|
||||
orderLstTmp = GlobalConfig.lstOrder.Where(o => !GetOrderIsFilter(o)).OrderByDescending(o => o.create_time).ToList();
|
||||
|
||||
Task.Run(() => { disPlayOrderTabOrderCount(); });
|
||||
Dispatcher.Invoke(new Action(() =>
|
||||
{
|
||||
//GlobalConfig.lstFilterOrder = new ObservableCollectionThreadSafe<oms_wei_order_info>(orderLstTmp);
|
||||
//this.lbxOrder.ItemsSource = GlobalConfig.lstFilterOrder;
|
||||
GlobalConfig.lstFilterOrder.Clear();
|
||||
}));
|
||||
foreach (var order in orderLstTmp)
|
||||
{
|
||||
if (token.IsCancellationRequested)
|
||||
break;
|
||||
|
||||
Dispatcher.Invoke(new Action(() =>
|
||||
{
|
||||
if (!GlobalConfig.lstFilterOrder.Any(o => o.order_id == order.order_id))
|
||||
GlobalConfig.lstFilterOrder.Add(order);
|
||||
}));
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void FilterOneOrder(string orderId, bool updateTabCount = false)
|
||||
@@ -1217,10 +1243,10 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
|
||||
if (updateTabCount)
|
||||
{
|
||||
Dispatcher.Invoke(new Action(() =>
|
||||
{
|
||||
disPlayOrderTabOrderCount();
|
||||
}));
|
||||
//Dispatcher.Invoke(new Action(() =>
|
||||
//{
|
||||
//}));
|
||||
disPlayOrderTabOrderCount();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1362,16 +1388,16 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
}));
|
||||
if (filterTimeRst)
|
||||
return filterTimeRst;
|
||||
|
||||
var filterHeadStrRst = false;
|
||||
Dispatcher.Invoke(new Action(() =>
|
||||
{
|
||||
filterHeadStrRst = FilterTabPage(order, filterHeadStr);
|
||||
}));
|
||||
if (filterHeadStrRst)
|
||||
return filterHeadStrRst;
|
||||
}
|
||||
|
||||
var filterHeadStrRst = false;
|
||||
Dispatcher.Invoke(new Action(() =>
|
||||
{
|
||||
filterHeadStrRst = FilterTabPage(order, filterHeadStr);
|
||||
}));
|
||||
if (filterHeadStrRst)
|
||||
return filterHeadStrRst;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -110,11 +110,14 @@ namespace _29WxOrderWpf.Windows.OrderWindows
|
||||
return;
|
||||
}
|
||||
|
||||
var workOrder = AddWorkOrder();
|
||||
if (!workOrder.Contains("\"success\":true"))
|
||||
if (string.IsNullOrEmpty(lblWorkOrderMsg.Content.ParseToString()))
|
||||
{
|
||||
BaseMsgWindow.ShowError("中转拦截包裹添加失败," + BaseRegex.GetStringJson(ref workOrder, "message"), "", this);
|
||||
return;
|
||||
var workOrder = AddWorkOrder();
|
||||
if (!workOrder.Contains("\"success\":true"))
|
||||
{
|
||||
BaseMsgWindow.ShowError("中转拦截包裹添加失败," + BaseRegex.GetStringJson(ref workOrder, "message"), "", this);
|
||||
return;
|
||||
}
|
||||
}
|
||||
//{"success":true,"replayed":true,"operation":"replayed","ticket":{"id":"1d268a38-7f60-4295-9345-a8f21298181c","ticketNo":"WO-20260820102516-AE62D8F2","issueType":"拦截退回云仓-出库后","status":"pending_approval","queue":"pending"},"creatorBinding":{"bound":true,"clientUserId":"user_1784451034258_a6da3c","username":"18305598906"},"targetOrder":{"appId":"wx5cfcfda1fae03689","wechatOrderNo":"3737793636785868032","purchaseOrderNo":"260716-496899202560980","verified":true},"requestId":"2bbd8e98-0a95-4162-9fc1-b377644209ed"}
|
||||
|
||||
@@ -168,7 +171,7 @@ namespace _29WxOrderWpf.Windows.OrderWindows
|
||||
{
|
||||
//<AjaxResult><msg>创建退货包裹成功</msg><code>0</code></AjaxResult>
|
||||
MainWindow.Instance.orderListCtrl.GetOrder(OrderItem.order_id);
|
||||
MainWindow.Instance.orderListCtrl.FilterOrders();
|
||||
Task.Run(() => { MainWindow.Instance.orderListCtrl.FilterOrders(); });
|
||||
BaseMsgWindow.ShowInfo("添加退货包裹成功", "", this);
|
||||
this.Close();
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace AllBase
|
||||
/// 版本ID
|
||||
/// </summary>
|
||||
|
||||
public static int VersionCount = 258;
|
||||
public static int VersionCount = 259;
|
||||
|
||||
public static string ServerUrl { get; set; } = "http://1.13.195.131:9000";
|
||||
public static string DebugUrl { get; set; } = "http://localhost:9000";
|
||||
|
||||
@@ -42,138 +42,74 @@ namespace AllBase.Model.DBModel
|
||||
|
||||
public ObservableCollection<oms_wei_refund_info> refundItems { get; set; } = new ObservableCollection<oms_wei_refund_info>();
|
||||
|
||||
public bool IsWaitBuyOrIsWaitSend
|
||||
/// <summary>
|
||||
/// 待采购
|
||||
/// </summary>
|
||||
public bool IsWaitBuy
|
||||
{
|
||||
get { return IsWaitBuy || IsWaitSend; }
|
||||
set { }
|
||||
get { return this.GetValue(x => x.IsWaitBuy); }
|
||||
set { this.SetValue(x => x.IsWaitBuy, value); }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 待采购
|
||||
/// </summary>
|
||||
public bool IsWaitBuy
|
||||
/// <summary>
|
||||
/// 待发货
|
||||
/// </summary>
|
||||
public bool IsWaitSend
|
||||
{
|
||||
get
|
||||
{
|
||||
if (status != 20 && status != 21)
|
||||
return false;
|
||||
if (refundItems?.Any(r => r.IsRefund) == true)
|
||||
return false;
|
||||
// 子表有售后信息(可能更新不及时)
|
||||
if (orderItems?.Any(oi => oi.refund_status > 1) == true)
|
||||
return false;
|
||||
// 中转仓有拍单信息
|
||||
if (orderItems.All(oi => oi.ItemTransitOrder != null))
|
||||
return false;
|
||||
// 采购状态为已采购
|
||||
if (purchase_status != 0)
|
||||
return false;
|
||||
// 礼物单已发货
|
||||
if (gift_order_status == 1 || gift_order_status == 2)
|
||||
return false;
|
||||
// 直发订单未退款
|
||||
// out_after_sale_status 新拍订单也不会变,内存里直接根据退款单修改掉
|
||||
if (!string.IsNullOrEmpty(out_order_no) && out_after_sale_status != "退款成功")
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
set { }
|
||||
get { return this.GetValue(x => x.IsWaitSend); }
|
||||
set { this.SetValue(x => x.IsWaitSend, value); }
|
||||
}
|
||||
/// <summary>
|
||||
/// 待发货
|
||||
/// </summary>
|
||||
public bool IsWaitSend
|
||||
/// <summary>
|
||||
/// 待收货
|
||||
/// </summary>
|
||||
public bool IsWaitReceive
|
||||
{
|
||||
//get { return (purchase_status == 1 || !string.IsNullOrEmpty(out_order_no)) && (status == 20 || status == 21); }
|
||||
get
|
||||
{
|
||||
if (order_id == "3738070866253717760")
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
if (status != 20 && status != 21)
|
||||
return false;
|
||||
if (refundItems?.Any(r => r.IsRefund) == true)
|
||||
return false;
|
||||
if (orderItems?.Any(oi => oi.refund_status > 1) == true)
|
||||
return false;
|
||||
// 礼物单已发货
|
||||
if (gift_order_status == 1 || gift_order_status == 2)
|
||||
return false;
|
||||
// 店铺未发货,外采已采购
|
||||
// out_after_sale_status 新拍订单也不会变,内存里直接根据退款单修改掉
|
||||
if (!orderItems.All(oi => oi.ItemTransitOrder != null) && purchase_status != 1 && (string.IsNullOrEmpty(out_order_no) || out_after_sale_status == "退款成功"))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
set { }
|
||||
get { return this.GetValue(x => x.IsWaitReceive); }
|
||||
set { this.SetValue(x => x.IsWaitReceive, value); }
|
||||
}
|
||||
/// <summary>
|
||||
/// 待收货
|
||||
/// </summary>
|
||||
public bool IsWaitReceive
|
||||
{
|
||||
get
|
||||
{
|
||||
if (refundItems?.Any(r => r.IsRefund) == true)
|
||||
return false;
|
||||
if (orderItems?.Any(oi => oi.refund_status > 1) == true)
|
||||
return false;
|
||||
if (!(status == 30 || status == 100 || gift_order_status == 1 || gift_order_status == 2))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
set { }
|
||||
}
|
||||
/// <summary>
|
||||
/// 售后订单(不含售后关闭) -- 改为售后完成单 260726
|
||||
/// </summary>
|
||||
public bool IsRefund
|
||||
{
|
||||
//get { return refundItems?.Count > 0 && refundItems.Any(r => r.status != "USER_CANCELD"); }
|
||||
get
|
||||
{
|
||||
/// <summary>
|
||||
/// 售后订单(不含售后关闭) -- 改为售后完成单 260726
|
||||
/// </summary>
|
||||
public bool IsRefund
|
||||
{
|
||||
get
|
||||
{
|
||||
// return refundItems?.Count > 0 && refundItems.Any(r => r.status != "USER_CANCELD");
|
||||
if (!orderItems.Any(oi => oi.refund_status > 1))
|
||||
return false;
|
||||
if (IsEmergency)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
set { }
|
||||
}
|
||||
public bool IsRefundWithCancel
|
||||
{
|
||||
get { return refundItems?.Count > 0; }
|
||||
set { }
|
||||
}
|
||||
/// <summary>
|
||||
/// 紧急订单
|
||||
/// </summary>
|
||||
public bool IsEmergency
|
||||
{
|
||||
get
|
||||
{
|
||||
if (this.order_id == "3737858759084367872")
|
||||
{
|
||||
}
|
||||
// 微信订单退货中
|
||||
if (orderItems.Any(oi => oi.refund_status == 2 || oi.refund_status == 3))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
// 微信订单退款中或退款成功,但是买手订单未完成退款
|
||||
if (orderItems.Any(oi => oi.refund_status > 1 && oi.ItemTransitOrders.Count > 0 && oi.ItemTransitOrders.Any(t => !t.refund_status.Contains("退款成功"))))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
if (orderItems.Any(oi => oi.refund_status > 1) && !out_order_no.IsNullOrEmpty() && this.out_after_sale_status != "退款成功")
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
set { }
|
||||
return false;
|
||||
if (IsEmergency)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
set { }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 紧急订单
|
||||
/// </summary>
|
||||
public bool IsEmergency
|
||||
{
|
||||
get
|
||||
{
|
||||
if (this.order_id == "3737858759084367872")
|
||||
{
|
||||
}
|
||||
// 微信订单退货中
|
||||
if (orderItems.Any(oi => oi.refund_status == 2 || oi.refund_status == 3))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
// 微信订单退款中或退款成功,但是买手订单未完成退款
|
||||
if (orderItems.Any(oi => oi.refund_status > 1 && oi.ItemTransitOrders.Count > 0 && oi.ItemTransitOrders.Any(t => !t.refund_status.Contains("退款成功"))))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
if (orderItems.Any(oi => oi.refund_status > 1) && !out_order_no.IsNullOrEmpty() && this.out_after_sale_status != "退款成功")
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
set { }
|
||||
}
|
||||
|
||||
public bool IsEmergencyDistribReturnOrder
|
||||
@@ -206,29 +142,8 @@ namespace AllBase.Model.DBModel
|
||||
/// </summary>
|
||||
public bool isAbnormal
|
||||
{
|
||||
get
|
||||
{
|
||||
if (order_id == "3738000949931831296")
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
if (orderItems.Any(oi => !(oi.OrderItemExt?.abnormal_text).IsNullOrEmpty()))
|
||||
return true;
|
||||
|
||||
// 订单无售后或者售后关闭,有未作废的仓库单且仓库单买手信息为退款成功
|
||||
if (orderItems.Any(oi => oi.refund_status <= 1 && oi.ItemTransitOrder != null && oi.ItemTransitOrder.refund_status == "买手退款成功"))
|
||||
return true;
|
||||
|
||||
// 取号异常或无法调用发货也放在异常单
|
||||
// 订单不满足鸿浩仓库发货条件,无法调用鸿浩仓库接口发货
|
||||
else if (orderItems.Any(oi => ((oi.ItemTransitOrderWithVoid?.raw_message).ParseToString().Contains("取号异常") ||
|
||||
(oi.ItemTransitOrderWithVoid?.raw_message).ParseToString().Contains("无法调用")) &&
|
||||
oi.ItemTransitOrderWithVoid?.transfer_warehouse_status != 1))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
set { }
|
||||
get { return this.GetValue(x => x.IsWaitReceive); }
|
||||
set { this.SetValue(x => x.IsWaitReceive, value); }
|
||||
}
|
||||
|
||||
public string orderStatusStr
|
||||
@@ -742,22 +657,104 @@ namespace AllBase.Model.DBModel
|
||||
Shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ErpShopId == shop_id.ParseToString());
|
||||
|
||||
if (this.orderItems.Any(oi => oi.OrderItemExt?.buy_type == "直发") && this.orderItems.Any(oi => oi.ItemTransitOrderWithVoid != null))
|
||||
{
|
||||
OrderBuyType = "云改直";
|
||||
OrderBuyTypeColor = GlobalConfig.PurpleBrush190;
|
||||
}
|
||||
else if (this.orderItems.Any(oi => oi.OrderItemExt?.buy_type == "直发"))
|
||||
{
|
||||
OrderBuyType = "直发";
|
||||
OrderBuyTypeColor = GlobalConfig.RedTextBrush205;
|
||||
}
|
||||
else if (this.orderItems.Any(oi => oi.ItemTransitOrderWithVoid != null))
|
||||
{
|
||||
OrderBuyType = "云仓";
|
||||
OrderBuyTypeColor = GlobalConfig.GreenTextBrush;
|
||||
}
|
||||
else
|
||||
OrderBuyType = "";
|
||||
{
|
||||
OrderBuyType = "云改直";
|
||||
OrderBuyTypeColor = GlobalConfig.PurpleBrush190;
|
||||
}
|
||||
else if (this.orderItems.Any(oi => oi.OrderItemExt?.buy_type == "直发"))
|
||||
{
|
||||
OrderBuyType = "直发";
|
||||
OrderBuyTypeColor = GlobalConfig.RedTextBrush205;
|
||||
}
|
||||
else if (this.orderItems.Any(oi => oi.ItemTransitOrderWithVoid != null))
|
||||
{
|
||||
OrderBuyType = "云仓";
|
||||
OrderBuyTypeColor = GlobalConfig.GreenTextBrush;
|
||||
}
|
||||
else
|
||||
OrderBuyType = "";
|
||||
|
||||
IsWaitBuy = GetIsWaitBuy();
|
||||
IsWaitSend = GetIsWaitSend();
|
||||
IsWaitReceive = GetIsWaitReceive();
|
||||
isAbnormal = GetIsAbnormal();
|
||||
}
|
||||
}
|
||||
|
||||
private bool GetIsWaitBuy()
|
||||
{
|
||||
if (status != 20 && status != 21)
|
||||
return false;
|
||||
if (refundItems?.Any(r => r.IsRefund) == true)
|
||||
return false;
|
||||
// 子表有售后信息(可能更新不及时)
|
||||
if (orderItems?.Any(oi => oi.refund_status > 1) == true)
|
||||
return false;
|
||||
// 中转仓有拍单信息
|
||||
if (orderItems.All(oi => oi.ItemTransitOrder != null))
|
||||
return false;
|
||||
// 采购状态为已采购
|
||||
if (purchase_status != 0)
|
||||
return false;
|
||||
// 礼物单已发货
|
||||
if (gift_order_status == 1 || gift_order_status == 2)
|
||||
return false;
|
||||
// 直发订单未退款
|
||||
// out_after_sale_status 新拍订单也不会变,内存里直接根据退款单修改掉
|
||||
if (!string.IsNullOrEmpty(out_order_no) && out_after_sale_status != "退款成功")
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
private bool GetIsWaitSend()
|
||||
{
|
||||
if (status != 20 && status != 21)
|
||||
return false;
|
||||
if (refundItems?.Any(r => r.IsRefund) == true)
|
||||
return false;
|
||||
if (orderItems?.Any(oi => oi.refund_status > 1) == true)
|
||||
return false;
|
||||
// 礼物单已发货
|
||||
if (gift_order_status == 1 || gift_order_status == 2)
|
||||
return false;
|
||||
// 店铺未发货,外采已采购
|
||||
// out_after_sale_status 新拍订单也不会变,内存里直接根据退款单修改掉
|
||||
if (!orderItems.All(oi => oi.ItemTransitOrder != null) && purchase_status != 1 && (string.IsNullOrEmpty(out_order_no) || out_after_sale_status == "退款成功"))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
private bool GetIsWaitReceive()
|
||||
{
|
||||
if (refundItems?.Any(r => r.IsRefund) == true)
|
||||
return false;
|
||||
if (orderItems?.Any(oi => oi.refund_status > 1) == true)
|
||||
return false;
|
||||
if (!(status == 30 || status == 100 || gift_order_status == 1 || gift_order_status == 2))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
private bool GetIsAbnormal()
|
||||
{
|
||||
if (order_id == "3738000949931831296")
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
if (orderItems.Any(oi => !(oi.OrderItemExt?.abnormal_text).IsNullOrEmpty()))
|
||||
return true;
|
||||
|
||||
// 订单无售后或者售后关闭,有未作废的仓库单且仓库单买手信息为退款成功
|
||||
if (orderItems.Any(oi => oi.refund_status <= 1 && oi.ItemTransitOrder != null && oi.ItemTransitOrder.refund_status == "买手退款成功"))
|
||||
return true;
|
||||
|
||||
// 取号异常或无法调用发货也放在异常单
|
||||
// 订单不满足鸿浩仓库发货条件,无法调用鸿浩仓库接口发货
|
||||
else if (orderItems.Any(oi => ((oi.ItemTransitOrderWithVoid?.raw_message).ParseToString().Contains("取号异常") ||
|
||||
(oi.ItemTransitOrderWithVoid?.raw_message).ParseToString().Contains("无法调用")) &&
|
||||
oi.ItemTransitOrderWithVoid?.transfer_warehouse_status != 1))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -261,7 +261,7 @@ namespace AllBase.Model.DBModel
|
||||
else
|
||||
TransitOrderWaybillFromWareHouseStr = "仓库物流:" + ItemTransitOrder.express_2_company + "-" + ItemTransitOrder.express_2_waybill;
|
||||
|
||||
if (order_id == "3738552208766960384")
|
||||
if (order_id == "3738461463336072960")
|
||||
{
|
||||
|
||||
}
|
||||
@@ -279,7 +279,7 @@ namespace AllBase.Model.DBModel
|
||||
!(this.ItemRefund?.return_waybill_id).IsNullOrEmpty() || !(this.ItemRefund?.return_detail).IsNullOrEmpty() ||
|
||||
(!this.ItemOrder.IsEmergency && !this.ItemOrder.isAbnormal && !this.ItemOrder.IsRefund) ||
|
||||
(this.ItemTransitOrderWithVoid.warehouse_status != 0 && this.ItemTransitOrderWithVoid.warehouse_status != 1) ||
|
||||
this.ItemTransitOrderWithVoid.platform == "XDYYWC" || // 义务仓不能申请拒收
|
||||
/*this.ItemTransitOrderWithVoid.platform == "XDYYWC" ||*/ // 义务仓不能申请拒收
|
||||
string.IsNullOrEmpty(PddBuyerOrder?.order_sn))
|
||||
{
|
||||
if (AddEditTransitWarehouseRejectStr == "申请")
|
||||
@@ -628,7 +628,7 @@ namespace AllBase.Model.DBModel
|
||||
{
|
||||
get
|
||||
{
|
||||
if (order_id == "3737761985909113600")
|
||||
if (order_id == "3738453024420550400")
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user