using SqlSugar;
using System;
using System.Collections.Generic;
using System.Text;
namespace ReZero.SuperAPI
{
public class DataModel
{
#region Core
public ActionType ActionType { get; set; }
public object? Data { get; set; }
public long TableId { get; set; }
public long DataBaseId { get; set; }
public MyMethodInfo? MyMethodInfo { get; set; }
public string? Sql { get; set; }
public SqlResultType? ResultType { get; set; }
public string? TableColumns { get; set; }
///
/// 存储原始的JSON数据,用于后续处理
///
public string? RawJsonData { get; set; }
#endregion
#region Paremters
public List? DefaultValueColumns { get; set; }
public List? OrderDynamicParemters { get; set; }
public List? OrderByFixedParemters { get; set; }
public List? MergeOrderByFixedParemters { get; set; }
public List? DefaultParameters { get; set; }
public List? MergeDefaultParameters { get; set; }
public DataModelPageParameter? CommonPage { get; set; }
public DataModelTreeParameter? TreeParameter { get; set; }
public List? JoinParameters { get; set; }
public List? SelectParameters { get; set; }
public List? GroupParemters { get; set; }
#endregion
#region Other
[Navigate(NavigateType.OneToMany, nameof(TableId))]
public ZeroEntityInfo? MasterEntityInfo { get; set; }
public object? OutPutData { get; set; }
public long ApiId { get; set; }
public List? Columns { get; set; }
public WhereRelation? WhereRelation { get; set; }
public string? WhereRelationTemplate { get; set; }
public string? CurrentDataString { get; set; }
#endregion
#region Http
internal object? ServiceProvider { get; set; }
internal Dictionary? ClaimList { get; set; } = new Dictionary();
#endregion
}
}