index.md
4 KB
xly(小羚羊)ERP — 框架 Wiki
面向 xly 印刷行业 ERP 框架的开发者指南。
这个 Wiki 是什么,不是什么
本 Wiki 讲的是框架本身,不是构建在框架之上的业务模块。xly 是一个数据驱动、低代码的 ERP 平台:PM(非开发人员)通过元数据表中的行(gdsmodule、gdsconfigformmaster 等)定义表单、数据表、工作流和报表。运行时(Spring Boot + MyBatis + 大量存储过程层)解释这些行,并把它们渲染成可用的应用。
本 Wiki 解释这个闭环如何工作:后台中的配置动作如何修改元数据,运行时如何读取元数据、分发到存储过程并写入业务数据,以及客户如何在前台中使用结果。
业务模块(财务、生产、报价、销售)只作为贯穿示例出现,用来证明框架概念确实产生了行为;它们不会成为独立章节的主体。
阅读路径
本 Wiki 用同一套结构服务两类读者:
- 配置人员路径(你是使用 xly 定义模块的 PM / 实施):→ 心智模型 → 垂直切片 → 参考(配置人员) → 需要具体表或存储过程时查 自动目录。
- 维护人员路径(你是维护框架本身的 Java 开发):→ 心智模型 → 垂直切片 → 参考(维护人员) → 其他细节查 自动目录。
两条路径共享同一套心智模型和切片章节,区别只是深入阅读哪个参考章节。
不覆盖的范围
- B2B 印刷平台层(
plat_*表、除xlyPlatConstant外的所有xlyPlat*模块;见下方说明)。 - AI / LLM 功能(
ai_*表、AiController),太新且仍在变化。 - 人脸识别(
xlyFace),范围较窄;它仍在settings.gradle中启用(会构建和部署),但本 Wiki 有意不展开。 - 文件管理模块(
xlyFile)和串口模块(xlyRxtx),范围较窄 / 偏硬件。 - 调度模块(
xlyErpTask、xlyPlatTask),在settings.gradle中已注释;cron / Quartz 接线不属于本 Wiki 覆盖的框架运行时。 - 测试脚手架模块(
xlyTestService、xlyTestController),历史遗留,不属于框架运行时。 -
xlyweberp_*数据库之间的租户级 schema 漂移;本 Wiki 针对一个 schema。 - 备份表(
*_bak、*0302、*_copy1、*_history、*YYYYMMDD[HHMMSS]后缀快照等)。自动目录会为它们生成页面,因为它们真实存在;正文页面不会把它们作为一个家族展开。当前 schema 约有 56 张此类表。 - MongoDB 文档存储(yaml profile 中的
spring.data.mongodb.uri,以及xlyEntity/.../mongo/下的文档类)。其中 22 个@Document类里有 20 个是PLAT_*命名;仅有两个例外是DIKE_TEST*临时测试类。唯一的MongoTemplate调用方是xlyPersist/.../dao/platmongo/BaseMongoDao(dao/platmongo/包名已经表明其 plat 层意图),在 cleanup 分支没有树内消费者;曾经继承它的xlyPlat*模块都已从settings.gradle注释掉。本 Wiki 覆盖的框架层只讨论 MySQL;Mongo 接线仍可编译,但处于休眠状态。
关于
xlyPlatConstant。 它带有xlyPlat*前缀,但属于本 Wiki 范围:xlyPersist从中导入了两个工具类(com.xly.xlyplatconstant.contant.thread.MultiThreadServer、com.xly.xlyplatconstant.contant.TimeContant)。把它视为命名不准的共享工具模块,而不是平台层模块。关于
xlyPlc。 PLC / 硬件桥接插件属于本 Wiki 范围,是非核心模块如何挂入框架的标准示例。见切片 06:硬件。
如何修正这个 Wiki
编辑 Markdown 文件即可,这些文件就是 Wiki 的源。MkDocs Material 会从这些 .md 文件生成静态 HTML。重新生成命令和 pre-commit 钩子见 参与维护。