步步为盈
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

114 lines
2.9 KiB

using System;
namespace BBWY.Client.Models
{
public class OrderCostResponse
{
public string OrderId { get; set; }
/// <summary>
/// 平台扣点金额
/// </summary>
public decimal PlatformCommissionAmount { get; set; }
/// <summary>
/// 平台扣点百分比
/// </summary>
public decimal PlatformCommissionRatio { get; set; }
/// <summary>
/// 优惠金额
/// </summary>
public decimal PreferentialAmount { get; set; }
/// <summary>
/// 毛利
/// </summary>
public decimal Profit { get; set; }
/// <summary>
/// 成本毛利率
/// </summary>
public decimal ProfitRatio
{
get
{
if (SDCommissionAmount > 0 || SDOrderAmount > 0)
return TotalCost == 0 ? 0 : Math.Round(Profit / TotalCost * 100, 2);
return PurchaseAmount == 0 ? 0 : Math.Round(Profit / PurchaseAmount * 100, 2);
}
}
/// <summary>
/// 采购金额
/// </summary>
public decimal PurchaseAmount { get; set; } = 0.00M;
/// <summary>
/// 发货快递费
/// </summary>
public decimal DeliveryExpressFreight { get; set; } = 0.00M;
/// <summary>
/// 是否手动编辑过成本
/// </summary>
public bool IsManualEdited { get; set; }
/// <summary>
/// 是否为预估成本
/// </summary>
public bool IsEstimateCost { get; set; } = false;
/// <summary>
/// 刷单佣金
/// </summary>
public decimal SDCommissionAmount { get; set; } = 0.00M;
/// <summary>
/// 刷单号费
/// </summary>
public decimal SDOrderAmount { get; set; } = 0.00M;
/// <summary>
/// 退款金额
/// </summary>
public decimal RefundAmount { get; set; } = 0.00M;
/// <summary>
/// 退款采购金额
/// </summary>
public decimal RefundPurchaseAmount { get; set; } = 0.0M;
/// <summary>
/// 售后总成本
/// </summary>
public decimal AfterTotalCost { get; set; } = 0.0M;
/// <summary>
/// 售前成本
/// </summary>
public decimal BeforeTotalCost
{
get
{
return PurchaseAmount + DeliveryExpressFreight;
}
}
/// <summary>
/// 成本总计
/// </summary>
public decimal TotalCost
{
get
{
return SDCommissionAmount + SDOrderAmount +
PlatformCommissionAmount + (PurchaseAmount - RefundPurchaseAmount) +
DeliveryExpressFreight +
AfterTotalCost;
}
}
}
}