using CommunityToolkit.Mvvm.ComponentModel; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; namespace BBWYB.Client.Models { /// /// 采购方案 /// public class PurchaseScheme : ObservableObject { 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 { SetProperty(ref defaultCost, value); } } public decimal RealCost { get => realCost; set { SetProperty(ref realCost, value); } } //public string PurchaserId { get; set; } //public string PurchaserId2 { get; set; } public string PurchaserName { get; set; } //public string PurchaserLocation { 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 Platform PurchasePlatform { get; set; } /// /// 最后采购时间 /// public DateTime? LastPurchaseTime { get; set; } /// /// 采购方案的商品集合 /// public IList PurchaseSchemeProductList { get; set; } public List PurchaserList { get; set; } public PurchaseScheme() { PurchaseSchemeProductList = new ObservableCollection(); PurchaserList = new List(); } /// /// 是否转换方案中已选中的sku /// /// /// /// 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, //PurchaserLocation = apiModel.PurchaserLocation, //PurchasePlatform = apiModel.PurchasePlatform }; foreach (var p in apiModel.PurchaserList) { model.PurchaserList.Add(p); } model.PurchaserName = model.PurchaserList.Count() == 1 ? model.PurchaserList[0].Name : $"{model.PurchaserList[0].Name}等{model.PurchaserList.Count()}个采购商"; 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; } } }