MES-ETL/MesETL.App/Cache/CacheKeysFunc.cs
2024-02-08 17:38:23 +08:00

33 lines
1.2 KiB
C#

using MesETL.App.Const;
namespace MesETL.App.Cache;
#nullable disable
public static class CacheKeysFunc
{
/// <summary>
/// Order表 由OrderNo获取对应的CompanyID
/// </summary>
/// <param name="orderNo"></param>
/// <returns></returns>
public static string Order_OrderNo_CompanyID(string orderNo) => BuildCacheKey(TableNames.Order, "OrderNo", orderNo, "CompanyID");
/// <summary>
/// OrderBlockPlan表 由ID获取对应的CompanyID
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public static string OrderBlockPlan_ID_CompanyID(string id) => BuildCacheKey(TableNames.OrderBlockPlan, "ID", id, "CompanyID");
/// <summary>
/// OrderProcess表 由ID 获取对应的ShardKey
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public static string OrderProcess_ID_ShardKey(string id) => BuildCacheKey(TableNames.OrderProcess, "ID", id, "ShardKey");
// 数据缓存键格式为[TableName]-[ColumnName@ColumnValue]-[CacheColumnName]
static string BuildCacheKey(string tableName, string columnName, string columnValue, string cacheColumnName)
=> $"{tableName}-{columnName}@{columnValue}-{cacheColumnName}";
}