# mddata
**Repository Path**: henhen6/mddata
## Basic Information
- **Project Name**: mddata
- **Description**: MDP-主数据平台,后端项目。专注于单点登录解决方案。内置用户中心、开发者平台、管理后台3个应用。包含:单点登录、Oauth2 登录、用户身份管理、应用申请、应用接入、主数据维护、主数据订阅、主数据广播、应用接口调用、接口管理管理和查看、系统配置等功能。
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: http://mddata.top/
- **GVP Project**: No
## Statistics
- **Stars**: 674
- **Forks**: 397
- **Created**: 2019-12-10
- **Last Updated**: 2026-10-25
## Categories & Tags
**Categories**: microservice
**Tags**: Java, saas, SpringBoot, 脚手架, 前后分离
## README
# 主数据平台
[](https://github.com/henhen6/mdp)
[](https://github.com/henhen6/mdp/blob/master/LICENSE)
[](https://github.com/henhen6)
[](https://github.com/henhen6/mdp/stargazers)
[](https://github.com/henhen6/mdp/network/members)
[](https://gitee.com/henhen6/mddata/stargazers)
[](https://gitee.com/henhen6/mddata/members)

[](https://gitcode.com/henhen6/mdp)
主数据平台(master-data-platform),简称MDP。MDP基于Java17、SpringBoot、vue3、antdv-next、uniapp 等主流技术构建的 **全场景极速开发平台**。
MDP 内置3个web端、1个移动端。重点解决的是 单点登录系统、主数据维护与管理、开发者平台等功能。
## 项目组成
- 官网: https://mddata.top/
- 文档: https://mddata.top/doc/%E7%AE%80%E4%BB%8B.html
- 前端代码: https://gitee.com/henhen6/mdp-web-vben
- 后端代码: https://gitee.com/henhen6/mddata
- 小程序代码: https://gitee.com/henhen6/mdp-app

## 联系作者
- 微信:hhenhen
## 内置应用
| 应用
(子系统) | 后端项目名 | 前端项目名 | 备注 |
|--------------------------------| --------------------- | ------------- |--------------------------------|
| [工作台](https://workbench.mddata.top) | md-workbench,简称mdw | web-workbench | 可以理解为用户中心、用户的统一门户。通常提供给所有用户使用。 |
| [控制台](https://console.mddata.top) | md-console,简称mdc | web-console | 可以理解为后台管理项目,通常提供给管理员使用。 |
| [开发者平台](https://open.mddata.top) | md-open,简称mdo | web-open | 可以理解为开发者中心,通常提供给第三方开发者接入应用使用。 |
| 小程序 | mdp | mdp-app | 普通用户使用的小程序,用于登录、消息中心等基础功能。 |
- 工作台:https://workbench.mddata.top
- 控制台:https://console.mddata.top
- 开发者平台:https://open.mddata.top
- 演示账号:
| 账号 | 密码 | 备注 |
|---------------------------------------------|----------------------------------------------|----------------------------------------------|
| ops_admin | admin | 超管,运营MDP平台内置数据的管理账号 |
| ops_user | admin | 超管,运营MDP平台内置数据的普通账号 |
| open_admin | admin | 开发者管理,管理第三方开发者的管理账号 |
| open_user | admin | 第三方开发者,负责与MDP平台对接单点登录、数据的开发人员 |
| admin | admin | 总公司管理,使用MDP平台开展业务的最高管理员 |
| user | admin | 总公司普通人,使用MDP平台的普通用户 |
## 第三方应用
使用主流开源项目作为单点登录的客户端,对接到MDP平台,二次开发时可以用于学习如何集成。 需要本地部署后查看效果,演示环境服务器资源有限无法部署。
| 应用 | 备注 |
|---------------------------------------------|----------------------------------------------|
| [若依-oauth](https://gitee.com/henhen6/RuoYi-Vue-oauth2) | 单点登录客户端,基于ticket模式对接单点登录、并对接了事件回调、接口调用等主要功能。 |
| [若依-ticket](https://gitee.com/henhen6/RuoYi-Vue-sso) | 单点登录客户端。基于Oauth2模式对接单点登录、并对接了事件回调、接口调用等主要功能。 |
## 广告位
- [lamp-cloud](https://gitee.com/dromara/lamp-cloud) : 专注于多租户解决方案。
## 主要功能
- 工作台
提供给普通用户使用,作为普通用户的门户中心,方便用户管理个人信息、查看消息通知、免密登录其他应用。
- 统一注册与登录:登录、注册、找回密码、第三方账号关联、第三方账号登录,支持 SSO、Oauth2 等多种主流单点登录协议。
- 个人中心:个人信息修改、头像修改。
- 安全设置:账号密码修改、手机号修改、多因素登录、邮箱修改。
- 登录日志:个人登录日志查询。
- 我的应用:应用查询、应用免密登录、常用应用收藏。
- 消息中心:查看平台的所有消息通知(包括子应用的消息)
- 控制台
提供给管理员使用,管理员可以维护数据、分配权限、配置系统参数、应用后台创建和审核、应用接口管理、接口文档管理。
- **主数据**维护:组织架构、岗位、人员、字典、应用菜单,支持钉钉等三方数据同步。
- 权限管理:角色模板管理、角色管理;用户访问系统权限(菜单、按钮、数据、字段权限的配置、授权和鉴权)、应用获取数据的接口权限(配置、授权和鉴权)、应用数据接口监控与限流。
- 应用管理:应用查询、应用创建、应用审核、应用发布、接口管理、文档管理。
- 系统配置:全局参数配置、短信模版、邮件模版、OSS存储配置。
- 代码生成:可以生成基于本平台开发的子应用代码。
- 日志管理:登录日志、操作日志。
- 开发者平台
提供给开发者使用,若你的平台希望将其他应用(系统)接入到平台,可以让开发者登录开发者平台申请开通应用。应用审批通过后,即可配置开发者秘钥,然后通过HTTP、SDK等方式获取平台数据、对接单点登录等。
- 应用管理:申请应用、管理应用、设置应用的秘钥、应用权限申请、查看平台提供的接口文档。
- 数据订阅(推数据):应用订阅主数据后,**主数据**新增或变更可以推送事件给应用。
- 接口调用(拉数据):通过SDK或HTTP接口等方式调用平台提供的接口,支持 SDK 下载。
- 文档查看:开发者可以查看平台发布的接口文档。
- 小程序
提供给普通用户使用的,目前内置了登录、自动注册、消息中心、工作台等基础功能。
- 首页
- 工作台:我拥有的应用
- 消息中心: 消息查看
- 个人中心: 个人资料维护、退出
## 技术栈
- 后端:
- 基础:Java17、SpringBoot、Hutool、lombok、fastjson2、Jackson、fastexcel、JustAuth、Sa-Token、mapstruct
- 数据库: MySQL 8.0.x、达梦
- 缓存:Redis
- 文件存储:基于x-file-storage,支持 FastDFS 5.0.5/阿里云OSS/本地存储/MinIO/华为云/七牛云 任意切换
- 短信:sms4j
- 持久层框架: Mybatis-flex
- 文档:knife4j、torna
- 定时任务:power-job
- 代码生成器:自主开发
- 移动端
- 基于 [unibest](https://unibest.tech) 最新版本二次开发
- uniapp、vue3、vite5、pnpm
- setup语法糖、TypeScript
- UniCSS、 UniCSS Icons
- Alova.js
- 基于文件的路由 + 局系统
- pinia、API自动导入、请求拦截、路由拦截、字体图标、多语言、自定义tabbar、SVG、UI库.
- 前端
- 基于 [vue-vben-admin](https://doc.vben.pro/) 5.x 最新版框架二次开发
- Turbo Repo:规范且标准的大仓架构,使用pnpm+monorepo+turbo工程管理模式,提供企业级开发规范
- vue3
- antdv-next、Shadcn-UI
- vxe-table
- vite
- typescript
- vue-router
- Pinia
- Axios
- Dayjs
- 部署:
- 服务器:CentOS、UOS
- Openresty、Nginx
- Maven、Jenkins/阿里云效/Github Actions
- Docker
- Kubernetes
## 项目预览
### 工作台
| | |
| :---: | :---: |
| 
我的应用 | 
个人中心 |
| 
消息中心 | 
消息查看 |
| 
登录日志 | 
安全设置 |
### 控制台
| | |
| :---: | :---: |
| 
组织管理 | 
岗位管理 |
| 
用户管理 | 
用户新增 |
| 
菜单管理 | 
菜单新增 |
| 
角色模板管理-角色用户 | 
角色模板管理-应用权限 |
| 
角色模板管理-功能权限 | 
角色管理 |
| 
字典管理 | 
字典新增 |
| 
字典项新增 | 
系统配置 |
| 
消息管理 | 
消息发布 |
| 
消息模板 | 
消息模板编辑 |
| 
接口配置 | 
接口配置-编辑 |
| 
接口统计 | 
接口统计-日志 |
| 
应用管理 | 
应用秘钥 |
| 
应用新增 | 
应用审核 |
| 
开放接口 | 
文档管理 |
| 
权限组 | 
Oauth2权限 |
| 
事件管理 | |
### 开发者平台
| | |
| :---: | :---: |
| 
首页 | 
应用申请 |
| 
应用申请管理 | 
应用管理-应用信息 |
| 
应用管理-应用秘钥 | 
应用管理-事件订阅 |
| 
应用管理-开发配置 | 
开发文档 |
### 小程序
| | |
| :---: | :---: |
| 
首页 | 
工作台 |
| 
消息中心 | 
我的 |