LMES 开发指南
LMES是基于CMS平台的产线制造执行系统,采用模块化插件架构设计。二次开发非常简单 - 只需按照以下步骤,您就能快速上手!
快速开始(30分钟上手)
第1步:安装开发工具(5分钟)
# 安装前端开发工具
npm install -g lmes-cli
# 或者使用yarn/pnpm
yarn global add lmes-cli
pnpm add -g lmes-cli
第2步:创建第一个项目(10分钟)
# 创建前端组件
lmes create my-first-component
cd my-first-component
npm run dev
# 创建后端插件(需要.NET环境)
dotnet new install CMS.Plugin.Template.Ddd
dotnet new cms-ddd -n TestPlugin -e Sample
第3步:查看效果(15分钟)
- 前端组件:打开浏览器查看运行效果
- 后端插件:启动项目并访问Swagger UI
学习路径(按需选择)
前端开发(推荐先学)
- 基础操作:CMS平台使用 + 环境配置
- 组件开发:使用模板快速创建组件
- API调用:学习如何调用平台接口
- 高级特性:动态菜单、多语言、权限控制
推荐资源:
- 前端开发指南 - 手把手教学
后端开发
- 环境准备:.NET 6.0+ + Visual Studio
- 插件开发:使用DDD模板创建插件
- 数据操作:数据库设计和CRUD操作
- 服务集成:事件总线、API集成
推荐资源:
- 后端开发指南 - 详细教程
开发利器
前端特色功能
- 可视化组件生成:在线配置即可生成基础组件
- 智能代码提示:完善的TypeScript支持
- 热重载开发:修改代码实时预览效果
- 多语言支持:内置国际化解决方案
后端特色功能
- DDD模板:自动生成领域驱动架构代码
- ABP框架集成:开箱即用的企业级功能
- Swagger支持:自动生成API文档
- 插件热插拔:动态加载和卸载插件
小贴士
- 从模板开始:不要从头造轮子,充分利用现有模板
- 先跑起来:先让项目运行起来,再深入理解原理
- 参考示例:多查看现有的 组件和插件代码
- 社区支持:遇到问题可以查阅文档或寻求帮助
下一步行动
- 尝试创建:按照上面的快速开始步骤实际操作
- 修改示例:在生成的项目基础上进行简单修改
- 深入学习:根据需要选择前端或后端深入学习
- 实战项目:参与实际项目开发积累经验
记住:LMES二次开发并不难,关键是动手实践!
三、 开发规范要点
核心原则
1. 模板优先原则
- 前端:使用
lmes-cli创建组件模板 - 后端:使用DDD模板创建插件
- 优势:标准化、快速开发、最佳实践内置
2. 组件设计三要素
组件抽象(稳定接口)
// 命名规范
CMS.Plugin.[组件名].Abstractions
// 发布为NuGet包 (.nupkg)
组件实现(具体功能)
// 命名规范
CMS.Plugin.[组件名] // 或 _V2后缀
// 发布为CMS插件包 (.cmsplugs)
组件选项(配置管理)
// appsettings.json配置示例
{
"OrderManagementOptions": {
"ActiveState": "0", // 0=禁用,1=启用
"FinishMode": "1", // 0=人工结束,1=自动结束
"ProductionMode": "1" // 0=手动生产,1=自动生产
}
}
3. 解耦策略
- 抽象解耦:组件间通过抽象接口交互
- 事件总线:使用领域事件实现最终一致性
- API代理:WebApiClient处理HTTP服务调用
4. 数据库规范
- 主从表命名:下划线分隔(scms_worksections → scms_worksection_processparameters)
- 数据分离:生产数据和配置数据分开存储
5. 接口规范
- 标准接口:
http://ip:port/api/v1/messuite/external/ - 定 制接口:
http://ip:port/api/v1/project/external/ - 第三方接口:统一使用WebApiClient
6. 质量保障
- 代码审查:建立CodeReview文化
- 单元测试:确保代码质量
- 文档要求:设计文档与源码一同提交
实用建议
- 从模板开始:不要从头造轮子
- 先设计后开发:输出设计文档再编码
- 利用ABP框架:充分利用开箱即用功能
- 保持接口稳定:抽象接口避免频繁变更
- 注重代码质量:严格进行CodeReview
记住:遵循规范让开发更简单,维护更容易!