291 lines
10 KiB
C#
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"
|
|
|
|
}
|
|
}
|