Skip to content

项目结构

作者:唐亚峰 | battcn
字数统计:1.4k 字

源码地址

后端项目结构

wemirr-platform 采用 Maven 多模块架构,基于 Spring Cloud Alibaba 2023 构建。

wemirr-platform/
├── wemirr-platform-dependencies/       # 📦 依赖版本管理(BOM)
├── wemirr-platform-framework/          # 🔧 框架核心层
│   ├── common-framework-core/          # 基础核心(注解、接口、工具类)
│   ├── common-spring-boot-starter/     # Spring Boot 核心启动器
│   ├── db-spring-boot-starter/         # 数据库增强(MyBatis-Plus、多租户、数据权限)
│   ├── redis-plus-spring-boot-starter/ # Redis 缓存增强
│   ├── security-spring-boot-starter/   # 安全认证(Sa-Token)
│   ├── feign-plugin-spring-boot-starter/ # Feign 增强(Token传递、服务代理)
│   ├── easyexcel-spring-boot-starter/  # Excel 导入导出
│   ├── diff-log-spring-boot-starter/   # 差异日志
│   ├── i18n-spring-boot-starter/       # 国际化
│   ├── mongodb-plus-spring-boot-starter/ # MongoDB 增强
│   ├── pdf-spring-boot-starter/        # PDF 生成
│   ├── robot-spring-boot-starter/      # 消息机器人(钉钉、企微、飞书)
│   └── websocket-spring-boot-starter/  # 分布式 WebSocket

├── wemirr-platform-feign/              # 🔗 Feign 接口定义
│   ├── wemirr-platform-iam-api/        # IAM 服务 API
│   ├── wemirr-platform-suite-api/      # Suite 服务 API
│   └── wemirr-platform-workflow-api/   # 工作流服务 API

├── wemirr-platform-iam/                # 🔐 IAM 认证授权中心
│   └── src/main/java/.../iam/
│       ├── auth/                       # 认证模块
│       ├── base/                       # 基础模块
│       ├── system/                     # 系统管理
│       │   ├── controller/             # 控制器
│       │   ├── domain/                 # 领域模型
│       │   ├── repository/             # 数据访问
│       │   ├── service/                # 业务逻辑
│       │   └── func/                   # 功能函数
│       └── tenant/                     # 租户管理

├── wemirr-platform-suite/              # 💼 业务套件中心
│   └── src/main/java/.../suite/        # 业务功能实现

├── wemirr-plugin/                      # 🔌 插件扩展中心
│   ├── wemirr-platform-ai/             # AI 能力(Langchain4j)
│   ├── wemirr-platform-workflow/       # 审批流程(Warm-Flow)
│   ├── wemirr-platform-monitor/        # 监控中心
│   ├── wemirr-platform-tms/            # 运输管理(TMS)
│   └── wemirr-platform-wms/            # 仓储管理(WMS)

├── wemirr-platform-gateway/            # 🚪 API 网关

├── dev-support/                        # 🛠️ 开发支持
├── docs/                               # 📚 文档

└── 附件/                                # 📁 附件资源
    ├── docker/                         # Docker 编排文件
    ├── mysql/                          # 数据库脚本
    ├── nacos/                          # Nacos 配置文件
    └── nginx/                          # Nginx 配置

核心模块说明

模块说明技术栈
wemirr-platform-iamIAM 认证授权中心,用户、角色、菜单、租户管理Sa-Token、MyBatis-Plus
wemirr-platform-suite业务套件,存放核心业务功能Spring Boot
wemirr-plugin插件中心,可插拔的扩展功能(AI、工作流、WMS、TMS)Warm-Flow、Langchain4j
wemirr-platform-gatewayAPI 网关,统一入口、限流、鉴权Spring Cloud Gateway
wemirr-platform-framework框架层,提供通用能力封装多个 Spring Boot Starter
wemirr-platform-feignFeign 接口定义,服务间调用OpenFeign

前端项目结构

wemirr-platform-ui 基于 Vben Admin 5.x + Vue 3 + Ant Design Vue 构建,采用 Monorepo 架构。

wemirr-platform-ui/
├── apps/                               # 📱 应用目录
│   └── web-antd/                       # Ant Design Vue 版本
│       ├── src/
│       │   ├── api/                    # 🌐 API 接口
│       │   │   ├── core/               # 核心接口
│       │   │   ├── system/             # 系统接口
│       │   │   │   ├── oss/            # 文件存储
│       │   │   │   └── user/           # 用户管理
│       │   │   └── workflow/           # 工作流接口
│       │   │
│       │   ├── views/                  # 📄 页面视图
│       │   │   ├── _core/              # 核心页面(登录等)
│       │   │   ├── dashboard/          # 仪表盘
│       │   │   └── wemirr/             # 业务页面
│       │   │       ├── system/         # 系统管理
│       │   │       │   ├── auth/       # 权限管理
│       │   │       │   ├── basic/      # 基础配置
│       │   │       │   ├── log/        # 日志管理
│       │   │       │   ├── message/    # 消息中心
│       │   │       │   ├── monitor/    # 监控中心
│       │   │       │   ├── org/        # 组织管理
│       │   │       │   ├── oss/        # 文件存储
│       │   │       │   ├── position/   # 职位管理
│       │   │       │   └── user/       # 用户管理
│       │   │       ├── platform/       # 平台管理
│       │   │       │   ├── basic/      # 基础配置
│       │   │       │   ├── db/         # 数据源
│       │   │       │   ├── plan/       # 套餐管理
│       │   │       │   ├── security/   # 安全设置
│       │   │       │   └── tenant/     # 租户管理
│       │   │       ├── develop/        # 开发工具
│       │   │       ├── workflow/       # 工作流
│       │   │       ├── ai/             # AI 功能
│       │   │       ├── tms/            # 运输管理
│       │   │       └── wms/            # 仓储管理
│       │   │
│       │   ├── adapter/                # 适配器
│       │   ├── assets/                 # 静态资源
│       │   ├── components/             # 🧩 业务组件
│       │   ├── layouts/                # 布局组件
│       │   ├── locales/                # 国际化
│       │   ├── plugin/                 # 插件
│       │   ├── router/                 # 路由配置
│       │   ├── store/                  # 状态管理
│       │   └── utils/                  # 工具函数
│       │
│       ├── .env                        # 环境变量
│       ├── .env.development            # 开发环境
│       ├── .env.production             # 生产环境
│       └── vite.config.mts             # Vite 配置

├── packages/                           # 📦 共享包
│   ├── @core/                          # 核心包
│   ├── constants/                      # 常量定义
│   ├── effects/                        # 副作用
│   ├── hooks/                          # 组合式函数
│   ├── icons/                          # 图标
│   ├── locales/                        # 国际化
│   ├── preferences/                    # 偏好设置
│   ├── stores/                         # 状态管理
│   ├── styles/                         # 样式
│   ├── types/                          # 类型定义
│   └── utils/                          # 工具函数

├── internal/                           # 🔧 内部工具
├── scripts/                            # 脚本
├── pnpm-workspace.yaml                 # Monorepo 配置
├── turbo.json                          # Turbo 配置
└── package.json                        # 依赖管理

前端技术栈

技术版本说明
Vue3.x渐进式 JavaScript 框架
Vben Admin5.x后台管理模板(Monorepo 架构)
Ant Design Vue4.xUI 组件库
TypeScript5.x类型安全
Vite5.x构建工具
Pinia2.x状态管理
TailwindCSS3.x原子化 CSS
Turbo-Monorepo 构建工具

框架组件

common-framework-core

基础核心模块,提供基础注解、接口、类给其他 starter 使用。

db-spring-boot-starter

数据库增强模块,集成 MyBatis-Plus 和多租户支持。

核心功能

  • 多租户隔离 - 字段隔离 / Schema 隔离 / 数据源隔离
  • 数据权限 - 全部 / 本部门 / 本人
  • 自动填充 - 创建人、创建时间、更新人、更新时间
  • 逻辑删除 - 统一软删除处理
  • 分页插件 - 自动分页处理

security-spring-boot-starter

安全认证模块,基于 Sa-Token 封装。

核心功能

  • 登录认证 - 账号密码、手机验证码
  • 权限校验 - 角色校验、权限码校验
  • 会话管理 - Token 管理、踢人下线
  • 租户识别 - 自动识别当前租户

feign-plugin-spring-boot-starter

Feign 增强模块,简化微服务调用。

核心功能

  • Token 传递 - 自动传递认证信息
  • Header 复制 - 复制请求头到下游
  • 服务代理 - 简化 Feign 调用方式
  • 熔断降级 - 集成 Sentinel

websocket-spring-boot-starter

分布式 WebSocket 模块,基于 Redis 实现。

核心功能

  • 分布式消息 - 多节点消息同步
  • 用户推送 - 指定用户推送
  • 广播推送 - 全体用户推送
  • 租户隔离 - 租户级别消息隔离

robot-spring-boot-starter

消息机器人模块,支持多平台推送。

支持平台

  • 钉钉 - 钉钉机器人
  • 企业微信 - 企微机器人
  • 飞书 - 飞书机器人

配套资源

附件目录说明

附件/
├── docker/                   # Docker 编排文件
├── mysql/                    # 数据库脚本
├── nacos/                    # Nacos 配置文件
└── nginx/                    # Nginx 配置

下一步