Go to file
zzh a4d7c89e44 fix: resolve track ApiCode from product and channel publish snapshots
Read SupplierCode from rules publish snapshots before falling back to live itfx metadata so UpsertSmallBag gets apiCode at order create time.
2026-07-23 10:49:19 +08:00
.github/workflows Update Dockerfile path in CI workflow 2026-03-20 15:40:53 +08:00
.vscode build 2026-06-25 17:47:46 +08:00
scripts feat: 增强批量任务子项反馈与客户单号持久化 2026-07-22 12:00:53 +08:00
sql feat: 小包全链路加固、待排货与运单号 IDE 前缀 2026-07-22 19:00:55 +08:00
src fix: resolve track ApiCode from product and channel publish snapshots 2026-07-23 10:49:19 +08:00
.dockerignore add docker 2026-03-20 15:24:40 +08:00
.gitignore feat: 管理端列表返回客户名称/编码,并加固绑定与客户会话 2026-07-18 11:10:53 +08:00
Cursor调试环境说明.md build 2026-06-25 17:47:46 +08:00
db.sql feat: 小包全链路加固、待排货与运单号 IDE 前缀 2026-07-22 19:00:55 +08:00
design.md refactor: 合并 OrderTask 至批量任务,移除 t_order_task 依赖 2026-07-22 12:36:57 +08:00
Directory.Build.props upgrade fw 2026-07-22 12:05:39 +08:00
docker-compose.yml feat(order): 订单批量任务 RabbitMQ 异步处理与治理 API 2026-07-08 09:52:22 +08:00
NuGet.Config init 2026-03-20 15:15:43 +08:00
README.md init 2026-03-20 15:15:43 +08:00
SimpleAdmin.sln feat(order): 订单链路演练签收 API、E2E 测试与批量任务 SQL 修复 2026-07-08 11:32:45 +08:00
SPEC.md ai-init 2026-04-15 15:25:38 +08:00
开发复刻说明.md ai-init 2026-04-15 15:25:38 +08:00
系统结构说明.md refactor: 合并 OrderTask 至批量任务,移除 t_order_task 依赖 2026-07-22 12:36:57 +08:00

SimpleAdmin API

基于 Fake 框架的简单管理系统后端 API。

技术栈

  • .NET 8.0 - 最新的 .NET 平台
  • Fake Framework - 模块化应用框架
  • Entity Framework Core - ORM 框架
  • SQL Server - 数据库
  • JWT - 身份认证
  • Swagger - API 文档

功能特性

  • ✅ 模块化架构
  • ✅ 自动 API 生成(ApplicationService 自动转换为 Controller)
  • ✅ RBAC 权限管理
  • ✅ JWT 认证
  • ✅ Swagger 文档
  • ✅ 依赖注入
  • ✅ 工作单元
  • ✅ 审计日志

开始使用

前置要求

  • .NET 8.0 SDK
  • SQL Server (LocalDB 或完整版)

配置数据库

修改 appsettings.json 中的连接字符串:

{
  "ConnectionStrings": {
    "Default": "Server=(localdb)\\mssqllocaldb;Database=SimpleAdminDb;Trusted_Connection=true;MultipleActiveResultSets=true"
  }
}

数据库迁移

# 添加迁移
dotnet ef migrations add InitialCreate --project ../modules/rbac/Fake.Rbac.Infrastructure

# 更新数据库
dotnet ef database update --project ../modules/rbac/Fake.Rbac.Infrastructure

运行项目

dotnet run

访问 http://localhost:5000 查看 Swagger 文档。

默认账号

系统会自动创建默认管理员账号:

  • 账号:admin
  • 密码:123456
  • 角色:超级管理员

⚠️ 重要:请在生产环境中立即修改默认密码!

API 端点

认证 API

  • POST /api/auth/login - 用户登录
  • GET /api/auth/current - 获取当前用户信息
  • PUT /api/auth/password - 修改密码

用户管理 API

  • GET /api/rbac/user/list - 获取用户列表
  • GET /api/rbac/user/{id} - 获取用户详情
  • POST /api/rbac/user - 创建用户
  • PUT /api/rbac/user/{id} - 更新用户
  • DELETE /api/rbac/user/{id} - 删除用户
  • PUT /api/rbac/user/{id}/roles - 分配角色
  • GET /api/rbac/user/{id}/permissions - 获取用户权限

角色管理 API

  • GET /api/rbac/role/list - 获取角色列表
  • GET /api/rbac/role/all - 获取所有角色
  • GET /api/rbac/role/{id} - 获取角色详情
  • POST /api/rbac/role - 创建角色
  • PUT /api/rbac/role/{id} - 更新角色
  • DELETE /api/rbac/role/{id} - 删除角色
  • PUT /api/rbac/role/{id}/permissions - 分配权限

菜单管理 API

  • GET /api/rbac/menu/tree - 获取菜单树
  • GET /api/rbac/menu/user/{userId} - 获取用户菜单
  • GET /api/rbac/menu/{id} - 获取菜单详情
  • POST /api/rbac/menu - 创建菜单
  • PUT /api/rbac/menu/{id} - 更新菜单
  • DELETE /api/rbac/menu/{id} - 删除菜单

权限管理 API

  • GET /api/rbac/permission/all - 获取所有权限
  • GET /api/rbac/permission/tree - 获取权限树

项目结构

SimpleAdmin.Api/
├── Controllers/          # 控制器(手动创建的)
├── Program.cs           # 程序入口
├── SimpleAdminApiModule.cs  # 主模块配置
├── appsettings.json     # 配置文件
└── README.md

Fake 框架特性

自动 API 生成

所有继承自 ApplicationService 的服务会自动生成对应的 API 端点,无需手动创建 Controller。

模块化

通过 [DependsOn] 特性声明模块依赖:

[DependsOn(
    typeof(FakeAspNetCoreModule),
    typeof(FakeRbacApplicationModule)
)]
public class SimpleAdminApiModule : FakeModule
{
    // ...
}

依赖注入

框架自动注册服务,支持:

  • ITransientDependency - 瞬时
  • IScopedDependency - 作用域
  • ISingletonDependency - 单例

工作单元

应用服务方法自动包装在工作单元中,支持事务管理。

JWT 配置

JWT 配置在 appsettings.json 中:

{
  "JwtSettings": {
    "SecretKey": "your-secret-key-here",
    "ExpiryInMinutes": 60
  }
}

CORS 配置

默认允许的前端地址:

可在 SimpleAdminApiModule.cs 中修改。

许可证

MIT