# SmartAnswerPlatform **Repository Path**: clancy_js/smart-answer-platform ## Basic Information - **Project Name**: SmartAnswerPlatform - **Description**: 智能答题平台 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-11-17 - **Last Updated**: 2025-11-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SmartAnswerPlatform SmartAnswerPlatform 是一个基于 .NET 8 的智能问答平台,旨在提供灵活的系统功能,包括用户管理、角色管理、菜单管理以及角色权限分配等基础功能。该平台使用 SqlSugar 作为 ORM 框架,支持自动主键生成、数据映射和基础的增删改查操作。 ## 项目结构 - **SmartAnswerPlatform.Common**:提供通用工具类,如 Id 生成器、字符串处理工具、对象映射工具。 - **SmartAnswerPlatform.IRepository**:定义数据访问接口,包括基础 Repository 接口和系统模块接口。 - **SmartAnswerPlatform.IService**:定义服务接口,提供系统模块的服务抽象。 - **SmartAnswerPlatform.Models**:包含数据模型,如 BaseEntity、ViewModel、枚举和请求模型。 - **SmartAnswerPlatform.Repository**:实现 IRepository 中定义的数据访问逻辑。 - **SmartAnswerPlatform.Service**:实现 IService 中定义的业务逻辑。 - **SmartAnswerPlatform.WebApi**:Web API 项目,包含控制器、启动配置、异常过滤器及 Docker 配置。 - **SmartAnswerPlatform.WinForm**:Windows Forms 客户端项目,包含基础界面和程序入口。 ## 功能模块 ### 系统管理 - **用户管理(SysUser)**:支持用户注册、信息更新、删除及查询功能。 - **角色管理(SysRole)**:提供角色的创建、更新、删除和查询功能。 - **菜单管理(SysMenu)**:支持菜单结构的维护,包括菜单项的添加、更新和删除。 - **用户角色分配(SysUserRole)**:管理用户与角色之间的映射关系。 - **角色菜单权限(SysRoleMenu)**:定义角色对菜单的访问权限。 ## 技术栈 - .NET 8 - SqlSugar ORM - Autofac 依赖注入 - ASP.NET Core Web API - Windows Forms - Docker 部署支持 ## 核心特性 - **统一的基础实体类**:`BaseEntity` 提供了统一的数据库字段,如 Id、IsRemove、CreateTime、updateTime 等。 - **自动主键生成**:使用 `IdGenerator` 类生成基于时间戳和工作节点的唯一 Id。 - **通用服务和 Repository 模式**:通过 `BaseService` 和 `BaseRepository` 实现通用的 CRUD 操作。 - **自动字段填充**:提供 `AddSetBasicProperties` 和 `updateSetBasicProperties` 方法用于自动设置基础字段。 - **对象映射工具**:`MapperHelper` 提供对象和列表之间的映射功能。 ## 使用说明 1. **启动 Web API** - 使用 `Program.cs` 启动 ASP.NET Core 服务。 - 所有 API 接口通过 ControllerBase 实现,支持 JSON 格式返回结果。 2. **运行 WinForm 客户端** - 通过 `SmartAnswerPlatform.WinForm` 项目启动 Windows Forms 界面。 - 可以在 `Form1.cs` 中添加具体的 UI 控件和业务逻辑。 3. **配置数据库** - 使用 `SqlSugarSetup.cs` 配置数据库连接并自动创建表结构。 4. **依赖注入** - 使用 Autofac 进行依赖注入,通过 `AutofacModuleRegister.cs` 注册服务。 5. **Docker 部署** - 提供 Dockerfile 支持,可构建并部署 ASP.NET Core Web API 服务。 ## 返回结果格式 所有 API 请求返回统一的 `ApiResult` 结构: ```json { "Code": 200, "Msg": "操作成功", "DevMsg": "详细错误信息(如适用)", "Data": { /* 返回的数据 */ } } ``` ## 构建与部署 - 使用 `dotnet build` 编译项目。 - 使用 `dotnet run` 运行 Web API。 - 使用 `docker build` 和 `docker run` 部署容器化版本。 ## 开源协议 该项目采用 MIT 协议,详细信息请查看 [LICENSE](LICENSE) 文件。 ## 贡献指南 欢迎贡献代码和反馈问题。请遵循以下步骤: 1. Fork 仓库 2. 创建新分支 (`git checkout -b feature/new-feature`) 3. 提交更改 (`git commit -m 'Add new feature'`) 4. 推送分支 (`git push origin feature/new-feature`) 5. 提交 Pull Request ## 联系我们 如有任何问题,请提交 Issue 或联系项目维护者。