# easyapi_spa **Repository Path**: aprilyu/easyapi_spa ## Basic Information - **Project Name**: easyapi_spa - **Description**: 基于net和koi-ui的前后端分离项目 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-27 - **Last Updated**: 2026-06-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # NetFull NetFull 是一个基于 ASP.NET Core WebAPI 和 Vue 3 的前后端分离后台管理项目。当前仓库已经完成从传统 MVC 后台向 SPA 架构的主干迁移,前端使用 `frontui` 管理模板,后端统一通过 `/api/{area}/{controller}/{action}` 提供 JSON 接口。 前端 UI 模板基于 [KOI-UI](https://gitee.com/KoiKite/koi-ui) 二次对接与改造。 项目目前可跑通的核心能力包括登录认证、个人中心、首页统计、用户管理、角色管理、菜单管理、按钮权限、部门管理、字典管理,以及登录日志、系统日志、SQL 执行日志等后台基础模块。 ## 项目结构 ```text NetFull/ ├─ backapi/ 后端服务,ASP.NET Core WebAPI ├─ frontui/ 前端项目,Vue 3 + Vite + Element Plus └─ README.md ``` ## 技术栈 ### 后端 - ASP.NET Core `net9.0` - Autofac - FreeSql - FreeRedis / EasyCaching - Serilog - Hangfire ### 前端 - Vue 3 - TypeScript - Vite - Element Plus - Pinia - Axios ## 已实现模块 - 登录、退出、Token 会话认证 - 当前用户信息与个人中心 - 动态菜单与按钮权限 - 用户管理 - 角色管理 - 菜单管理 - 部门管理 - 字典类型 / 字典数据管理 - 登录日志 - 系统日志 - SQL 执行日志 - 头像上传 ## 接口约定 - 接口路由:`/api/{area}/{controller}/{action}` - 认证方式:`Authorization: Bearer {token}` - 返回格式:统一 JSON 结构 ## 快速开始 ### 1. 启动后端 环境要求: - .NET SDK 9.0 - MySQL - Redis 启动命令: ```bash dotnet run --project backapi/Atlass.Framework.Web/EasyCms.Framework.WebApi.csproj ``` 默认开发地址: - 后端 API:`http://localhost:5001` ### 2. 启动前端 环境要求: - Node.js 18+ - pnpm 启动命令: ```bash cd frontui pnpm install pnpm dev ``` 默认开发地址: - 前端页面:`http://localhost:5730` 当前开发环境下,前端默认直连后端: - `VITE_WEB_BASE_API=http://localhost:5001` ## 数据初始化 菜单和按钮相关初始化 SQL 位于: - `backapi/sql/sys_menu_spa.sql` - `backapi/sql/sys_operate_spa.sql` 如果需要初始化 SPA 管理端菜单、按钮和权限基础数据,可先执行这两份脚本。 ## 当前说明 - 后端已按前后端分离方式提供 `System` 区域 API。 - 前端已接入真实登录、权限、菜单和基础管理模块。 - 原有 `Areas` 下旧 MVC 逻辑仍可作为迁移参考,但当前目标是逐步收敛为纯 WebAPI + SPA 管理端。 ## 开发规范 - 新功能前后端实现规范见 [docs/spa-feature-guidelines.md](docs/spa-feature-guidelines.md) ## 补充说明 - 根目录说明用于仓库总览。 - 更细的前后端说明可分别参考 `backapi` 和 `frontui` 目录中的现有文档。