# JanJee Admin
**Repository Path**: chi_he_qing/Janjee
## Basic Information
- **Project Name**: JanJee Admin
- **Description**: JanJee Admin是基于 Mars Admin 二开的一个开箱即用的企业级后台管理系统,采用前后端分离架构,提供完整的权限管理、系统监控、消息推送、即时通讯等功能。项目采用分层架构设计,代码规范、结构清晰,适合作为企业后台管理系统的基础框架。
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: JanJee
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-10-02
- **Last Updated**: 2026-10-02
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# JanJee Admin
基于 Mars Admin 二次开发的前后端分离管理系统。





[JanJee 源码](https://gitee.com/chi_he_qing/Janjee) · [JanJee 问题反馈](https://gitee.com/chi_he_qing/Janjee/issues) · [Mars Admin 原项目](https://gitee.com/Marsfactory/mars-admin)
## 原项目链接
JanJee Admin 基于 Mars Admin 二次开发。以下链接保留原项目的入口与反馈渠道:
| 链接 | 地址 |
| --- | --- |
| Mars Admin 源码 | [https://gitee.com/Marsfactory/mars-admin](https://gitee.com/Marsfactory/mars-admin) |
| Mars Admin 在线预览 | [https://marsadmin.cn/](https://marsadmin.cn/) |
| Mars Admin 问题反馈 | [https://github.com/marsfactory/mars-system/issues](https://github.com/marsfactory/mars-system/issues) |
| 火星编程导航 | [https://mars-coder.cn/](https://mars-coder.cn/) |
## 项目简介
JanJee Admin 面向企业后台管理场景,提供权限管理、组织管理、系统监控、消息协作、工作流、文件管理和代码生成等能力。项目采用前后端分离架构:后端以 Spring Boot 为运行入口,PC 管理端基于 Vue 3,移动端基于 UniApp。
项目包含可独立演进的基础设施层、业务核心层和 API 层。文件、短信、支付、推送与社交登录等外部服务通过统一的扩展模块接入,便于按部署环境选择实现。
## 功能概览
| 分类 | 功能 |
| --- | --- |
| 系统管理 | 用户、角色、菜单、部门、岗位、字典、系统参数与数据权限 |
| 认证与安全 | 账号认证、验证码、登录安全控制、接口权限与加密能力 |
| 运行监控 | 在线用户、定时任务、服务监控、缓存监控、登录日志与操作日志 |
| 消息协作 | 系统通知、公告、私聊、群聊与 WebSocket 实时消息 |
| 业务支撑 | 文件上传与管理、代码生成、工作流、通用业务模块 |
| 外部服务 | 本地与对象存储、短信、支付、推送、社交登录、微信公众号与小程序接入 |
| 前端体验 | 多语言、明暗主题、响应式后台布局与移动端办公能力 |
## 技术栈
| 层级 | 技术 |
| --- | --- |
| 后端 | Java 17、Spring Boot 3.2、MyBatis-Plus、Sa-Token、Warm-Flow、Quartz |
| 数据与缓存 | MySQL 8.0+、Redis 7.0+、Druid |
| PC 管理端 | Vue 3、Vite 5、TypeScript、Naive UI、Pinia、Vue Router、ECharts、xterm.js |
| 移动端 | UniApp、uView Plus |
| 构建工具 | Maven 3.8+、Node.js 18+、npm |
## 项目结构
```text
mars-admin
├── mars-common # 通用实体、异常、响应模型与工具类
├── mars-infra # 基础设施:数据库、缓存、对象存储、短信、支付、推送等
├── mars-core # 核心业务:系统、认证、文件、消息、工作流、代码生成等
├── mars-api # 管理端、Web 端与 App 端接口
├── mars-job # 定时任务
├── mars-starter # Spring Boot 启动模块与环境配置
├── mars-ui # Vue 3 PC 管理端
├── mars-uniapp # UniApp 移动端
├── sql # 初始化和版本升级 SQL 脚本
├── doc # 项目截图与文档资源
├── LICENSE # Apache License 2.0
└── pom.xml # Maven 聚合工程
```
## 快速开始
### 运行环境
- JDK 17
- Maven 3.8 或更高版本
- MySQL 8.0 或更高版本
- Redis 7.0 或更高版本
- Node.js 18 或更高版本(运行 PC 管理端)
- HBuilderX 与微信开发者工具(运行小程序时需要)
### 获取代码
```bash
git clone https://gitee.com/chi_he_qing/Janjee.git
cd Janjee
```
### 初始化数据库
新环境使用 `sql/mars-system.sql` 初始化。当前开发环境的默认数据库名为 `mars`,如使用其他名称,请同时修改后端数据源配置。
```sql
-- 1. 创建本地开发数据库
CREATE DATABASE `mars` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
```
```bash
mysql -u root -p mars < sql/mars-system.sql
```
已有环境升级前请先备份数据库,再按版本顺序评估并执行 `sql` 目录中的增量脚本。不要将增量脚本与完整初始化脚本重复执行。
### 配置后端
在本地修改 [application-dev.yml](mars-starter/src/main/resources/application-dev.yml) 中的以下配置:
- `spring.datasource`:MySQL 地址、数据库名、用户名和密码;
- `spring.data.redis`:Redis 地址、密码和数据库编号;
- `mars.demo-mode`:演示环境可开启,正式环境应按实际权限策略配置;
- 外部服务:对象存储、短信、支付、推送与社交登录按启用的模块配置对应凭据。
不要将生产环境密码、密钥、令牌或第三方凭据提交到仓库。
### 启动后端
在项目根目录执行:
```bash
mvn clean install -DskipTests
cd mars-starter
mvn spring-boot:run
```
开发环境默认监听 `http://localhost:8080`。
### 启动 PC 管理端
```bash
cd mars-ui
npm ci
npm run dev
```
开发服务器默认监听 `http://localhost:3000`,并将 `/api`、`/ws`、`/druid`、`/warm-flow` 请求代理到后端服务。生产构建使用:
```bash
npm run build
```
构建产物位于 `mars-ui/dist`。
### 启动移动端
1. 使用 HBuilderX 导入 `mars-uniapp` 目录;
2. 按目标平台配置接口地址与应用参数;
3. 选择运行到微信开发者工具、浏览器或对应原生运行环境。
## 配置与部署说明
### 环境配置
应用通过 Spring Profile 切换环境:
- `application-dev.yml`:本地开发配置;
- `application-prod.yml`:生产环境配置;
- `application.yml`:当前启用的 Profile。
部署前应为生产环境单独维护数据库、Redis 与第三方服务凭据,并限制 Druid 监控页面的访问来源。
### 外部服务
以下模块按需启用,并需要在对应配置中填写服务商参数:
| 模块 | 可选实现 |
| --- | --- |
| 文件存储 | 本地存储、MinIO、阿里云 OSS |
| 短信 | 控制台、阿里云短信、腾讯云短信 |
| 支付 | 微信支付、支付宝 |
| 推送 | 控制台、极光、友盟、个推 |
| 社交登录 | 微信公众号、微信小程序、支付宝、Apple 登录 |
## 系统预览
## 开发约定
- 新增后端模块时,保持 `infra`、`core`、`api` 与 `starter` 的职责边界;
- 固定业务枚举统一通过系统字典维护,避免在界面或业务逻辑中散落字面量;
- 所有用户可见的 PC 端文本使用国际化资源,并同时验证明暗主题;
- 涉及数据库结构或数据迁移时,新增与后端版本对应的 SQL 文件,并在执行前完成备份;
- 外部接口、文件上传和批量任务需考虑超时、幂等性、限流与异常恢复。
## 贡献
1. 从最新主分支创建功能分支;
2. 保持变更范围聚焦,并补充必要的测试与迁移说明;
3. 提交前确认不包含本地配置、构建产物、日志和敏感信息;
4. 通过合并请求提交代码,并清楚说明功能影响与验证结果。
## 💗请作者喝杯咖啡☕️
如果项目对你有帮助,欢迎请作者喝杯咖啡☕️。
## 开源协议
本项目采用 [Apache License 2.0](LICENSE) 开源。使用、修改和分发时请遵守许可证全文及项目中第三方依赖的各自许可条款。