XFEExtension.NetCore.ServerInteractive
[DLL] Server interaction extension, including user identity verification and querying in conjunction with AutoConfig
关注
0
Fork
0
Star
0
返回提交历史
Renamed
XFEExtension.NetCore.ServerInteractive/Utilities/DataTable/XFEDataListTable.cs
+8
-8
Modified
XFEExtension.NetCore.ServerInteractive/Utilities/DataTable/XFEDataTableManagerBuilder.cs
+2
-2
XFEstudio/XFEExtension.NetCore.ServerInteractive
优化部分命名
ca2c558
代码差异
2 个文件
+10
-10
@@ -17,7 +17,7 @@ namespace XFEExtension.NetCore.ServerInteractive.Utilities.DataTable;
17
17
/// XFE数据表格
18
18
/// </summary>
19
19
/// <typeparam name="T"></typeparam>
20
public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
20
public class XFEDataListTable<T> : IXFEDataTable where T : IIdModel
21
21
{
22
22
/// <inheritdoc/>
23
23
public Func<IEnumerable<EncryptedUserLoginModel>> GetEncryptedUserLoginModelFunction { get; set; } = () => [];
@@ -61,7 +61,7 @@ public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
61
61
/// <summary>
62
62
/// 创建列表并手动设置Get Set方法等
63
63
/// </summary>
64
public XFEDataTable() => TableNameInRequest = $"{TableName[0]}".ToLower() + TableName[1..];
64
public XFEDataListTable() => TableNameInRequest = $"{TableName[0]}".ToLower() + TableName[1..];
65
65
66
66
/// <summary>
67
67
/// 根据指定type自动设置Get Set方法
@@ -70,7 +70,7 @@ public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
70
70
/// <remarks>
71
71
/// 对于自动设置Get Set方法的Table,请确保配置文件使用XFEProfile创建ProfileList,属性名称为XXXTable
72
72
/// </remarks>
73
public XFEDataTable(Type type)
73
public XFEDataListTable(Type type)
74
74
{
75
75
TableNameInRequest = $"{TableName[0]}".ToLower() + TableName[1..];
76
76
var property = type.GetProperty($"{typeof(T).Name}Table", BindingFlags.Public | BindingFlags.Static);
@@ -132,7 +132,7 @@ public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
132
132
switch (execute)
133
133
{
134
134
case "get":
135
Console.Write($"【{r.Args.ClientIP}】获取{TableShowName}列表请求");
135
Console.Write($"获取{TableShowName}列表请求");
136
136
UserHelper.ValidatePermission(requestJsonNode["session"], requestJsonNode["deviceInfo"], r.Args.ClientIP, GetPermissionLevel, GetEncryptedUserLoginModelFunction(), GetUsersFunction(), r);
137
137
List<T> tableList = [.. GetTableFunction()];
138
138
var pageCount = requestJsonNode["pageCount"]?.GetValue<int>() ?? -1;
@@ -157,7 +157,7 @@ public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
157
157
}
158
158
break;
159
159
case "add":
160
Console.Write($"【{r.Args.ClientIP}】添加{TableShowName}请求");
160
Console.Write($"添加{TableShowName}请求");
161
161
var item = JsonSerializer.Deserialize<T>(Convert.FromBase64String(requestJsonNode["data"]?.ToString() ?? string.Empty), JsonSerializerOptions);
162
162
if (item is null)
163
163
{
@@ -177,7 +177,7 @@ public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
177
177
r.Args.Close();
178
178
break;
179
179
case "remove":
180
Console.Write($"【{r.Args.ClientIP}】删除{TableShowName}请求");
180
Console.Write($"删除{TableShowName}请求");
181
181
var id = requestJsonNode["id"]?.ToString();
182
182
Console.Write($":{id}");
183
183
UserHelper.ValidatePermission(requestJsonNode["session"], requestJsonNode["deviceInfo"], r.Args.ClientIP, RemovePermissionLevel, GetEncryptedUserLoginModelFunction(), GetUsersFunction(), r);
@@ -190,7 +190,7 @@ public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
190
190
r.Args.Close();
191
191
break;
192
192
case "change":
193
Console.Write($"【{r.Args.ClientIP}】更改{TableShowName}请求");
193
Console.Write($"更改{TableShowName}请求");
194
194
item = JsonSerializer.Deserialize<T>(Convert.FromBase64String(requestJsonNode["data"]?.ToString() ?? string.Empty), JsonSerializerOptions);
195
195
if (item is null)
196
196
{
@@ -208,7 +208,7 @@ public class XFEDataTable<T> : IXFEDataTable where T : IIdModel
208
208
r.Args.Close();
209
209
break;
210
210
default:
211
Console.WriteLine($"[ERROR]【{r.Args.ClientIP}】意料之外的方法:{execute}");
211
Console.WriteLine($"[ERROR] 意料之外的方法:{execute}");
212
212
await r.Args.ReplyAndClose($"意料之外的方法:{execute}", HttpStatusCode.BadRequest);
213
213
break;
214
214
}
@@ -38,7 +38,7 @@ public abstract class XFEDataTableManagerBuilder
38
38
/// <typeparam name="T">数据类型</typeparam>
39
39
/// <param name="xFEDataTable">数据表</param>
40
40
/// <returns></returns>
41
public XFEDataTableManagerBuilder AddTable<T>(XFEDataTable<T> xFEDataTable) where T : IIdModel
41
public XFEDataTableManagerBuilder AddTable<T>(XFEDataListTable<T> xFEDataTable) where T : IIdModel
42
42
{
43
43
_dataTableList.Add(xFEDataTable);
44
44
ExecuteList.AddRange([$"get_{xFEDataTable.TableNameInRequest}", $"add_{xFEDataTable.TableNameInRequest}", $"change_{xFEDataTable.TableNameInRequest}", $"remove_{xFEDataTable.TableNameInRequest}"]);
@@ -57,7 +57,7 @@ public abstract class XFEDataTableManagerBuilder
57
57
/// <param name="getPermissionLevel">获取数据所需的最小权限</param>
58
58
/// <param name="jsonSerializerOptions">JSON转换器</param>
59
59
/// <returns></returns>
60
public XFEDataTableManagerBuilder AddTable<T, TP>(string tableShowName, int addPermissionLevel, int removePermissionLevel, int changePermissionLevel, int getPermissionLevel, JsonSerializerOptions? jsonSerializerOptions = null) where T : IIdModel where TP : XFEProfile => AddTable(new XFEDataTable<T>(typeof(TP))
60
public XFEDataTableManagerBuilder AddTable<T, TP>(string tableShowName, int addPermissionLevel, int removePermissionLevel, int changePermissionLevel, int getPermissionLevel, JsonSerializerOptions? jsonSerializerOptions = null) where T : IIdModel where TP : XFEProfile => AddTable(new XFEDataListTable<T>(typeof(TP))
61
61
{
62
62
TableShowName = tableShowName,
63
63
AddPermissionLevel = addPermissionLevel,