Files
29WxOrder/AllBase/Model/Result/PddBuyerAfterSaleLiteInfo.cs
T

291 lines
10 KiB
C#

using AllBase.Model.MvvmBaseClasses;
using NaiBa.Util.Extension;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AllBase.Model.Result
{
public class PddBuyerAfterSaleLiteInfo : PropertyNotifyObject
{
public string ShopOrderIdStr
{
get { return this.GetValue(x => x.ShopOrderIdStr); }
set { this.SetValue(x => x.ShopOrderIdStr, value); }
}
public string ShopOrderSkuIdStr
{
get { return this.GetValue(x => x.ShopOrderSkuIdStr); }
set { this.SetValue(x => x.ShopOrderSkuIdStr, value); }
}
public string ShopOrderSkuNameStr
{
get { return this.GetValue(x => x.ShopOrderSkuNameStr); }
set { this.SetValue(x => x.ShopOrderSkuNameStr, value); }
}
/// <summary>
/// 店铺售后订单状态 无售后或售后关闭为空 否则为店铺售后
/// </summary>
public string ShopOrderRefundStr
{
get { return this.GetValue(x => x.ShopOrderRefundStr); }
set { this.SetValue(x => x.ShopOrderRefundStr, value); }
}
public string TransitBuyerOrderRefundStatus
{
get { return this.GetValue(x => x.TransitBuyerOrderRefundStatus); }
set { this.SetValue(x => x.TransitBuyerOrderRefundStatus, value); }
}
/// <summary>
/// 中转仓仓库编号
/// </summary>
public string TransitWarehouseIdStr
{
get { return this.GetValue(x => x.TransitWarehouseIdStr); }
set { this.SetValue(x => x.TransitWarehouseIdStr, value); }
}
/// <summary>
/// 拍单物流公司编码
/// </summary>
public string Express1CompanyStr
{
get { return this.GetValue(x => x.Express1CompanyStr); }
set { this.SetValue(x => x.Express1CompanyStr, value); }
}
/// <summary>
/// 拍单物流
/// </summary>
public string Express1WaybillStr
{
get { return this.GetValue(x => x.Express1WaybillStr); }
set { this.SetValue(x => x.Express1WaybillStr, value); }
}
/// <summary>
/// 中转仓物流公司编码(提前取号)
/// </summary>
public string Express2CompanyStr
{
get { return this.GetValue(x => x.Express2CompanyStr); }
set { this.SetValue(x => x.Express2CompanyStr, value); }
}
/// <summary>
/// 中转仓物流编码(提前取号)
/// </summary>
public string Express2WaybillStr
{
get { return this.GetValue(x => x.Express2WaybillStr); }
set { this.SetValue(x => x.Express2WaybillStr, value); }
}
/// <summary>
/// 中转仓状态:"0" 未使用,"1" 已创建,"2" 创建失败,"3" 处理中(业务方根据此字段处理中转流程)
/// 使用此字段判断中转仓库是否已取号
/// </summary>
public string TransferWareHouseStatus
{
get { return this.GetValue(x => x.TransferWareHouseStatus); }
set { this.SetValue(x => x.TransferWareHouseStatus, value); }
}
/// <summary>
/// 微信订单作废状态 0 未作废 1已作废 2作废失败
/// </summary>
public string WxOrderVoidStatus
{
get { return this.GetValue(x => x.WxOrderVoidStatus); }
set { this.SetValue(x => x.WxOrderVoidStatus, value); }
}
/// <summary>
/// 1 正常取号 2 提前取号 3 已更正
/// </summary>
public string PreAllocatedOrderNoStr
{
get { return this.GetValue(x => x.PreAllocatedOrderNoStr); }
set { this.SetValue(x => x.PreAllocatedOrderNoStr, value); }
}
/// <summary>
/// 处理中, "已取号(更正)", 已取号, 提前取号, 取号失败
/// </summary>
[JsonIgnore]
public string TransitOrderStatus
{
get
{
string wareHouseStatusStr = TransferWareHouseStatus == "3" ? " 仓库处理中" : "";
//if (TransferWareHouseStatus == "3")
//{
// return "处理中";
//}
// 不考虑仓库取号失败情况,只要取号状态不是3或者1,且有仓库订单记录,就处理取号
//if (TransferWareHouseStatus == "2")
//{
// return "取号失败";
//}
if (PreAllocatedOrderNoStr == "3")
{
return "已取号(更正)";
}
if (PreAllocatedOrderNoStr == "1")
{
//if (OrderTime >= new DateTime(2026, 6, 29))
if (orderDate >= 260629)
return "已取号";
else
return "提前取号" + wareHouseStatusStr;
}
if (PreAllocatedOrderNoStr == "2")
{
return "提前取号" + wareHouseStatusStr;
}
//if (!TransitWarehouseIdStr.IsNullOrEmpty() && OrderTime < new DateTime(2026, 6, 29))
if (!TransitWarehouseIdStr.IsNullOrEmpty() && orderDate < 260629)
{
return "提前取号(旧订单)" + wareHouseStatusStr;
}
if (TransitWarehouseIdStr.IsNullOrEmpty())
{
return "非中转仓订单";
}
return "";
}
set { }
}
/// <summary>
/// 微信小店订单创建时间
/// </summary>
public DateTime WxOrderCreateTime
{
get { return this.GetValue(x => x.WxOrderCreateTime); }
set { this.SetValue(x => x.WxOrderCreateTime, value); }
}
/// <summary>
/// 中转单创建时间
/// </summary>
public DateTime TransitCreateTime
{
get { return this.GetValue(x => x.TransitCreateTime); }
set { this.SetValue(x => x.TransitCreateTime, value); }
}
/// <summary>
/// 中转单取号时间
/// </summary>
public DateTime TransitPickupTime
{
get { return this.GetValue(x => x.TransitPickupTime); }
set { this.SetValue(x => x.TransitPickupTime, value); }
}
public string ProdInfoStr
{
get
{
var info = listItemGoodsVO == null ? "" : listItemGoodsVO.goodsName + " " + listItemGoodsVO.spec + " x" + listItemGoodsVO.goodsNumber; // 商品信息
return info;
}
set
{
}
}
public decimal? OrderAmountValue
{
get
{
return listItemAmountVO.orderAmount * 0.01m;
}
set { }
}
public decimal? RefundAmountValue
{
get
{
return listItemAmountVO.refundAmount * 0.01m;
}
set { }
}
public string AfterSaleStatusStr
{
get
{
return listItemStatusVO.statusText;
}
set { }
}
public string sendStatus { get; set; } = "";
public string afterSaleSendStatus { get; set; } = "";
public string buyerId { get; set; } // 买手Id
public string buyerName { get; set; } // 买手名称
public string orderSn
{
get
{
var detailPage = listItemExtraVO.navToDetailPageUrl;
return BaseRegex.GetStringQuery(ref detailPage, "order_sn");
}
set { }
}
public int? orderDate { get { return orderSn.Split('-').FirstOrDefault().ParseToInt(); } set { } }
public long? afterSalesId { get; set; } // 20129688312436,
public ListItemExtraVO listItemExtraVO { get; set; }
public ListItemMallVO listItemMallVO { get; set; }
public ListItemStatusVO listItemStatusVO { get; set; }
public ListItemGoodsVO listItemGoodsVO { get; set; }
public ListItemAmountVO listItemAmountVO { get; set; }
}
public class ListItemAmountVO
{
public string orderAmountTitle { get; set; } // "实付:",
public int? orderAmount { get; set; } // 1580,
public object payLaterAmountTitle { get; set; } // null,
public object payLaterAmount { get; set; } // null,
public string refundAmountTitle { get; set; } // "退款金额:",
public int? refundAmount { get; set; } // 1580,
public object refundAmountText { get; set; } // null,
public bool? useCoupon { get; set; } // false
}
public class ListItemGoodsVO
{
public string goodsImage { get; set; } // "https://img.pddpic.com/gaudit-image/2026-01-08/a3f431dd2be815640a2a41ed9a6cae5f.jpeg",
public string goodsName { get; set; } // "假发男士爸爸中老年自然轻手织男士假发道具中年",
public string spec { get; set; } // "",
public int? goodsPrice { get; set; } // 1580,
public int? goodsNumber { get; set; } // 1,
public object richTextList { get; set; } // null
}
public class ListItemStatusVO
{
public string statusText { get; set; } // "退款成功"
}
public class ListItemMallVO
{
public string mallName { get; set; } // "江霞假发",
public string mallLogo { get; set; } // "http://t16img.yangkeduo.com/pdd_ims/img_check/v2/E6EDFF2D6EE40120200112172428556/9824d59f68694de79252d95c62828c61.png",
public string mallTagLink { get; set; } // null,
public string pddRoute { get; set; } // "mall_page.html?mall_id=891600087&msn=tytnfyyplkflxcwnke2jkevprq_axbuy&_sop_rcto=YWKMWyWgOwRhdOxkIstGcbATTuXTx_3fIjo"
}
public class ListItemExtraVO
{
public string navToDetailPageUrl { get; set; } // "/complaints_new_detail.html?after_sales_id=20129688312436&order_sn=260409-566440793722665"
}
}