AGENTS.md 3.0 KB

AGENTS.md — ems (Energy Management System)

Project Overview

高速公路服务区能源管理后台系统。接入服务区各类表计(电表、水表、充电桩等),通过物模型进行设备管理,实现服务区源网荷储(光伏、电网、负荷、储能)的调配管理。

后端基于若依(RuoYi)框架开发,当前生产环境使用 Spring Cloud 微服务版本

Workspace Context

本仓库 (ems/) 是 prod_group_bg/ 工作空间的一个模块,依赖以下兄弟项目(不在本 pom 中):

  • common-application/ — 若依单体版框架模块
  • common-cloud/ — 若依微服务版模块(ruoyi-common-*, ruoyi-gateway, ruoyi-auth, ruoyi-api-system)
  • prod-common/ — 公共库 (prod-commons)

这些依赖发布在私有 Nexus (maven.xt.wenhq.top:8083)。修改这些项目后需先 mvn install 才能被 ems 引用。

模块结构

ems-core/                    # 核心业务模块(domain, mapper, service)
├── 被 ems-cloud/ems-server 引用(微服务接口层)
├── 被 ems-cloud/ems-dev-adapter 引用(设备采集层)
└── 被 ems-application/ems-admin 引用(单体版)

ems-cloud/                   # 微服务部署版(生产使用)
├── ems-server/              # 能源管理接口服务 :9202
└── ems-dev-adapter/         # 设备数据采集服务 :9203

ems-application/             # 单体部署版
└── ems-admin/               # 单体入口 :9100

核心设计ems-core 复用,不同部署模式仅暴露外部接口实现不同。

生产微服务实例

实例 端口 说明
ruoyi-gateway 9100 网关
ruoyi-auth 9200 认证中心
ruoyi-system 9201 系统模块
ems-server 9202 能源管理业务
ems-dev-adapter 9203 设备数据采集

Build Commands

# 先构建 ems-core(必须)
mvn clean install -pl ems-core

# 构建微服务
mvn clean package -pl ems-cloud/ems-server,ems-cloud/ems-dev-adapter -am

# 构建单体版
mvn clean package -pl ems-application/ems-admin -am

Java 1.8 required. Tests skipped (<skipTests>true</skipTests>).

Key Conventions

  • Base package: com.ruoyi.ems (业务), com.ruoyi (单体入口)
  • MyBatis: XML mappers 在 ems-core/src/main/resources/mapper/ems/
  • DB: MySQL + Druid; 数据源配置在 application-druid.yml (单体) 或 Nacos (微服务)
  • Nacos: 192.168.20.210:8848, namespace 2c519718-1e09-4de4-9af5-d07f837372d6
  • Context paths: ems-server /ems, ems-dev-adapter /ems-dev-adapter

SQL Files

无迁移框架,手动执行:

文件 用途
ems_sys_data.sql 若依系统表初始化数据
ems_server.sql 能源管理业务表结构 (DDL)
ems_init_data_ctfwq.sql 服务区落地初始化数据(能源分类、设备、物模型)
ems_clear_data.sql 数据清理
ca.sql 碳管理相关表

Docker

docker/cloud/docker-compose.yml 部署完整微服务栈。镜像需单独构建。