using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace BBWY.Client.Models
{
///
/// 采购方案
///
public class PurchaseScheme : NotifyObject
{
private decimal defaultCost;
private decimal realCost;
public long Id { get; set; }
public long ShopId { get; set; }
public string ProductId { get; set; }
public string SkuId { get; set; }
public decimal DefaultCost { get => defaultCost; set { Set(ref defaultCost, value); } }
public decimal RealCost { get => realCost; set { Set(ref realCost, value); } }
public string PurchaserId { get; set; }
public string PurchaserName { get; set; }
public string PurchaseProductId1 { get; set; }
public int PurchaseProductSkuCount1 { get; set; }
public string PurchaseProductId2 { get; set; }
public int PurchaseProductSkuCount2 { get; set; }
public string PurchaseProductId3 { get; set; }
public int PurchaseProductSkuCount3 { get; set; }
public string PurchaseProductId4 { get; set; }
public int PurchaseProductSkuCount4 { get; set; }
///
/// 采购方案的商品集合
///
public IList PurchaseSchemeProductList { get; set; }
public PurchaseScheme()
{
PurchaseSchemeProductList = new ObservableCollection();
}
public static PurchaseScheme Convert(PurchaseSchemeResponse apiModel)
{
var model = new PurchaseScheme()
{
Id = apiModel.Id,
ProductId = apiModel.ProductId,
SkuId = apiModel.SkuId,
DefaultCost = apiModel.DefaultCost ?? 0,
RealCost = apiModel.RealCost ?? 0,
PurchaserId = apiModel.PurchaserId,
PurchaserName = apiModel.PurchaserName
};
foreach (var apiProduct in apiModel.PurchaseSchemeProductList)
{
model.PurchaseSchemeProductList.Add(PurchaseSchemeProduct.Convert(apiProduct));
}
for (var i = 0; i < model.PurchaseSchemeProductList.Count; i++)
{
var purchaseProductId = model.PurchaseSchemeProductList[i].PurchaseProductId;
var purchaseProductSkuCount = model.PurchaseSchemeProductList[i].PurchaseSkuCount;
if (i == 0)
{
model.PurchaseProductId1 = purchaseProductId;
model.PurchaseProductSkuCount1 = purchaseProductSkuCount;
}
else if (i == 1)
{
model.PurchaseProductId2 = purchaseProductId;
model.PurchaseProductSkuCount2 = purchaseProductSkuCount;
}
else if (i == 2)
{
model.PurchaseProductId3 = purchaseProductId;
model.PurchaseProductSkuCount3 = purchaseProductSkuCount;
}
else if (i == 3)
{
model.PurchaseProductId4 = purchaseProductId;
model.PurchaseProductSkuCount4 = purchaseProductSkuCount;
}
}
return model;
}
}
}