优化订单处理

This commit is contained in:
wule committed 2026-11-04 10:05:52 +08:00
1 parent 85259d8335
commit 8f7e190974
10 files changed
+271 -125

No files matched your search

@@ -474,13 +474,15 @@ namespace AllBase.Model.DBModel
// 仓库物流售后拦截包裹按钮上的文字,仓库作废单不存在仓库物流,所以此处必须是有效的仓库单(含作废失败)
AddEditTransitWarehouseAfterSaleStr = "添加";
if (order_id == "3739241588056569856")
if (order_id == "3740217344404934656")
{
}
if (this.ItemTransitOrderAfterSale != null)
AddEditTransitWarehouseAfterSaleStr = "已添加";
if (this.ItemTransitOrderAfterSale != null && (ItemTransitOrderWithVoid.intercept_return_status == 1 || !string.IsNullOrEmpty(ItemTransitOrderAfterSale.downstream_waybill)))
if (this.ItemTransitOrderAfterSale != null && this.ItemTransitOrderAfterSale.order_void_status == 1)
AddEditTransitWarehouseAfterSaleStr = "拦截作废";
else if (this.ItemTransitOrderAfterSale != null && (ItemTransitOrderWithVoid.intercept_return_status == 1 || !string.IsNullOrEmpty(ItemTransitOrderAfterSale.downstream_waybill)))
AddEditTransitWarehouseAfterSaleStr = "拦截成功";
else if (this.ItemTransitOrderAfterSale != null && ItemTransitOrderWithVoid.intercept_return_status == 2)
AddEditTransitWarehouseAfterSaleStr = "拦截失败";
@@ -1735,7 +1737,9 @@ namespace AllBase.Model.DBModel
var Shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ErpShopId == order_item.shop_id.ParseToString());
// 关联商品sku
if (GlobalConfig.CurrentBuyPlatform == "pdd")
if (this.refund_status > 1)
MapSkusBtnVisibility = Visibility.Collapsed;
else if (GlobalConfig.CurrentBuyPlatform == "pdd")
{
if (PddBuyMapSkus != null && PddBuyMapSkus.Count > 0)
MapSkusBtnVisibility = Visibility.Visible;
@@ -4,6 +4,7 @@ using NaiBa.Util.Extension;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.IO.Ports;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -61,10 +62,10 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject
{
var transitDetail = new oms_wei_order_item_transit_detail_info()
{
VoidPackageBtnVisibility = Visibility.Visible, /* 作废发货包裹 */
RejectPackageBtnVisibility = Visibility.Visible, /* 拒收发货包裹 */
//ReturnPackageBtnVisibility = Visibility.Visible,
//ExtraPackagesBtnVisibility = Visibility.Visible,
VoidPackageBtnVisibility = Visibility.Visible, /* 作废发货包裹按钮 */
RejectPackageBtnVisibility = Visibility.Visible, /* 拒收发货包裹按钮 */
ReturnPackageBtnVisibility = Visibility.Visible, /* 拦截退货包裹按钮 */
//ExtraPackagesBtnVisibility = Visibility.Visible, /* 额外发货包裹按钮 */
oms_wei_order_item_info = OrderItem,
oms_wei_external_procurement_log_info = transitOrder,
@@ -145,12 +146,16 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject
transitDetail.TransitRejectStatus = "拒收成功";
var wayBillId = transitOrder.express_2_waybill ?? transitOrder.express_1_waybill;
var transitAfterSaleOrder = OrderItem.ItemTransitOrderAfterSales.FirstOrDefault(a => a.order_code == transitOrder.order_code && a.refund_waybill == wayBillId && a.order_void_status != 1 && a.pack_type == 1);
var transitAfterSaleOrder = /* 取未作废的退货包裹,如果取不到,就取第一个退货包裹 */
OrderItem.ItemTransitOrderAfterSales.FirstOrDefault(a => a.order_code == transitOrder.order_code && a.refund_waybill == wayBillId && a.order_void_status != 1 && a.pack_type == 1) ??
OrderItem.ItemTransitOrderAfterSales.FirstOrDefault(a => a.order_code == transitOrder.order_code && a.refund_waybill == wayBillId && a.pack_type == 1);
if (transitAfterSaleOrder != null)
transitDetail.TransitReturnStatus = "已申请拦截";
if (transitOrder.intercept_return_status == 1 || !string.IsNullOrEmpty(transitAfterSaleOrder?.downstream_waybill))
if (transitAfterSaleOrder != null && transitAfterSaleOrder.order_void_status == 1)
transitDetail.TransitReturnStatus = "拦截作废";
else if (transitAfterSaleOrder != null && (transitOrder.intercept_return_status == 1 || !string.IsNullOrEmpty(transitAfterSaleOrder?.downstream_waybill)))
transitDetail.TransitReturnStatus = "拦截成功";
else if (transitOrder.intercept_return_status == 2)
else if (transitAfterSaleOrder != null && transitOrder.intercept_return_status == 2)
transitDetail.TransitReturnStatus = "拦截失败";
transitDetail.TransitDetailRefundStatusStr = GetTransitBuyerRefundStatusStr(OrderItem, transitOrder);
@@ -290,7 +295,7 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject
var transitDetail = new oms_wei_order_item_transit_detail_info()
{
oms_wei_order_item_info = OrderItem,
oms_wei_transfer_extra_package = transitExtraOrder,
oms_wei_transfer_extra_package = transitExtraOrder, // 额外包裹
ShopName = OrderItem.ItemOrder.shop_name,
@@ -368,14 +373,18 @@ public class oms_wei_order_item_transit_info : PropertyNotifyObject
transitDetail.TransitRejectStatus = "拒收成功";
// 额外包裹拦截状态暂时没有,待补充
//var wayBillId = transitOrder.express_2_waybill ?? transitOrder.express_1_waybill;
//var transitAfterSaleOrder = OrderItem.ItemTransitOrderAfterSales.FirstOrDefault(a => a.order_code == transitOrder.order_code && a.refund_waybill == wayBillId);
//if (transitAfterSaleOrder != null)
// transitDetail.TransitReturnStatus = "已申请拦截";
//if (transitOrder.intercept_return_status == 1 || !string.IsNullOrEmpty(transitAfterSaleOrder?.downstream_waybill))
// transitDetail.TransitReturnStatus = "拦截成功";
//else if (transitOrder.intercept_return_status == 2)
// transitDetail.TransitReturnStatus = "拦截失败";
var wayBillId = transitExtraOrder.logistics_express_code ?? transitExtraOrder.real_logistics_express_code;
var transitAfterSaleOrder = /* 取未作废的退货包裹,如果取不到,就取第一个退货包裹 */
OrderItem.ItemTransitOrderAfterSales.FirstOrDefault(a => a.order_code == transitExtraOrder.order_code && a.refund_waybill == wayBillId && a.order_void_status != 1 && a.pack_type == 2) ??
OrderItem.ItemTransitOrderAfterSales.FirstOrDefault(a => a.order_code == transitExtraOrder.order_code && a.refund_waybill == wayBillId && a.pack_type == 2);
if (transitAfterSaleOrder != null)
transitDetail.TransitReturnStatus = "已申请拦截";
if (transitAfterSaleOrder != null && transitAfterSaleOrder.order_void_status == 1)
transitDetail.TransitReturnStatus = "拦截作废";
if (transitAfterSaleOrder != null && transitExtraOrder.intercept_return_status == 1 || !string.IsNullOrEmpty(transitAfterSaleOrder?.downstream_waybill))
transitDetail.TransitReturnStatus = "拦截成功";
else if (transitAfterSaleOrder != null && transitExtraOrder.intercept_return_status == 2)
transitDetail.TransitReturnStatus = "拦截失败";
detailList.Add(transitDetail);
}
@@ -417,6 +426,7 @@ public class oms_wei_order_item_transit_detail_info : PropertyNotifyObject
{
public oms_wei_order_item_transit_detail_info()
{
Opacity = 1m;
VoidPackageBtnVisibility = Visibility.Collapsed;
RejectPackageBtnVisibility = Visibility.Collapsed;
ReturnPackageBtnVisibility = Visibility.Collapsed;
@@ -428,6 +438,12 @@ public class oms_wei_order_item_transit_detail_info : PropertyNotifyObject
public oms_wei_external_procurement_after_sale_info oms_wei_external_procurement_after_sale_info { get; set; }
public oms_wei_transfer_extra_package oms_wei_transfer_extra_package { get; set; }
public decimal Opacity
{
get { return this.GetValue(x => x.Opacity); }
set { this.SetValue(x => x.Opacity, value); }
}
public string ShopName
{
get { return this.GetValue(x => x.ShopName); }
@@ -562,7 +578,7 @@ public class oms_wei_order_item_transit_detail_info : PropertyNotifyObject
public string TransitVoidStatus
{
get { return this.GetValue(x => x.TransitVoidStatus); }
set { this.SetValue(x => x.TransitVoidStatus, value); }
set { this.SetValue(x => x.TransitVoidStatus, value); if (value == "已作废") this.Opacity = 0.6m; }
}
/// <summary> 拒收状态 </summary>
public string TransitRejectStatus
@@ -9,25 +9,58 @@ namespace AllBase.Model.DBModel;
public class oms_wei_transfer_extra_package : PropertyNotifyObject
{
public long id { get; set; } // 主键ID
public string batchId { get; set; } // 新订单号
public string order_no { get; set; } // 平台订单号
public string buyer_account { get; set; } // '买家账号',
public int? out_amount { get; set; } // '外部金额(分)',
public string purchaser_note { get; set; } // '采购人备注'
public string logistics_code { get; set; } // '快递公司',
public string logistics_express_code { get; set; } // '快递单号',
public string real_logistics_code // '出库快递公司',
/// <summary>
/// 主键ID
/// </summary>
public long id { get; set; }
/// <summary>
/// 新订单号
/// </summary>
public string batchId { get; set; }
/// <summary>
/// 平台订单号
/// </summary>
public string order_no { get; set; }
/// <summary>
/// 买家账号
/// </summary>
public string buyer_account { get; set; }
/// <summary>
/// 外部金额(分)
/// </summary>
public int? out_amount { get; set; }
/// <summary>
/// 采购人备注
/// </summary>
public string purchaser_note { get; set; }
/// <summary>
/// 快递公司
/// </summary>
public string logistics_code { get; set; }
/// <summary>
/// 快递单号
/// </summary>
public string logistics_express_code { get; set; }
/// <summary>
/// 出库快递公司
/// </summary>
public string real_logistics_code
{
get { return this.GetValue(x => x.real_logistics_code); }
set { this.SetValue(x => x.real_logistics_code, value); }
}
public string real_logistics_express_code // '出库单号',
}
/// <summary>
/// 出库单号
/// </summary>
public string real_logistics_express_code
{
get { return this.GetValue(x => x.real_logistics_express_code); }
set { this.SetValue(x => x.real_logistics_express_code, value); }
}
public string refund_status { get; set; } // '买手退款状态',
}
/// <summary>
/// 买手退款状态
/// </summary>
public string refund_status { get; set; }
public DateTime? pickup_time { get; set; } // '取号时间',
public int? transfer_warehouse_status { get; set; } // '中转仓状态:0 未使用,1 已创建,2 创建失败',
public string raw_message { get; set; } // '原始消息/请求体',
@@ -56,4 +89,40 @@ public class oms_wei_transfer_extra_package : PropertyNotifyObject
/// 货架写入时间
/// </summary>
public DateTime? location_write_time { get; set; }
/// <summary>
/// 外采单号
/// </summary>
public string out_order_no { get; set; }
/// <summary>
/// 商品skuId
/// </summary>
public string out_sku_id { get; set; }
/// <summary>
/// 拦截退回状态:0未处理,1已退回成功,2退回失败(或其它业务码)
/// </summary>
public int? intercept_return_status { get; set; }
/// <summary>
/// 拦截退回时间
/// </summary>
public DateTime? intercept_return_time { get; set; }
/// <summary>
/// 拦截退回操作信息(回调/失败信息/备注等)
/// </summary>
public string intercept_return_info { get; set; }
/// <summary>
/// 拦截改地址状态:0未处理,1修改成功,2修改失败(或其它业务码)
/// </summary>
public int? intercept_address_status { get; set; }
/// <summary>
/// 拦截改地址时间
/// </summary>
public DateTime? intercept_address_time { get; set; }
/// <summary>
/// 拦截改地址操作信息(回调/失败信息/备注等)
/// </summary>
public string intercept_address_info { get; set; }
/// <summary>
/// 是否有退货:0 无退货,1 有退货
/// </summary>
public int? has_return { get; set; }
}