实现主从表结构生成;

提取企业版共用组件AuthForm、AuthTable、AuthSelect;
修复大量已知Bug
This commit is contained in:
yubaolee
2021-09-05 21:37:12 +08:00
parent 4d7af5bedf
commit 3c20deb3df
19 changed files with 2792 additions and 1270 deletions

View File

@@ -33,9 +33,18 @@ namespace OpenAuth.App
public void Update(AddOrUpdateResReq obj)
{
var user = _auth.GetCurrentUser().User;
UnitWork.Update<Category>(u => u.Id == obj.Id, u => new Category
UnitWork.Update<Resource>(u => u.Id == obj.Id, u => new Resource
{
Name = obj.Name,
Disable = obj.Disable,
CascadeId = obj.CascadeId,
AppId = obj.AppId,
AppName = obj.AppName,
ParentId = obj.ParentId,
ParentName = obj.ParentName,
TypeId = obj.TypeId,
TypeName = obj.TypeName,
Description = obj.Description,
UpdateTime = DateTime.Now,
UpdateUserId = user.Id,
UpdateUserName = user.Name
@@ -57,11 +66,10 @@ namespace OpenAuth.App
throw new CommonException("登录已过期", Define.INVALID_TOKEN);
}
var properties = loginContext.GetProperties("Resource");
if (properties == null || properties.Count == 0)
var columnFields = loginContext.GetTableColumns("Resource");
if (columnFields == null || columnFields.Count == 0)
{
throw new Exception("当前登录用户没有访问该模块字段的权限,请联系管理员配置");
throw new Exception("请在代码生成界面配置Resource表的字段属性");
}
@@ -77,8 +85,8 @@ namespace OpenAuth.App
resources = resources.Where(u => u.AppId == request.appId);
}
var propertyStr = string.Join(',', properties.Select(u => u.Key));
result.columnHeaders = properties;
var propertyStr = string.Join(',', columnFields.Select(u => u.ColumnName));
result.columnFields = columnFields;
result.data = resources.OrderBy(u => u.TypeId)
.Skip((request.page - 1) * request.limit)
.Take(request.limit).Select($"new ({propertyStr})");