//using Atomx.Common.Entities; //namespace Atomx.Data.CacheServices //{ // public partial interface ICacheService // { // /// // /// 获取产品属性值缓存列表 // /// // /// // /// // Task> GetProductAttributes(List? data = null); // /// // /// 通过ID获取或更新缓存 // /// // /// // /// // /// // Task GetProductAttributeById(long id, ProductAttribute? data = null); // /// // /// 从缓存中删除数据 // /// // /// // /// // Task RemoveProductAttribute(long id); // /// // /// 获取产品预设值 // /// // /// // /// // Task> GetProductAttributeOptions(long attributeId, List? data = null); // /// // /// 通过ID获取或更新缓存 // /// // /// // /// // /// // Task GetProductAttributeOptionById(long attributeId, long id, ProductAttributeOption? data = null); // /// // /// 从缓存中删除数据 // /// // /// // /// // Task RemoveProductAttributeOption(long attributeId, long id); // /// // /// 根据ID获取属性树结构 // /// // /// // /// // /// // Task GetAttributeTree(long attributeId); // } // public partial class CacheService : ICacheService // { // public async Task> GetProductAttributes(List? data = null) // { // var cacheData = await GetCacheAsync>(CacheKeys.ProductAttributes); // if (data != null) // { // cacheData = data; // await SetCacheAsync(CacheKeys.ProductAttributes, cacheData); // } // else // { // if (cacheData == null) // { // return new List(); // } // } // return cacheData; // } // public async Task GetProductAttributeById(long id, ProductAttribute? data = null) // { // var cacheData = await GetProductAttributes(); // if (data != null) // { // var attribute = cacheData.SingleOrDefault(p => p.Id == id); // if (attribute != null) // { // cacheData.Remove(attribute); // cacheData.Add(data); // await SetCacheAsync(CacheKeys.ProductAttributes, cacheData); // } // else // { // cacheData.Add(data); // await SetCacheAsync(CacheKeys.ProductAttributes, cacheData); // } // return data; // } // else // { // var attribute = cacheData.SingleOrDefault(p => p.Id == id); // if (attribute != null) // { // return attribute; // } // return new ProductAttribute(); // } // } // public async Task RemoveProductAttribute(long id) // { // var cacheData = await GetProductAttributes(); // if (cacheData != null) // { // var data = cacheData.SingleOrDefault(p => p.Id == id); // if (data != null) // { // cacheData.Remove(data); // await SetCacheAsync(CacheKeys.ProductAttributes, cacheData); // } // } // } // /// // /// 获取产品预设值 // /// // /// // /// // public async Task> GetProductAttributeOptions(long attributeId, List? data = null) // { // var cacheData = await GetCacheAsync>($"{CacheKeys.ProductAttributeOptionsPrefix}{attributeId}"); // if (data != null) // { // cacheData = data; // await SetCacheAsync($"{CacheKeys.ProductAttributeOptionsPrefix}{attributeId}", cacheData); // } // else // { // if (cacheData == null) // { // return new List(); // } // } // return cacheData; // } // /// // /// 通过ID获取或更新缓存 // /// // /// // /// // /// // public async Task GetProductAttributeOptionById(long attributeId, long id, ProductAttributeOption? data = null) // { // var cacheData = await GetProductAttributeOptions(attributeId); // if (data != null) // { // var attribute = cacheData.SingleOrDefault(p => p.Id == id); // if (attribute != null) // { // cacheData.Remove(attribute); // cacheData.Add(data); // await SetCacheAsync($"{CacheKeys.ProductAttributeOptionsPrefix}{attributeId}", cacheData); // } // else // { // cacheData.Add(data); // await SetCacheAsync($"{CacheKeys.ProductAttributeOptionsPrefix}{attributeId}", cacheData); // } // return data; // } // else // { // var attribute = cacheData.SingleOrDefault(p => p.Id == id); // if (attribute != null) // { // return attribute; // } // return new ProductAttributeOption(); // } // } // /// // /// 从缓存中删除数据 // /// // /// // /// // public async Task RemoveProductAttributeOption(long attributeId, long id) // { // var cacheData = await GetProductAttributeOptions(attributeId); // if (cacheData != null) // { // var data = cacheData.SingleOrDefault(p => p.Id == id); // if (data != null) // { // cacheData.Remove(data); // await SetCacheAsync($"{CacheKeys.ProductAttributeOptionsPrefix}{attributeId}", cacheData); // } // } // } // /// // /// 获取属性结构缓存 // /// // /// // /// // public async Task GetAttributeTree(long attributeId) // { // var attribute = await GetProductAttributeById(attributeId); // var options = await GetProductAttributeOptions(attributeId); // if (attribute.Id ==0) // { // attribute = _dbContext.ProductAttributes.SingleOrDefault(p => p.Id == attributeId); // if (attribute != null) // { // await GetProductAttributeById(attribute.Id, attribute); // } // } // if (attribute == null) // { // return new AttributeTreeModel(); // } // if (!options.Any()) // { // options = _dbContext.ProductAttributeOptions.Where(p => p.AttributeId == attributeId).ToList(); // if (options.Any()) // { // await GetProductAttributeOptions(attribute.Id, options); // } // } // var data = new AttributeTreeModel() // { // Id = attribute.Id, // Name = attribute.Name, // ProductTypeId = attribute.ProductTypeId, // PredefinedValues = options // }; // return data; // } // } //}