Skip to content

新建服务 ​

这篇解决什么 ​

要加一块业务能力时,模块怎么拆、挂到哪、单体和微服务分别怎么启动。读完能照现有 yudao-module-hrm 的样子建 yudao-module-xxx-api + -server,并挂上前端和菜单。

默认端口 48080,管理端前缀 /admin-api。减模块见 迁移模块。目录全景见 项目结构。Profile 见 技术架构。

示意图:新模块是业务箱。用户、文件、权限继续用平台,不要在模块里再造一套登录。

模块怎么拆 ​

对照人力资源模块抄骨架即可。

名称说明仓库路径
聚合packaging 为 pom,声明两个子模块ruoyi-office/yudao-module-hrm/pom.xml
API枚举、ErrorCode、Feign 接口yudao-module-hrm-api/
ServerController / Service / DO / Mapperyudao-module-hrm-server/
微服务入口独立进程时用HrmServerApplication
单体引入只依赖 *-serverruoyi-office/yudao-server/pom.xml

根 ruoyi-office/pom.xml 的 <modules> 要加上 yudao-module-xxx。groupId 保持 cn.iocoder.cloud,版本用 ${revision}。

Server 常见依赖:自己的 *-api、yudao-module-system-api、yudao-module-infra-api,以及 web / security / mybatis / redis / excel 等 Starter。需要审批再加 yudao-module-bpm-api。不要反向依赖 OA / CRM / 商城。

示意图:先能编译进单体,再补页面和菜单。微服务再单独起 XxxServerApplication。

单体和微服务 ​

日常二开走 -P boot,启动 YudaoServerApplication。只要 yudao-server 引入了新的 *-server,Controller 就会出现在 48080。

-P cloud 时每个 *-server 自己打 fat jar。还要:

  1. 写 XxxServerApplication,包名放在 cn.iocoder.yudao.module.xxx。
  2. 给 application.yaml 起服务名,例如 xxx-server。
  3. 在 yudao-gateway 加 Path=/admin-api/xxx/** 路由。
  4. Nacos 能发现新实例。

网关和注册细节见 技术架构。

新模块单独建

新增业务按 yudao-module-xxx-api / -server 拆模块,表结构增量写到 ruoyi-office-db/update/。不要把新能力塞进已有无关模块。

前端和库表 ​

名称说明仓库路径
PC API与后端模块同名ruoyi-office-vben/apps/web-antd/src/api/{module}/
PC 页面同样按模块分包src/views/{module}/
移动端有 H5 / 小程序再加ruoyi-office-uniapp/src/pages-{module}/
表与菜单主线增量进日期目录ruoyi-office-db/update/

菜单 id:官方 1–9999,二开 10000–99999。Controller 上的 @RequestMapping 不要手写 /admin-api,由 WebProperties 拼。

表、CRUD 骨架可以用 代码生成 先出一版,再按分层改包。带审批的单据不要只生成 CRUD,要按流程表单规范接 FlowBillService。

配置与操作 ​

没有「新建服务」菜单或 Controller。开发按 yudao-module-xxx-api / -server 拆模块,菜单 id 官方 1–9999、二开 10000–99999。

骨架可先用代码生成。开启见 基建功能设计。

相关篇 ​

联系我们

获取报价、演示和二开方案

微信咨询二维码

微信咨询

17156169080

添加时备注「RuoYi Office」

在线体验商业版