lin-cms-dotnetcore 计划处理问题
luoyunchong opened this issue · 3 comments
0.3.0系统权限模块更新
- lin_permission 权限表,本系统通过反射在系统初次启动时,启动异步任务,将不存在的权限新增到此表中。
- lin_group_permission 分组权限表,用于分组与权限表的关联
- lin_user_group 用户分组表。用于用户和分组表的关联。可配置一个用户属于多个分组。
- lin_user_identity 用户授权信息表,用于存储不同登录类型的用户信息,如用户名、第三方应用快速登录(微信、QQ、GitHub、Gitee)的登录
完整的表结构文档: https://igeekfan.gitee.io/vovo-docs/dotnetcore/lin-cms/table.html
功能特性更新
- Azure Devops CI/CD构建
- GitHub Action实现 GitHub Gitee代码同步
- .Net Core结合AspNetCoreRateLimit实现限流
- 方法级别权限控制
- 社交账号管理:支持多种第三社交账号登录,不干涉原用户数据,实现第三方账号管理
- 多语言
- Freesql,管理数据库多语言方案
- 全局敏感词处理
- 日志记录,方便线上排查错误
- 支持多种数据库,并测试,
- Mysql
- Postgresql
- Sql Server
- SQlite
- 增加JWT登录,刷新token,支持可配置,由于ids4带来的复杂度,上手比较难
- https://github.com/luoyunchong/lin-cms-dotnetcore/tree/master/src/LinCms.Application/Cms/Account
"Service": {
"Name": "LinCms.Web",
"IdentityServer4": false,
"GrantType": "password",
"ClientId": "lin-cms-dotnetcore-client-id",
"ClientSecret": "lin-cms-dotnetcore-client-secrets",
"Authority": "https://localhost:5003",
"UseHttps": false
},
- RateLimit限流,支持降级,即不强依赖Redis,可配置使用内置缓存对象
- CAP不强依赖RabbitMQ,可使用内存方式。
- LinCms.Scaffolding代码生成器
功能增强及bug
- 1.github快速登录的BUG
主要是docker部署后,然后通过nginx反向代理,配置 ssl,但request.Scheme得到的还是http,而不是https。配置Github上的地址为http://bamocore.cn/ - 2. qq快速登录,主要是申请时,选的回调域名是 https://api.igeekfan.cn/
- 3. 文章评论中:回复别人后,关闭回复状态。
- 4. 事务问题:有时还是会提示(嵌套性事务,异步(必须加await))
[11:37:19 ERR] Connection id "0HLVN2V9CD1C8", Request id "0HLVN2V9CD1C8:00000001": An unhandled exception was thrown by the application. <s:Microsoft.AspNetCore.Server.Kestrel>
System.InvalidOperationException: This MySqlConnection is already in use. See https://fl.vu/mysql-conn-reuse
at FreeSql.UnitOfWorkManager.Dispose()
at Autofac.Core.Disposer.DisposeAsync(Boolean disposing)
at Autofac.Core.Lifetime.LifetimeScope.DisposeAsync(Boolean disposing)
at Autofac.Extensions.DependencyInjection.AutofacServiceProvider.DisposeAsync()
at Autofac.Extensions.DependencyInjection.AutofacServiceScope.DisposeAsync()
at Microsoft.AspNetCore.Http.Features.RequestServicesFeature.g__Awaited|9_0(RequestServicesFeature servicesFeature, ValueTask vt)
atMicrosoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.FireOnCompletedAwaited(Task currentTask, Stack`1 onCompleted)
- 5. 评论增加emoji选择,文章支持表情等字符
- 6. 支持富文本编辑器。
- 7. 用户关闭评论时,无法对随笔进行评论
- 8. 实现一个基于FreeSql的数据存储的本地化
- 参考https://github.com/aspnet/Entropy/tree/master/samples/Localization.EntityFramework
- 类库所在路径 https://github.com/luoyunchong/lin-cms-dotnetcore/tree/master/framework/src/IGeekfan.Localization.FreeSql
- 9. 分组列表信息,显示是不是静态角色。(静态角色不可删除)
- 注册功能增强,验证用户邮件,可根据邮件找回密码。
- 权限列表,显示后台路由