using AllBase.Helper; using AllBase.Model.MvvmBaseClasses; using NaiBa.Util.Extension; using Newtonsoft.Json.Linq; using NPOI.SS.Formula.Functions; using Org.BouncyCastle.Asn1.Mozilla; using System; using System.Collections.Generic; using System.Linq; using System.Runtime.CompilerServices; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Windows; using System.Windows.Forms; using System.Windows.Media; using System.Windows.Threading; namespace AllBase.Model.DBModel { public class oms_wei_order_item_info : PropertyNotifyObject { /// /// 订单对应店铺 /// public ShopLoginInfo Shop { get { return this.GetValue(x => x.Shop); } set { this.SetValue(x => x.Shop, value); } } #region 订单采购参数 /// /// 采购关联 /// public WXBuyMapInfo BuyMap { get { return this.GetValue(x => x.BuyMap); } set { this.SetValue(x => x.BuyMap, value); } } public Visibility MapSkusBtnVisibility { get { return this.GetValue(x => x.MapSkusBtnVisibility); } set { this.SetValue(x => x.MapSkusBtnVisibility, value); } } public List BuyMapSkus { get { return this.GetValue(x => x.BuyMapSkus); } set { this.SetValue(x => x.BuyMapSkus, value); if (value != null && value.Count > 0) MapSkusBtnVisibility = Visibility.Visible; else MapSkusBtnVisibility = Visibility.Collapsed; } } /// /// 采购按钮文字 /// public string BuyGoodsBtnTxt { get { return this.GetValue(x => x.BuyGoodsBtnTxt); } set { this.SetValue(x => x.BuyGoodsBtnTxt, value); } } /// /// 采购按钮颜色 /// public SolidColorBrush BuyGoodsBtnColor { get { return this.GetValue(x => x.BuyGoodsBtnColor); } set { this.SetValue(x => x.BuyGoodsBtnColor, value); } } /// /// 采购按钮背景颜色 /// public SolidColorBrush BuyGoodsBtnBackColor { get { return this.GetValue(x => x.BuyGoodsBtnBackColor); } set { this.SetValue(x => x.BuyGoodsBtnBackColor, value); } } /// /// 采购按钮是否可用 /// public bool IsBuyGoodsBtnEnabled { get { return this.GetValue(x => x.IsBuyGoodsBtnEnabled); } set { this.SetValue(x => x.IsBuyGoodsBtnEnabled, value); } } #endregion /// /// 订单扩展信息 /// public order_item_ext OrderItemExt { get { return this.GetValue(x => x.OrderItemExt); } set { this.SetValue(x => x.OrderItemExt, value); ShopWaybillExceptionStr = value == null ? "" : value.abnormal_text.ParseToString(); } } /// /// 店铺后台显示的物流异常信息(订单扩展信息) /// public string ShopWaybillExceptionStr { get { return this.GetValue(x => x.ShopWaybillExceptionStr); } set { this.SetValue(x => x.ShopWaybillExceptionStr, value); } } public oms_wei_order_info ItemOrder { get { return this.GetValue(x => x.ItemOrder); } set { this.SetValue(x => x.ItemOrder, value); } } #region 订单售后状态参数 public oms_wei_refund_info ItemRefund { get { return this.GetValue(x => x.ItemRefund); } set { this.SetValue(x => x.ItemRefund, value); } } public string RefundAddressStr { get { return this.GetValue(x => x.RefundAddressStr); } set { this.SetValue(x => x.RefundAddressStr, value); } } public void SetItemRefund() { if (ItemOrder?.refundItems?.Count == 1) ItemRefund = ItemOrder?.refundItems?.FirstOrDefault(); else ItemRefund = ItemOrder?.refundItems?.FirstOrDefault(r => r.sku_id == this.sku_id); if (ItemRefund?.status != "MERCHANT_REFUND_SUCCESS" && ItemRefund?.status != "MERCHANT_RETURN_SUCCESS") this.RefundResultStr = ""; else this.RefundResultStr = "商品退款数量:" + ItemRefund.count + ",订单状态:" + ItemOrder.orderStatusStr; this.ReturnWaybillIdStr = ItemRefund?.return_waybill_id; this.RefundDatetime = ItemRefund?.create_time == null ? DateTime.MinValue : BaseClass.StampToDateTime((ItemRefund?.create_time).ParseToInt()); if (ItemOrder != null) ItemOrder.RefundDatetime = this.RefundDatetime; this.RefundDateTimeStr = RefundDatetime.ToString("yy-MM-dd HH:mm:ss"); this.RefundTimeVisibility = RefundDatetime == DateTime.MinValue ? Visibility.Collapsed : Visibility.Visible; RefundAddressStr = ""; if (ItemRefund != null) RefundAddressStr = ItemRefund.return_user_name + " " + ItemRefund.return_tel + " " + ItemRefund.return_province + ItemRefund.return_city + ItemRefund.return_county + ItemRefund.return_detail; } /// /// 退款状态文本 /// public string RefundResultStr { get { return this.GetValue(x => x.RefundResultStr); } set { this.SetValue(x => x.RefundResultStr, value); } } /// /// 微信小店用户退款快递单号 /// public string ReturnWaybillIdStr { get { return this.GetValue(x => x.ReturnWaybillIdStr); } set { this.SetValue(x => x.ReturnWaybillIdStr, value); } } /// /// 订单退款时间 /// public DateTime RefundDatetime { get { return this.GetValue(x => x.RefundDatetime); } set { this.SetValue(x => x.RefundDatetime, value); } } /// /// 订单退款时间文本 /// public string RefundDateTimeStr { get { return this.GetValue(x => x.RefundDateTimeStr); } set { this.SetValue(x => x.RefundDateTimeStr, value); } } /// /// 订单退款时间可见 /// public Visibility RefundTimeVisibility { get { return this.GetValue(x => x.RefundTimeVisibility); } set { this.SetValue(x => x.RefundTimeVisibility, value); } } #endregion #region 中转仓及中转拍单相关参数 /// /// 中转订单列表 /// public List ItemTransitOrders { get; set; } = new List(); /// /// 当前仓库订单(不可以是作废单) /// public oms_wei_external_procurement_log_info ItemTransitOrder { get { return this.GetValue(x => x.ItemTransitOrder); } set { this.SetValue(x => x.ItemTransitOrder, value); } } /// /// 当前仓库订单(可以是作废单) /// public oms_wei_external_procurement_log_info ItemTransitOrderWithVoid { get { return this.GetValue(x => x.ItemTransitOrderWithVoid); } set { this.SetValue(x => x.ItemTransitOrderWithVoid, value); } } public List ItemTransitOrderAfterSales { get; set; } = new List(); public oms_wei_external_procurement_after_sale_info ItemTransitOrderAfterSale { get { return this.GetValue(x => x.ItemTransitOrderAfterSale); } set { this.SetValue(x => x.ItemTransitOrderAfterSale, value); } } public List PddBuyerOrders { get; set; } = new List(); public order_pdd_buyer_order PddBuyerOrder { get { return this.GetValue(x => x.PddBuyerOrder); } set { this.SetValue(x => x.PddBuyerOrder, value); } } public List PddBuyerAfterSales { get; set; } = new List(); public order_pdd_buyer_after_sale PddBuyerAfterSale { get { return this.GetValue(x => x.PddBuyerAfterSale); } set { this.SetValue(x => x.PddBuyerAfterSale, value); // 云仓买手退货地址 this.PddBuyerAfterSaleAddressStr = this.PddBuyerAfterSale?.afterSaleAddress; } } public string PddBuyerAfterSaleAddressStr { get { return this.GetValue(x => x.PddBuyerAfterSaleAddressStr); } set { this.SetValue(x => x.PddBuyerAfterSaleAddressStr, value); } } public void SetTransitOrder() { if (order_id == "3738552208766960384") { } this.ItemTransitOrder = ItemTransitOrders?.FirstOrDefault(t => t.order_void_status != 1); this.ItemTransitOrderWithVoid = ItemTransitOrders?.FirstOrDefault(); this.ItemTransitOrderAfterSale = ItemTransitOrderAfterSales?.FirstOrDefault(); this.PddBuyerOrder = PddBuyerOrders?.FirstOrDefault(); // 优先找非撤销买手退款单 this.PddBuyerAfterSale = PddBuyerAfterSales?.FirstOrDefault(p => p.orderSn == this.ItemTransitOrderWithVoid.out_order_no && p.statusText == "退款成功") ?? PddBuyerAfterSales?.FirstOrDefault(p => p.orderSn == this.ItemTransitOrderWithVoid.out_order_no && !p.statusText.Contains("申请已撤销")); if (PddBuyerAfterSale == null) PddBuyerAfterSale = PddBuyerAfterSales?.FirstOrDefault(p => p.orderSn == this.ItemTransitOrderWithVoid.out_order_no); // 直接取号和更正取号显示的买手到仓库物流 if (ItemTransitOrder?.pre_allocated_order_no != 1 && ItemTransitOrder?.pre_allocated_order_no != 3) this.TransitOrderWaybillToWareHouseStr = null; else this.TransitOrderWaybillToWareHouseStr = ItemTransitOrder.express_1_company + "-" + ItemTransitOrder.express_1_waybill; // 提前取号物流 if (ItemTransitOrder?.pre_allocated_order_no != 2) this.TransitOrderWaybillFakeStr = null; else this.TransitOrderWaybillFakeStr = ItemTransitOrder.express_1_company + "-" + ItemTransitOrder.express_1_waybill; // 仓库下游物流 if (ItemTransitOrder == null || ItemTransitOrder.express_2_company.IsNullOrEmpty() || ItemTransitOrder.express_2_waybill.IsNullOrEmpty()) TransitOrderWaybillFromWareHouseStr = null; else TransitOrderWaybillFromWareHouseStr = ItemTransitOrder.express_2_company + "-" + ItemTransitOrder.express_2_waybill; if (order_id == "3739043283864307968") { var xx = ShopWaybillExceptionStr; } TransitWarehouseRejectSuccessTimeStr = this.ItemTransitOrderWithVoid?.rejected_time == null ? "" : this.ItemTransitOrderWithVoid.rejected_time.Value.ToString("yy-MM-dd HH:mm"); AddEditTransitWarehouseRejectStr = "申请"; if (this.ItemTransitOrderWithVoid?.has_reject == 1) AddEditTransitWarehouseRejectStr = "已申请拒收"; if (this.ItemTransitOrderWithVoid?.has_reject == 2) AddEditTransitWarehouseRejectStr = "申请拒收失败"; if (this.ItemTransitOrderWithVoid?.has_reject == 3) AddEditTransitWarehouseRejectStr = "申请拒收成功"; if (this.ItemTransitOrderWithVoid?.has_reject == 5) AddEditTransitWarehouseRejectStr = "已取消拒收"; if (this.ItemTransitOrderWithVoid == null || (this.ItemRefund?.type != "REFUND" && !this.ItemOrder.IsAbnormal) || // 仅退款 TransitRefundStatusStr.Contains("退款成功") || !(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) || string.IsNullOrEmpty(PddBuyerOrder?.order_sn)) { if (AddEditTransitWarehouseRejectStr == "申请") AddEditTransitWarehouseRejectStr = ""; //else if (this.ItemTransitOrderWithVoid.platform == "XDYYWC") // 义务仓已申请拒收的全部显示失败 // AddEditTransitWarehouseRejectStr = "申请拒收失败*"; } if (order_id == "3739154342108377600") { } // 拦截退回操作信息 InterceptReturnInfoStr = ""; if (this.ItemTransitOrderWithVoid != null) InterceptReturnInfoStr = this.ItemTransitOrderWithVoid.intercept_return_info; // 仓库物流售后拦截包裹按钮上的文字,仓库作废单不存在仓库物流,所以此处必须是有效的仓库单(含作废失败) AddEditTransitWarehouseAfterSaleStr = "添加"; if (this.ItemTransitOrderAfterSale != null) AddEditTransitWarehouseAfterSaleStr = "已添加"; if (this.ItemTransitOrderAfterSale != null && (ItemTransitOrderWithVoid.intercept_return_status == 1 || !string.IsNullOrEmpty(ItemTransitOrderAfterSale.downstream_waybill))) AddEditTransitWarehouseAfterSaleStr = "拦截成功"; if (this.ItemTransitOrderAfterSale != null && ItemTransitOrderWithVoid.intercept_return_status == 2) AddEditTransitWarehouseAfterSaleStr = "拦截失败"; if (this.ItemTransitOrderWithVoid == null || (this.ItemRefund?.type != "REFUND" && !this.ItemOrder.IsAbnormal) || TransitRefundStatusStr.Contains("退款成功") || !(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 && !AddEditTransitWarehouseRejectStr.IsNullOrEmpty() && !AddEditTransitWarehouseRejectStr.StartsWith("申请拒收失败"))) { if (AddEditTransitWarehouseAfterSaleStr == "添加") AddEditTransitWarehouseAfterSaleStr = ""; } // 退货退款的,不能拦截退回总店。如果是退到退货仓,则退货仓流程,否则店家自行收货退回总店。 if (!RefundAddressStr.ParseToString().Trim().IsNullOrEmpty() || (this.ItemRefund?.type != "REFUND" && !this.ItemOrder.IsAbnormal)) { if (AddEditTransitWarehouseAfterSaleStr == "添加") AddEditTransitWarehouseAfterSaleStr = ""; } if (this.ItemTransitOrderAfterSale != null) TransitWarehouseAfterSaleWayBillStr = (this.ItemTransitOrderAfterSale?.downstream_express_code + "-" + this.ItemTransitOrderAfterSale?.downstream_waybill).Trim('-'); AddEditTransitWarehouseReturnOrderStr = ""; if (ItemRefund?.return_detail.StartsWith(GlobalConfig.TransitReturnOrderReturnAddress) == true) { if (order_id == "3738272473468804864") { } if (AddEditTransitWarehouseAfterSaleStr == "添加") AddEditTransitWarehouseAfterSaleStr = ""; AddEditTransitWarehouseReturnOrderStr = DistribReturnOrderInfo == null ? "未创建" : "已添加"; if (DistribReturnOrderInfo?.warehouse_status == 1) { if ((DistribReturnOrderInfo?.real_logistics_express_code).IsNullOrEmpty()) AddEditTransitWarehouseReturnOrderStr = "已到仓"; else AddEditTransitWarehouseReturnOrderStr = "已发回"; } if (DistribReturnOrderInfo?.warehouse_status == 2) AddEditTransitWarehouseReturnOrderStr = "创建失败"; if (DistribReturnOrderInfo?.warehouse_status == 3) AddEditTransitWarehouseReturnOrderStr = "已创建未到仓"; if (TransitRefundStatusStr.Contains("退款成功")) { if (AddEditTransitWarehouseReturnOrderStr == "未创建") AddEditTransitWarehouseReturnOrderStr = ""; } } } /// /// 仓库拒收按钮文本参数 /// public string AddEditTransitWarehouseRejectStr { get { return this.GetValue(x => x.AddEditTransitWarehouseRejectStr); } set { this.SetValue(x => x.AddEditTransitWarehouseRejectStr, value); } } public string TransitWarehouseRejectSuccessTimeStr { get { return this.GetValue(x => x.TransitWarehouseRejectSuccessTimeStr); } set { this.SetValue(x => x.TransitWarehouseRejectSuccessTimeStr, value); } } /// /// 仓库退货编辑按钮文本参数 /// public string AddEditTransitWarehouseAfterSaleStr { get { return this.GetValue(x => x.AddEditTransitWarehouseAfterSaleStr); } set { this.SetValue(x => x.AddEditTransitWarehouseAfterSaleStr, value); } } /// /// 拦截退回操作信息/回调信息 文本 /// public string InterceptReturnInfoStr { get { return this.GetValue(x => x.InterceptReturnInfoStr); } set { this.SetValue(x => x.InterceptReturnInfoStr, value); } } /// /// 仓库分销退货按钮显示文本参数 /// public string AddEditTransitWarehouseReturnOrderStr { get { return this.GetValue(x => x.AddEditTransitWarehouseReturnOrderStr); } set { this.SetValue(x => x.AddEditTransitWarehouseReturnOrderStr, value); } } /// /// 仓库分销退货物流信息 /// public string AddEditTransitWarehouseReturnOrderWaybillStr { get { return this.GetValue(x => x.AddEditTransitWarehouseReturnOrderWaybillStr); } set { this.SetValue(x => x.AddEditTransitWarehouseReturnOrderWaybillStr, value); } } /// /// 拍单物流编号 /// public string TransitOrderWaybillToWareHouseStr { get { return this.GetValue(x => x.TransitOrderWaybillToWareHouseStr); } set { this.SetValue(x => x.TransitOrderWaybillToWareHouseStr, value); } } /// /// 提前取号物流编号(虚拟) /// public string TransitOrderWaybillFakeStr { get { return this.GetValue(x => x.TransitOrderWaybillFakeStr); } set { this.SetValue(x => x.TransitOrderWaybillFakeStr, value); } } /// /// 仓库物流编号 /// public string TransitOrderWaybillFromWareHouseStr { get { return this.GetValue(x => x.TransitOrderWaybillFromWareHouseStr); } set { this.SetValue(x => x.TransitOrderWaybillFromWareHouseStr, value); } } public string TransitWarehouseAfterSaleWayBillStr { get { return this.GetValue(x => x.TransitWarehouseAfterSaleWayBillStr); } set { this.SetValue(x => x.TransitWarehouseAfterSaleWayBillStr, value); } } #endregion #region 买手物流参数 public string BuyerTransitWaybillStatusStr { get { return this.GetValue(x => x.BuyerTransitWaybillStatusStr); } set { this.SetValue(x => x.BuyerTransitWaybillStatusStr, value); } } public void SetBuyerTransitWaybillStatusStr() { BuyerTransitWaybillStatusStr = ""; string refund_status = (ItemTransitOrderWithVoid?.refund_status).ParseToString(); // 已到中转仓的或者中转仓已正式发出的,买手(仓上游)状态显示为已到中转仓 //if (ItemTransitOrderWithVoid?.warehouse_status == 1 || ItemTransitOrderWithVoid?.warehouse_status == 2) //{ // BuyerTransitWaybillStatusStr = "已到中转仓"; //} // 拼多多买手状态为已签收的,为已到中转仓 /*else*/ if ((PddBuyerOrder?.order_status_prompt).ParseToString().Contains("已签收")) { BuyerTransitWaybillStatusStr = "买手已送达"; } // 售后待用户退回商品的,至少为买手已发货 else if ((PddBuyerOrder?.order_status_prompt).ParseToString().Contains("待用户退回商品")) { BuyerTransitWaybillStatusStr = "买手已发货"; } // 待收货的,至少为买手已发货 else if ((PddBuyerOrder?.order_status_prompt).ParseToString().Contains("待收货")) { BuyerTransitWaybillStatusStr = "买手已发货"; } // 有退款还没完成的,至少为买手已发货(未发货一般秒退) else if (!refund_status.Contains("退款成功") && refund_status.Length > 0) { BuyerTransitWaybillStatusStr = "买手已发货"; } // 正式取号或者取号更正的,可认定买手已发货 else if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) { BuyerTransitWaybillStatusStr = "买手已发货"; } else if (ItemTransitOrderWithVoid != null) { BuyerTransitWaybillStatusStr = "买手未发货"; } // 文本确定后设置颜色 SetBuyerTransitWaybillStatusStrColor(); SetBuyerTransitWaybillStatusBorderColor(); SetBuyerTransitWaybillStatusBackColor(); } public SolidColorBrush BuyerTransitWaybillStatusStrColor { get { return this.GetValue(x => x.BuyerTransitWaybillStatusStrColor); } set { this.SetValue(x => x.BuyerTransitWaybillStatusStrColor, value); } } public void SetBuyerTransitWaybillStatusStrColor() { if (BuyerTransitWaybillStatusStr.StartsWith("买手已退款")) BuyerTransitWaybillStatusStrColor = GlobalConfig.PurpleBrush; else if (BuyerTransitWaybillStatusStr.StartsWith("买手已送达")) BuyerTransitWaybillStatusStrColor = GlobalConfig.GreenBrush; else if (BuyerTransitWaybillStatusStr.StartsWith("买手已发货")) BuyerTransitWaybillStatusStrColor = GlobalConfig.YellowBrush; else if (BuyerTransitWaybillStatusStr.StartsWith("买手未发货")) BuyerTransitWaybillStatusStrColor = GlobalConfig.RedBrush; else BuyerTransitWaybillStatusStrColor = GlobalConfig.RedBrush; } public SolidColorBrush BuyerTransitWaybillStatusBorderColor { get { return this.GetValue(x => x.BuyerTransitWaybillStatusBorderColor); } set { this.SetValue(x => x.BuyerTransitWaybillStatusBorderColor, value); } } public void SetBuyerTransitWaybillStatusBorderColor() { if (BuyerTransitWaybillStatusStr.StartsWith("买手已退款")) BuyerTransitWaybillStatusBorderColor = GlobalConfig.PurpleBrush75; else if (BuyerTransitWaybillStatusStr.StartsWith("买手已送达")) BuyerTransitWaybillStatusBorderColor = GlobalConfig.GreenBrush75; else if (BuyerTransitWaybillStatusStr.StartsWith("买手已发货")) BuyerTransitWaybillStatusBorderColor = GlobalConfig.YellowBrush75; else if (BuyerTransitWaybillStatusStr.StartsWith("买手未发货")) BuyerTransitWaybillStatusBorderColor = GlobalConfig.RedBrush75; else BuyerTransitWaybillStatusBorderColor = GlobalConfig.RedBrush75; } public SolidColorBrush BuyerTransitWaybillStatusBackColor { get { return this.GetValue(x => x.BuyerTransitWaybillStatusBackColor); } set { this.SetValue(x => x.BuyerTransitWaybillStatusBackColor, value); } } public void SetBuyerTransitWaybillStatusBackColor() { if (BuyerTransitWaybillStatusStr.StartsWith("买手已退款")) BuyerTransitWaybillStatusBackColor = GlobalConfig.PurpleBrush35; else if (BuyerTransitWaybillStatusStr.StartsWith("买手已送达")) BuyerTransitWaybillStatusBackColor = GlobalConfig.GreenBrush35; else if (BuyerTransitWaybillStatusStr.StartsWith("买手已发货")) BuyerTransitWaybillStatusBackColor = GlobalConfig.YellowBrush35; else if (BuyerTransitWaybillStatusStr.StartsWith("买手未发货")) BuyerTransitWaybillStatusBackColor = GlobalConfig.RedBrush35; else BuyerTransitWaybillStatusBackColor = GlobalConfig.RedBrush35; } #endregion #region 仓库物流参数 public string WarehouseWaybillStatusStr { get { return this.GetValue(x => x.WarehouseWaybillStatusStr); } set { this.SetValue(x => x.WarehouseWaybillStatusStr, value); } } public void SetWarehouseWaybillStatusStr() { if (order_id == "3737682230178873344") { } WarehouseWaybillStatusStr = ""; if (ItemTransitOrderWithVoid == null) WarehouseWaybillStatusStr = ""; // 订单不满足鸿浩仓库发货条件,无法调用鸿浩仓库接口发货 else if ((ItemTransitOrderWithVoid.raw_message.ParseToString().Contains("取号异常") || ItemTransitOrderWithVoid.raw_message.ParseToString().Contains("无法调用")) && ItemTransitOrderWithVoid.transfer_warehouse_status != 1) { if (ItemTransitOrderWithVoid.raw_message.Contains("超出派送范围")) WarehouseWaybillStatusStr = "取号异常-超出派送范围"; else WarehouseWaybillStatusStr = "取号异常"; } else if (ItemTransitOrderWithVoid?.warehouse_status == 3) WarehouseWaybillStatusStr = "中转拦截到仓"; else if (ItemTransitOrderWithVoid?.warehouse_status == 2) WarehouseWaybillStatusStr = "中转已出库"; //// 老订单还用之前的逻辑判断 //else if (ItemTransitOrderWithVoid?.created_time < new DateTime(2026, 7, 14) && (ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) && !ItemTransitOrderWithVoid.express_2_company.IsNullOrEmpty() && !ItemTransitOrderWithVoid.express_2_waybill.IsNullOrEmpty()) // //WarehouseWaybillStatusStr = "中转已出库*"; // WarehouseWaybillStatusStr = "中转已出库"; else if (ItemTransitOrderWithVoid?.warehouse_status == 1) WarehouseWaybillStatusStr = "中转已入库"; //else if ((ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) && !ItemTransitOrderWithVoid.express_2_company.IsNullOrEmpty() && !ItemTransitOrderWithVoid.express_2_waybill.IsNullOrEmpty()) // WarehouseWaybillStatusStr = "中转已发货"; //else if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) // WarehouseWaybillStatusStr = "中转待发货"; else if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 1 || ItemTransitOrderWithVoid?.pre_allocated_order_no == 3) WarehouseWaybillStatusStr = "中转已取号"; else if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 2) WarehouseWaybillStatusStr = "中转提前取号"; //else if (ItemTransitOrderWithVoid?.order_void_status == 2) // WarehouseWaybillStatusStr = "中转作废失败"; //else if (ItemTransitOrderWithVoid?.order_void_status == 1) // WarehouseWaybillStatusStr = "中转已作废"; else if (ItemTransitOrderWithVoid?.pre_allocated_order_no == 0) WarehouseWaybillStatusStr = "中转待取号"; var warehouseWaybillStatusStr = WarehouseWaybillStatusStr.ParseToString(); // 状态文字颜色 //if (warehouseWaybillStatusStr.StartsWith("中转已作废")) // WarehouseWaybillStatusStrColor = PurpleBrush; if (warehouseWaybillStatusStr.StartsWith("中转已出库") || warehouseWaybillStatusStr.StartsWith("中转拦截到仓")) WarehouseWaybillStatusStrColor = GlobalConfig.GreenBrush; else if (warehouseWaybillStatusStr.StartsWith("中转已入库") || warehouseWaybillStatusStr.StartsWith("中转已取号") || warehouseWaybillStatusStr.StartsWith("中转提前取号")) WarehouseWaybillStatusStrColor = GlobalConfig.YellowBrush; else if (warehouseWaybillStatusStr.StartsWith("中转待取号")) WarehouseWaybillStatusStrColor = GlobalConfig.RedBrush; else WarehouseWaybillStatusStrColor = GlobalConfig.RedBrush; // 状态边框颜色 //if (warehouseWaybillStatusStr.StartsWith("中转已作废")) // WarehouseWaybillStatusBorderColor = PurpleBrush75; if (warehouseWaybillStatusStr.StartsWith("中转已出库")) WarehouseWaybillStatusBorderColor = GlobalConfig.GreenBrush75; else if (warehouseWaybillStatusStr.StartsWith("中转已入库") || warehouseWaybillStatusStr.StartsWith("中转已取号") || warehouseWaybillStatusStr.StartsWith("中转提前取号")) WarehouseWaybillStatusBorderColor = GlobalConfig.YellowBrush75; else if (warehouseWaybillStatusStr.StartsWith("中转待取号")) WarehouseWaybillStatusBorderColor = GlobalConfig.RedBrush75; else WarehouseWaybillStatusBorderColor = GlobalConfig.RedBrush75; // 状态背景颜色 //if (warehouseWaybillStatusStr.StartsWith("中转已作废")) // WarehouseWaybillStatusBackColor = PurpleBrush35 if (warehouseWaybillStatusStr.ParseToString().StartsWith("中转已出库")) WarehouseWaybillStatusBackColor = GlobalConfig.GreenBrush35; else if(warehouseWaybillStatusStr.ParseToString().StartsWith("中转已入库") || warehouseWaybillStatusStr.StartsWith("中转已取号") || warehouseWaybillStatusStr.StartsWith("中转提前取号")) WarehouseWaybillStatusBackColor = GlobalConfig.YellowBrush35; else if(warehouseWaybillStatusStr.ParseToString().StartsWith("中转待取号")) WarehouseWaybillStatusBackColor = GlobalConfig.RedBrush35; else WarehouseWaybillStatusBackColor = GlobalConfig.RedBrush35; } public SolidColorBrush WarehouseWaybillStatusStrColor { get { return this.GetValue(x => x.WarehouseWaybillStatusStrColor); } set { this.SetValue(x => x.WarehouseWaybillStatusStrColor, value); } } public SolidColorBrush WarehouseWaybillStatusBorderColor { get { return this.GetValue(x => x.WarehouseWaybillStatusBorderColor); } set { this.SetValue(x => x.WarehouseWaybillStatusBorderColor, value); } } public SolidColorBrush WarehouseWaybillStatusBackColor { get { return this.GetValue(x => x.WarehouseWaybillStatusBackColor); } set { this.SetValue(x => x.WarehouseWaybillStatusBackColor, value); } } #endregion /// /// 中转仓表买手售后字段文字显示 /// public string TransitRefundStatusStr { get { if (order_id == "3738453024420550400") { } if (!string.IsNullOrEmpty(ItemTransitOrderWithVoid?.refund_status)) { // 店铺售后又取消的,如果是买手还没申请售后,不显示需手动申请售后文字 if (ItemTransitOrderWithVoid.refund_status.Contains("需手动申请售后") && this.refund_status <= 1) return ""; // 显示售后金额(如果有) if (ItemTransitOrderWithVoid.refund_status.EndsWith("买手退款成功")) { if (PddBuyerAfterSale?.refundAmount != null) return ItemTransitOrderWithVoid.refund_status + "(¥" + PddBuyerAfterSale.refundAmount * 0.01m + ")"; else return ItemTransitOrderWithVoid.refund_status + "(退款金额待获取)"; } if (!ItemTransitOrderWithVoid.refund_status.Contains("需手动申请售后") && !ItemTransitOrderWithVoid.refund_status.Contains("已超过可申请售后的时间")) return "已申请售后 " + ItemTransitOrderWithVoid.refund_status.Replace("申请收到,", ""); if (order_id == "3737761985909113600") { } return ItemTransitOrderWithVoid.refund_status; } return ""; } set { } } /// /// 中转仓表买手售后字段文字显示背景颜色 /// public SolidColorBrush TransitRefundStatusBackColor { get { if (TransitRefundStatusStr.Contains("退款成功")) return GlobalConfig.GreenBrush; if (TransitRefundStatusStr.Contains("需手动申请售后") || TransitRefundStatusStr.Contains("已超过可申请售后的时间") || TransitRefundStatusStr.Contains("退款失败")) return GlobalConfig.RedBrush; return GlobalConfig.LightOrangeBrush; //return YellowBrush; } set { } } /// /// 中转仓作废参数 /// public string TransitRefundVoidStatusStr { get { //if (ItemTransitOrderWithVoid?.order_void_status == 2) // return "中转作废失败"; if (ItemTransitOrderWithVoid?.order_void_status == 1) return "中转已作废"; return ""; } set { } } // 仓库采购时间是否达标字段 public string OutOrderTimeQualifiedStr { get { if (ItemTransitOrderWithVoid == null) return ""; string timeStr = ItemTransitOrderWithVoid.created_time.ToString("yyyy-MM-dd HH:mm:ss"); if (CreateDateTime.Date != ItemTransitOrderWithVoid.created_time.Date && ItemTransitOrderWithVoid.created_time > ItemTransitOrderWithVoid.created_time.Date.AddHours(1.5)) return timeStr + " ×"; return timeStr + " √"; } set { } } /// /// 仓库采购时间是否达标字段颜色 /// public SolidColorBrush OutOrderTimeQualifiedBrush { get { return OutOrderTimeQualifiedStr.EndsWith("√") ? GlobalConfig.GreenTextBrush : GlobalConfig.RedTextBrush; } } /// /// 微信订单状态参数 /// public string OrderItemStatusStr { get { if (ItemOrder?.status == 10) return "待付款"; if (ItemOrder?.status == 12) return "礼物待收下"; if (ItemOrder?.status == 13) return "一起买待成团"; if (ItemOrder?.status == 20) return "待店铺发货"; if (ItemOrder?.status == 21) return "店铺部分发货"; if (ItemOrder?.status == 30) return "待买家收货"; if (ItemOrder?.status == 100) return "订单完成"; if (ItemOrder?.status == 200) return "售后完成订单取消"; if (ItemOrder?.status == 250) return "未付款已取消"; return "未知状态"; } set { } } /// /// 微信订单状态颜色 /// public SolidColorBrush OrderItemStatusStrColor { get { if ("未知状态,未付款已取消,售后完成订单取消".Contains(OrderItemStatusStr)) return GlobalConfig.RedBrush; if ("订单完成".Contains(OrderItemStatusStr)) return GlobalConfig.GreenBrush; if ("待买家收货,店铺部分发货,待店铺发货,待付款".Contains(OrderItemStatusStr)) return GlobalConfig.YellowBrush; return GlobalConfig.YellowBrush; } set { } } public SolidColorBrush OrderItemStatusBorderColor { get { if ("未知状态,未付款已取消,售后完成订单取消".Contains(OrderItemStatusStr)) return GlobalConfig.RedBrush75; if ("订单完成".Contains(OrderItemStatusStr)) return GlobalConfig.GreenBrush75; if ("待买家收货,店铺部分发货,待店铺发货,待付款".Contains(OrderItemStatusStr)) return GlobalConfig.YellowBrush75; return GlobalConfig.YellowBrush75; } set { } } public SolidColorBrush OrderItemStatusBackColor { get { if ("未知状态,未付款已取消,售后完成订单取消".Contains(OrderItemStatusStr)) return GlobalConfig.RedBrush35; if ("订单完成".Contains(OrderItemStatusStr)) return GlobalConfig.GreenBrush35; if ("待买家收货,店铺部分发货,待店铺发货,待付款".Contains(OrderItemStatusStr)) return GlobalConfig.YellowBrush35; return GlobalConfig.YellowBrush35; } set { } } public List DistribReturnOrderInfos { get { return this.GetValue(x => x.DistribReturnOrderInfos); } set { if (value == null) value = new List(); this.SetValue(x => x.DistribReturnOrderInfos, value); DistribReturnOrderInfo = value.OrderByDescending(dr => dr.created_at).FirstOrDefault(dr => dr.order_void_status == 0); if (DistribReturnOrderInfo != null) AddEditTransitWarehouseReturnOrderWaybillStr = (DistribReturnOrderInfo.real_logistics_code + "-" + DistribReturnOrderInfo.real_logistics_express_code).Trim('-'); } } public distrib_return_order_info DistribReturnOrderInfo { get { return this.GetValue(x => x.DistribReturnOrderInfo); } set { this.SetValue(x => x.DistribReturnOrderInfo, value); } } public List DirectPddBuyerOrders { get; set; } = new List(); public order_pdd_buyer_order DirectPddBuyerOrder { get { return this.GetValue(x => x.DirectPddBuyerOrder); } set { this.SetValue(x => x.DirectPddBuyerOrder, value); } } public string DirectOrderBuyTimeStr { get { return this.GetValue(x => x.DirectOrderBuyTimeStr); } set { this.SetValue(x => x.DirectOrderBuyTimeStr, value); } } public List DirectPddBuyerAfterSales { get; set; } = new List(); public order_pdd_buyer_after_sale DirectPddBuyerAfterSale { get { return this.GetValue(x => x.DirectPddBuyerAfterSale); } set { if (order_id == "3738766466298321152") { } this.SetValue(x => x.DirectPddBuyerAfterSale, value); // 直发买手退货地址 this.DirectPddBuyerAfterSaleAddressStr = DirectPddBuyerAfterSale?.afterSaleAddress; } } public string DirectPddBuyerAfterSaleAddressStr { get { return this.GetValue(x => x.DirectPddBuyerAfterSaleAddressStr); } set { this.SetValue(x => x.DirectPddBuyerAfterSaleAddressStr, value); } } public string DirectRefundStatusStr { get { return this.GetValue(x => x.DirectRefundStatusStr); } set { this.SetValue(x => x.DirectRefundStatusStr, value); } } /// /// 直发买手售后字段文字显示背景颜色 /// public SolidColorBrush DirectRefundStatusBackColor { get { return this.GetValue(x => x.DirectRefundStatusBackColor); } set { this.SetValue(x => x.DirectRefundStatusBackColor, value); } } public void SetDirectOrder() { this.DirectPddBuyerOrder = DirectPddBuyerOrders.FirstOrDefault(p => OrderItemExt?.out_order_id == p.order_sn); if (DirectPddBuyerOrder != null) { } this.DirectPddBuyerAfterSale = DirectPddBuyerAfterSales?.FirstOrDefault(p => p.statusText == "退款成功") ?? DirectPddBuyerAfterSales?.FirstOrDefault(p => p.statusText != "申请已撤销"); if (DirectPddBuyerAfterSale == null) DirectPddBuyerAfterSale = DirectPddBuyerAfterSales?.FirstOrDefault(); //this.DirectPddBuyerAfterSale = DirectPddBuyerAfterSales.FirstOrDefault(p => OrderItemExt?.out_order_id == p.orderSn); // 服务端这个值不会在拍新单后覆盖,在此处使用扩展订单绑定的买手单信息修改掉,后续在拍单的时候覆盖掉 if (ItemOrder.order_id == "3738859887048176128") { } if (!this.ItemOrder.out_after_sale_status.ParseToString().Contains("需手动申请售后")) this.ItemOrder.out_after_sale_status = DirectPddBuyerAfterSale?.statusText; DirectRefundStatusStr = this.ItemOrder.out_after_sale_status.ParseToString(); if (DirectRefundStatusStr.Contains("退款成功")) DirectRefundStatusStr += "(¥" + DirectPddBuyerAfterSale.refundAmount * 0.01m + ")"; DirectRefundStatusBackColor = GlobalConfig.LightOrangeBrush; if (DirectRefundStatusStr.ParseToString().Contains("退款成功")) DirectRefundStatusBackColor = GlobalConfig.GreenBrush; else if (DirectRefundStatusStr.ParseToString().Contains("需手动申请售后") || DirectRefundStatusStr.ParseToString().Contains("已超过可申请售后的时间")) DirectRefundStatusBackColor = GlobalConfig.RedBrush; if (order_id == "3739065927020471040") { } DirectOrderBuyTimeStr = DirectPddBuyerOrder != null ? DirectPddBuyerOrder.add_time.ToString("yyyy-MM-dd HH:mm:ss") : ""; } /// 直发最后一条物流信息 public oms_wei_ewaybill_path LatestDirectEWaybill { get { return this.GetValue(x => x.LatestDirectEWaybill); } set { this.SetValue(x => x.LatestDirectEWaybill, value); } } /// 中转仓最后一条物流信息 public oms_wei_ewaybill_path LatestTransitEWaybill { get { return this.GetValue(x => x.LatestTransitEWaybill); } set { this.SetValue(x => x.LatestTransitEWaybill, value); } } /// /// 订单中所有商品加起来的总售价文本 /// public string RealPriceStr { //get { return "¥" + (order_items.Sum(oi => oi.real_price) * 0.01m).ParseToDecimal().ToString("0.00"); } get { return "¥" + (real_price * 0.01m).ParseToDecimal().ToString("0.00"); } set { } } /// /// 订单内商品维度平台券优惠金额(利润需要计算这个金额在内)文本 /// public string CashCouponDiscountedPriceStr { //get { return "¥" + (order_items.Sum(oi => oi.cash_coupon_discounted_price.ParseToInt()) * 0.01m).ParseToDecimal().ToString("0.00"); } get { return "¥" + (cash_coupon_discounted_price.ParseToInt() * 0.01m).ParseToDecimal().ToString("0.00"); } set { } } public string PostagePriceStr { get { return "¥" + (ItemOrder?.postage_price * 0.01m / ItemOrder?.orderItems.Count).ParseToDecimal().ToString("0.00"); } set { } } /// /// 采购价文本 /// public string PurchasePriceStr { //get { return "¥" + (order_items.Sum(oi => oi.purchase_price.ParseToInt()) * 0.01m).ParseToDecimal().ToString("0.00"); } get { return "¥" + (purchase_price * 0.01m).ParseToDecimal().ToString("0.00"); } set { } } /// /// 采购价文本是否可见 /// public Visibility PurchasePriceVisibility { get { //if (ItemOrder.out_amount > 0 || ItemTransitOrder?.out_amount > 0) return Visibility.Collapsed; return Visibility.Visible; return Visibility.Collapsed; } set { } } /// /// 运费文本 /// public string FreightStr { //get { return "¥" + (order_items.Sum(oi => oi.freight.ParseToInt()) * 0.01m).ParseToDecimal().ToString("0.00"); } get { return "¥" + (freight * 0.01m).ParseToDecimal().ToString("0.00"); } set { } } /// /// 运费文本是否可见 /// public Visibility FreightVisibility { //get { if (ItemOrder.out_amount > 0 || ItemTransitOrder?.out_amount > 0) return Visibility.Collapsed; return Visibility.Visible; } get { return Visibility.Collapsed; } set { } } /// /// 平台服务费 /// public string predict_commission_fee_str { //get { return "¥" + (order_items.Sum(oi => oi.predict_commission_fee.ParseToInt()) * 0.01m).ParseToDecimal().ToString("0.00"); } get { return "¥" + (predict_commission_fee * 0.01m).ParseToDecimal().ToString("0.00"); } set { } } /// /// 达人佣金 /// public string commission_amount_str { //get { return "¥" + (order_items.Sum(oi => oi.commission_amount.ParseToInt()) * 0.01m).ParseToDecimal().ToString("0.00"); } get { return "¥" + (commission_amount.ParseToInt() * 0.01m).ParseToDecimal().ToString("0.00"); } set { } } /// /// 外采金额文本 /// public string out_amount_str { //get { return "¥" + (ItemOrder.out_amount * 0.01m).ParseToDecimal().ToString("0.00"); } get { //if (ItemTransitOrder?.out_amount > 0) // return "¥" + (ItemTransitOrder.out_amount * 0.01m).ParseToDecimal().ToString("0.00"); if (ItemTransitOrders.Any(t => t.refund_status != "买手退款成功")) return "¥" + (ItemTransitOrders.Where(t => t.refund_status != "买手退款成功").Sum(t => t.out_amount) * 0.01m).ParseToDecimal().ToString("0.00"); else return "¥" + ((ItemOrder?.out_amount).ParseToInt() * 0.01m).ParseToDecimal().ToString("0.00"); } set { } } decimal profitCount = decimal.MinValue; /// /// 通过计算的利润 /// public decimal ProfitCount { get { if (profitCount == decimal.MinValue) { //ItemOrder.out_amount ItemTransitOrder.out_amount 只有一个有值 var out_amount = ItemTransitOrder?.out_amount ?? ItemOrder.out_amount / ItemOrder.orderItems.Count; var postage_price = ItemOrder?.postage_price ?? ItemOrder.postage_price / ItemOrder.orderItems.Count; profitCount = ((real_price.ParseToInt() + cash_coupon_discounted_price.ParseToInt() + postage_price - purchase_price.ParseToInt() - freight.ParseToInt() - predict_commission_fee.ParseToInt() - commission_amount.ParseToInt() - out_amount.ParseToInt()) * 0.01m).ParseToDecimal(); } return profitCount; } set { profitCount = decimal.MinValue; } } /// /// 通过计算的利润文本 /// public string ProfitCountStr { //get { return "¥" + (profit * 0.01m).ParseToDecimal().ToString("0.00"); } //get { return "¥" + ((ItemOrder.profit - ItemOrder.out_amount) * 0.01m).ParseToDecimal().ToString("0.00"); } get { if (refund_status == 2 || refund_status == 3 || refund_status == 4 || refund_status == 11) return "--"; return "¥" + ProfitCount.ToString("0.00"); } set { } } public SolidColorBrush ProfitStrColor { get { if (refund_status == 2 || refund_status == 3 || refund_status == 4 || refund_status == 11) return GlobalConfig.GrayBrush; //return ProfitCount > 0 ? new SolidColorBrush(Color.FromRgb(103, 194, 58)) : new SolidColorBrush(Color.FromRgb(250, 71, 51)); return ProfitCount > 0 ? GlobalConfig.GreenTextBrush : GlobalConfig.RedTextBrush; } set { } } public DateTime CreateDateTime { get { return this.GetValue(x => x.CreateDateTime); } set { this.SetValue(x => x.CreateDateTime, value); } } /// /// 订单创建时间文本 /// public string CreateDateTimeStr { get { return this.GetValue(x => x.CreateDateTimeStr); } set { this.SetValue(x => x.CreateDateTimeStr, value); } } /// /// 订单更新时间文本 /// public string UpdateTimeStr { get { return this.GetValue(x => x.UpdateTimeStr); } set { this.SetValue(x => x.UpdateTimeStr, value); } } /// /// sku规格名称文本 /// public string sku_attr_str { get { try { var jObj = JArray.Parse(sku_attrs); var str = string.Join(",", jObj.Select(j => j["attr_value"].ParseToString())); return str; } catch { return "获取失败"; } } set { } } /// /// 拼多多秒退异常重拍按钮可见条件 /// public Visibility BtnAbnormalBtnVisibility { get { return this.GetValue(x => x.BtnAbnormalBtnVisibility); } set { this.SetValue(x => x.BtnAbnormalBtnVisibility, value); } } /// /// 直发按钮可见条件 /// public Visibility BtnDirectBuyOrderVisibility { get { return this.GetValue(x => x.BtnDirectBuyOrderVisibility); } set { this.SetValue(x => x.BtnDirectBuyOrderVisibility, value); } } public void SetAbnormalAndDirectBtnVisibility() { // 买手秒退异常重拍 BtnAbnormalBtnVisibility = Visibility.Visible; // 不是异常单的不可异常重拍 if (this.ItemOrder?.IsAbnormal != true) BtnAbnormalBtnVisibility = Visibility.Collapsed; // 买手未退款的,中转正式取号以后的,不可异常重拍 else if (this.ItemTransitOrder?.refund_status != "买手退款成功" || this.WarehouseWaybillStatusStr == "中转已取号" || this.WarehouseWaybillStatusStr == "中转已入库" || this.WarehouseWaybillStatusStr == "中转已出库" || this.WarehouseWaybillStatusStr == "中转拦截到仓") BtnAbnormalBtnVisibility = Visibility.Collapsed; // 已正式取号的,不可异常重拍 if (this.ItemTransitOrder?.pre_allocated_order_no == 1 || this.ItemTransitOrder?.pre_allocated_order_no == 3) BtnAbnormalBtnVisibility = Visibility.Collapsed; // 仓库异常的异常单不可异常重拍 List rawMsgKeyWords = new List { "取号异常", "无法调用" }; if (rawMsgKeyWords.Any(k => (this.ItemTransitOrderWithVoid?.raw_message).ParseToString().Contains(k)) && this.ItemTransitOrderWithVoid?.transfer_warehouse_status != 1) BtnAbnormalBtnVisibility = Visibility.Collapsed; if (order_id == "3738706885587395328") { } // 直拍按钮 BtnDirectBuyOrderVisibility = Visibility.Collapsed; if (this.ItemOrder?.GetIsWaitBuy() == true && this.BuyGoodsBtnTxt != "关联拍单") BtnDirectBuyOrderVisibility = Visibility.Visible; if (this.ItemOrder?.GetIsAbnormal() == true && this.refund_status <= 1) { //if (BtnAbnormalBtnVisibility == Visibility.Collapsed && (this.ItemOrder.out_order_no.IsNullOrEmpty() || this.ItemOrder.out_after_sale_status == "退款成功")) if (this.ItemOrder.out_order_no.IsNullOrEmpty() || this.ItemOrder.out_after_sale_status == "退款成功") BtnDirectBuyOrderVisibility = Visibility.Visible; } } public string RefundStatusStr { get { return this.GetValue(x => x.RefundStatusStr); } set { this.SetValue(x => x.RefundStatusStr, value); } } /// /// 订单商品表数据库id /// public long id { get; set; } public long shop_id { get; set; } /// /// 商户ID /// public long merchant_id { get; set; } /// /// 订单id(平台订单id) /// public string order_id { get; set; } /// /// 商品spuid /// public string product_id { get; set; } public string sku_id { get; set; } /// /// sku小图 /// public string thumb_img { get; set; } /// /// sku数量 /// public int? sku_cnt { get; set; } /// /// 售卖单价(单位:分) /// public int? sale_price { get; set; } /// /// 商品名称 /// public string title { get; set; } /// /// 正在售后/退款流程中的 sku 数量 /// public int? on_aftersale_sku_cnt { get; set; } /// /// 完成售后/退款的 sku 数量 /// public int? finish_aftersale_sku_cnt { get; set; } /// /// 商品编码 /// public string sku_code { get; set; } /// /// 市场单价(单位:分) /// public int? market_price { get; set; } /// /// sku属性JSON /// public string sku_attrs { get; set; } /// /// sku实付总价,取estimate_price和change_price中较小值 /// public int? real_price { get; set; } /// /// 商品外部spuid /// public string out_product_id { get; set; } /// /// 采购价 /// public int? purchase_price { get; set; } /// /// 运费 /// public int? freight { get; set; } /// /// 商品外部skuid /// public string out_sku_id { get; set; } /// /// 是否有优惠金额,非必填,默认为false /// public string is_discounted { get; set; } /// /// 优惠后sku总价,非必填,is_discounted为true时有值 /// public int? estimate_price { get; set; } /// /// 是否修改过价格,非必填,默认为false /// public string is_change_price { get; set; } /// /// 改价后sku总价,非必填,is_change_price为true时有值 /// public int? change_price { get; set; } /// /// 订单内商品维度平台券优惠金额(利润需要计算这个金额在内) /// public int? cash_coupon_discounted_price { get; set; } /// /// 区域库存id /// public string out_warehouse_id { get; set; } /// /// 退货地址 /// public string return_address { get; set; } /// /// 商品发货信息JSON /// public string sku_deliver_info { get; set; } /// /// 商品额外服务信息JSON /// public string extra_service { get; set; } /// /// 是否使用了会员积分抵扣 /// public string use_deduction { get; set; } /// /// 会员积分抵扣金额,单位为分 /// public int? deduction_price { get; set; } /// /// 平台服务费(微信小店:预计技术服务费),单位为分 /// public int? predict_commission_fee { get; set; } /// /// 达人佣金(微信小店:分账金额),单位为分 /// public int? commission_amount { get; set; } /// /// 商品优惠券信息,逐步替换 order.order_detail.coupon_info /// public string order_product_coupon_info_list { get; set; } /// /// 商品id(o_goods外键) /// public long? erp_goods_id { get; set; } /// /// 商品skuid(o_goods_sku外键) /// public long? erp_goods_sku_id { get; set; } /// /// 售后状态 1:无售后或售后关闭,2:售后处理中,3:退款中,4:退款成功,11:已取消(售后完成订单取消) /// 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() { CreateDateTime = BaseClass.StampToDateTime((ItemOrder?.create_time).ParseToInt()); CreateDateTimeStr = CreateDateTime.ToString("yy-MM-dd HH:mm:ss"); UpdateTimeStr = BaseClass.StampToDateTime((ItemOrder?.update_time).ParseToInt()).ToString("yy-MM-dd HH:mm:ss"); //if (PurpleBrush == null && GlobalConfig.Dispatcher != null) //{ // // 初始化笔刷,必修Invoke; // GlobalConfig.Dispatcher.Invoke(new Action(() => // { // })); //} this.SetItemRefund(); this.SetTransitOrder(); this.SetDirectOrder(); this.SetBuyerTransitWaybillStatusStr(); this.SetWarehouseWaybillStatusStr(); // 拍单、代发等信息判断并控制拍单按钮 this.UpdateOrderItemBuyButton(); this.SetAbnormalAndDirectBtnVisibility(); SetEWaybillInfo(); } /// 初始化物流明细信息 public void SetEWaybillInfo() { if(order_id == "3738794693820307200") { } if (this.ItemOrder?.latestEWaybills?.Count > 0 && !string.IsNullOrEmpty(ItemTransitOrderWithVoid?.express_2_waybill)) LatestTransitEWaybill = ItemOrder.latestEWaybills.FirstOrDefault(ew => ew.waybill_id == ItemTransitOrderWithVoid.express_2_waybill); else LatestTransitEWaybill = null; if (this.ItemOrder?.latestEWaybills?.Count > 0 && !string.IsNullOrEmpty(this.ItemOrder?.out_express_no)) LatestDirectEWaybill = ItemOrder.latestEWaybills.FirstOrDefault(ew => ew.waybill_id == this.ItemOrder?.out_express_no); else LatestDirectEWaybill = null; } public void UpdateOrderItemBuyButton() { var order_item = this; order_item.Shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ErpShopId == order_item.shop_id.ParseToString()); order_item.IsBuyGoodsBtnEnabled = false; if (order_item.BuyMap == null) { order_item.IsBuyGoodsBtnEnabled = true; order_item.BuyGoodsBtnTxt = "关联拍单"; order_item.BuyGoodsBtnBackColor = GlobalConfig.PurpleBrush100; order_item.BuyGoodsBtnColor = GlobalConfig.PurpleBrush; } else if (GlobalConfig.lstDangerItemWord.Any(d => order_item.title.Contains(d))) { order_item.IsBuyGoodsBtnEnabled = false; order_item.BuyGoodsBtnBackColor = GlobalConfig.RedTextBrush50; order_item.BuyGoodsBtnColor = GlobalConfig.RedTextBrush; order_item.BuyGoodsBtnTxt = "危险品不支持中转拍单"; } else if (Shop == null || (Shop?.LoginStatus != "登录成功" /*&& Shop?.Is29Supplier == null*/)) { order_item.IsBuyGoodsBtnEnabled = false; order_item.BuyGoodsBtnBackColor = GlobalConfig.RedTextBrush50; order_item.BuyGoodsBtnColor = GlobalConfig.RedTextBrush; order_item.BuyGoodsBtnTxt = "请登录店铺"; } else if (Shop?.LoginStatus == "登录成功" && Shop?.Is29Supplier == null) { order_item.IsBuyGoodsBtnEnabled = false; order_item.BuyGoodsBtnBackColor = GlobalConfig.OrangeBrush50; order_item.BuyGoodsBtnColor = GlobalConfig.OrangeBrush; order_item.BuyGoodsBtnTxt = "代发状态读取中请稍候"; } else if (Shop?.Is29Supplier == false) { order_item.IsBuyGoodsBtnEnabled = true; order_item.BuyGoodsBtnBackColor = GlobalConfig.RedTextBrush50; order_item.BuyGoodsBtnColor = GlobalConfig.RedTextBrush; order_item.BuyGoodsBtnTxt = "去店铺后台绑定代发"; } else { order_item.IsBuyGoodsBtnEnabled = true; order_item.BuyGoodsBtnTxt = "云仓拍单"; order_item.BuyGoodsBtnBackColor = GlobalConfig.PurpleBrush35; order_item.BuyGoodsBtnColor = GlobalConfig.PurpleBrush; } } } }