增加app 版本管理

This commit is contained in:
2025-12-17 00:37:57 +08:00
parent 9d396fa96e
commit da8ac8a22b
12 changed files with 751 additions and 452 deletions

View File

@@ -3,187 +3,128 @@ using Atomx.Common.Entities;
namespace Atomx.Data.CacheServices
{
//public partial interface ICacheService
//{
// /// <summary>
// /// 获取可付款的货币类型和支付通道信息
// /// </summary>
// /// <param name="reload"></param>
// /// <returns></returns>
// Task<CurrencyChannelModel> GetCurrencyChannel(bool? reload = false);
public partial interface ICacheService
{
/// <summary>
/// 获取支持充值的货币信息
/// </summary>
/// <returns></returns>
Task<List<Currency>> GetDepositCurrencies();
// /// <summary>
// /// 获取支持充值的货币信息
// /// </summary>
// /// <returns></returns>
// Task<List<Currency>> GetDepositCurrencies();
/// <summary>
/// 获取所有可用的货币信息
/// </summary>
/// <param name="reload"></param>
/// <returns></returns>
Task<List<Currency>?> GetCurrencies(bool? reload = null);
// /// <summary>
// /// 获取所有可用的货币信息
// /// </summary>
// /// <param name="reload"></param>
// /// <returns></returns>
// Task<List<Currency>?> GetCurrencies(bool? reload = null);
/// <summary>
/// 通过ID获取或更新缓存
/// </summary>
/// <param name="id"></param>
/// <param name="data"></param>
/// <returns></returns>
Task<Currency> GetCurrenciesById(long id, Currency? data = null);
// /// <summary>
// /// 通过ID获取或更新缓存
// /// </summary>
// /// <param name="id"></param>
// /// <param name="data"></param>
// /// <returns></returns>
// Task<Currency> GetCurrenciesById(long id, Currency? data = null);
/// <summary>
/// 根据代码获取货币信息
/// </summary>
/// <param name="code"></param>
/// <returns></returns>
Task<Currency> GetCurrency(string code);
// /// <summary>
// /// 根据代码获取货币信息
// /// </summary>
// /// <param name="code"></param>
// /// <returns></returns>
// Task<Currency> GetCurrency(string code);
/// <summary>
/// 从缓存中删除数据
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task RemoveCurrencies(long id);
// /// <summary>
// /// 从缓存中删除数据
// /// </summary>
// /// <param name="id"></param>
// /// <returns></returns>
// Task RemoveCurrencies(long id);
}
public partial class CacheService : ICacheService
{
/// <summary>
/// 获取支持充值的货币信息
/// </summary>
/// <returns></returns>
public async Task<List<Currency>> GetDepositCurrencies()
{
var data = await GetCurrencies();
return data.Where(p => p.EnablePay).ToList();
}
//}
//public partial class CacheService : ICacheService
//{
// /// <summary>
// /// 获取可付款的货币类型和支付通道信息
// /// </summary>
// /// <param name="reload"></param>
// /// <returns></returns>
// public async Task<CurrencyChannelModel> GetCurrencyChannel(bool? reload = false)
// {
// var cacheData = await GetCacheAsync<CurrencyChannelModel>(CacheKeys.CurrencyChannel);
// bool needReload = reload.HasValue ? reload.Value : false;
// if (cacheData == null || needReload)
// {
// cacheData = new CurrencyChannelModel();
public async Task<List<Currency>?> GetCurrencies(bool? reload = null)
{
var cacheData = await GetCacheAsync<List<Currency>>(CacheKeys.Currencies);
if (cacheData == null || reload.HasValue)
{
var data = _dbContext.Currencies.Where(p => p.Enabled).ToList();
if (data != null)
{
cacheData = data;
await SetCacheAsync(CacheKeys.Currencies, cacheData);
}
}
return cacheData;
}
// var relation = _dbContext.CurrencyChannelRelations.ToList();
// var currency = _dbContext.Currencies.Where(p => p.EnablePay).ToList();
// var channels = _dbContext.PaymentChannels.Where(p => p.Status == (int)PaymentChannelStatus.Enable).ToList();
public async Task<Currency> GetCurrenciesById(long id, Currency? data = null)
{
var cacheData = await GetCurrencies();
if (data != null)
{
var currency = cacheData.SingleOrDefault(p => p.Id == id);
if (currency != null)
{
cacheData.Remove(currency);
cacheData.Add(data);
await SetCacheAsync(CacheKeys.Currencies, cacheData);
}
else
{
cacheData.Add(data);
await SetCacheAsync(CacheKeys.Currencies, cacheData);
}
return data;
}
else
{
var manufacturer = cacheData.SingleOrDefault(p => p.Id == id);
if (manufacturer != null)
{
return manufacturer;
}
return new Currency();
}
}
// cacheData.Currencies = currency;
// foreach (var item in relation)
// {
// var channel = channels.SingleOrDefault(p => p.Id == item.PayChannelId);
// if (channel != null)
// {
// var data = new CurrencyPaymentChannelModel()
// {
// Id = channel.Id,
// Config = channel.Config,
// CreateTime = channel.CreateTime,
// Description = channel.Description,
// DisplayOrder = channel.DisplayOrder,
// EndTime = item.EndTime,
// Extended = item.Extended,
// Name = channel.Name,
// Network = channel.Network,
// StartTime = item.StartTime,
// Status = channel.Status,
// TimeZone = item.TimeZone,
// Type = channel.Type,
// UpdateTime = channel.UpdateTime,
// CurrencyId = item.CurrencyId,
// Account = channel.Account,
// Title = channel.Title,
// };
// cacheData.CurrencyPaymentChannels.Add(data);
/// <summary>
/// 根据代码获取货币信息
/// </summary>
/// <param name="code"></param>
/// <returns></returns>
public async Task<Currency> GetCurrency(string code)
{
var cacheData = await GetCurrencies();
if (cacheData != null)
{
return cacheData.SingleOrDefault(p => p.CurrencyCode == code);
}
return new Currency();
}
// }
// }
// await SetCacheAsync(CacheKeys.CurrencyChannel, cacheData);
// }
// return cacheData;
// }
// /// <summary>
// /// 获取支持充值的货币信息
// /// </summary>
// /// <returns></returns>
// public async Task<List<Currency>> GetDepositCurrencies()
// {
// var data = await GetCurrencies();
// return data.Where(p => p.EnablePay).ToList();
// }
// public async Task<List<Currency>?> GetCurrencies(bool? reload = null)
// {
// var cacheData = await GetCacheAsync<List<Currency>>(CacheKeys.Currencies);
// if (cacheData == null || reload.HasValue)
// {
// var data = _dbContext.Currencies.Where(p => p.Enabled).ToList();
// if (data != null)
// {
// cacheData = data;
// await SetCacheAsync(CacheKeys.Currencies, cacheData);
// }
// }
// return cacheData;
// }
// public async Task<Currency> GetCurrenciesById(long id, Currency? data = null)
// {
// var cacheData = await GetCurrencies();
// if (data != null)
// {
// var manufacturer = cacheData.SingleOrDefault(p => p.Id == id);
// if (manufacturer != null)
// {
// cacheData.Remove(manufacturer);
// cacheData.Add(data);
// await SetCacheAsync(CacheKeys.Currencies, cacheData);
// }
// else
// {
// cacheData.Add(data);
// await SetCacheAsync(CacheKeys.Currencies, cacheData);
// }
// return data;
// }
// else
// {
// var manufacturer = cacheData.SingleOrDefault(p => p.Id == id);
// if (manufacturer != null)
// {
// return manufacturer;
// }
// return new Currency();
// }
// }
// /// <summary>
// /// 根据代码获取货币信息
// /// </summary>
// /// <param name="code"></param>
// /// <returns></returns>
// public async Task<Currency> GetCurrency(string code)
// {
// var cacheData = await GetCurrencies();
// if (cacheData != null)
// {
// return cacheData.SingleOrDefault(p => p.CurrencyCode == code);
// }
// return new Currency();
// }
// public async Task RemoveCurrencies(long id)
// {
// var cacheData = await GetCurrencies();
// if (cacheData != null)
// {
// var data = cacheData.SingleOrDefault(p => p.Id == id);
// if (data != null)
// {
// cacheData.Remove(data);
// await SetCacheAsync(CacheKeys.Currencies, cacheData);
// }
// }
// }
//}
public async Task RemoveCurrencies(long id)
{
var cacheData = await GetCurrencies();
if (cacheData != null)
{
var data = cacheData.SingleOrDefault(p => p.Id == id);
if (data != null)
{
cacheData.Remove(data);
await SetCacheAsync(CacheKeys.Currencies, cacheData);
}
}
}
}
}