- 用户登录/注销;
- 用户管理;
- 角色管理;
- 权限管理;
- 用户与角色绑定;
- 角色与权限绑定;
- 菜单管理;
- 菜单与角色绑定;
- 访问日志查看;
前端基于 Angular 实现, 使用到的类库主要有:
Angular
, 已开启 TypeScript 严格模式以及 Angular 的严格模板检查;BootStrap
以及Bootstrap-icons
;ng-bootstrap
;Angular Component/Material
;
Angular 多项目结构, projects
提供了多个三个项目,分别是:
web
针对 PC 浏览器的后台管理界面, 使用ng-bootstrap
实现;handset
针对手持设备的界面, 比较简单, 仅作为示例, 使用Angular Component/Material
实现;app-shared
在web
和handset
两个项目**享的组件和服务;
后端实现基于 .NET 6 实现, 使用到的类库有:
NHibernate
.NET 平台的老牌 ORM , 存在多年一直都在更新维护, 非常稳定, 长期维护项目的首选;NHibernate.AspNetCore.Identity
基于 NHibernate 的 Identity 实现, 完全不依赖微软的 EntityFramework ;Dapper
灵活的 SQL 查询, 弥补 NHibernate 提供的 Linq 查询的不足;AutoMapper
Swashbuckle.AspNetCore
为 API 提供基于 Swagger UI 界面;
默认是 PostgreSQL , database 目录下的脚本也是基于 PostgreSQL 的; 如果需要创建其它类型的数据库, 则可以根据现有的 sql 语句进行修改;
为了保证开箱可用, 或许以后会切换为 SQLite 数据库;
- 编译为 Docker 镜像进行部署;
- 编译为单个可执行文件部署;
请参考 下载和使用 。