VTJ.PRO 在线应用开发平台的业务模块(应用、DSL、模板、订单、智能体、技能)

业务模块(应用、DSL、模板、订单、智能体、技能)

本节涵盖 backend/src/business 目录,该目录包含 VTJ.PRO 平台的核心领域逻辑。这些模块负责处理低代码应用的生命周期、领域特定语言 (DSL) 管理、AI 智能体编排以及商业基础设施(订单和产品)。

低代码应用与 DSL 管理

LowcodeAppModuleDSLModule 构成了平台开发能力的支柱。它们管理从可视化编辑到可执行代码的转换过程。

应用生命周期

LowcodeAppService 处理应用的增删改查操作,并管理其版本。应用按平台类型进行分类,如 Web、H5 或 UniApp。

DSL 生命周期与发布

DslService 管理应用模式的状态。它区分"开发"环境和"生产"环境的 DSL。

关键工作流包括:

  • 发布 :通过 publishFromDev 将 DSL 从开发环境迁移到生产环境
  • 回滚 :通过 copyToDev 将生产环境的 DSL 复制回开发环境
  • 代码生成 :使用 @vtj/coder 通过 dslToVue 将 DSL 转换为 Vue 源代码

DSL 数据流图

graph TD IDE["IDE / Workbench"] -->|"saveDsl()"| DslService["DslService [dsl.service.ts]"] DslService -->|Update type='project'| DslEntity["DslEntity [dsl.entity.ts]"] DslService -->|"publishFromDev()"| ProdDsl["DslEntity (type='history')"] DslService -->|"dslToVue()"| Coder["@vtj/coder"] Coder -->|Generate .vue/.zip| OssService["OssService"] subgraph Code Entity Space DslEntity ProdDsl Coder OssService end subgraph Publish Flow DslService end

AI 智能体与技能模块

AI 子系统负责编排大语言模型 (LLM) 与低代码引擎之间的交互。

智能体与技能

  • AgentModule:管理可辅助代码生成或聊天交互的 AI 智能体。智能体与特定的 LLM 模型相关联。
  • SkillModule:定义智能体可以执行的特定能力。技能通常包含提示词模板或与 DSL 交互的逻辑。
  • AIService:核心提供者,负责处理流式响应并与已配置的 LLM 后端(如 OpenAI 等)进行交互。

AI 交互桥接图

graph TD UserPrompt["'Create a login page'"] --> TopicController["TopicController [topic.controller.ts]"] TopicController --> AgentService["AgentService [agent.service.ts]"] AgentService -->|"matchSkill()"| SkillService["SkillService [skill.service.ts]"] SkillService -->|"getPrompt()"| PromptService["PromptService [prompt.service.ts]"] PromptService --> AIService["AIService [ai.service.ts]"] AIService -->|Stream Response| UserPrompt subgraph Natural Language Space UserPrompt TopicController end subgraph Code Entity Space AgentService SkillService PromptService AIService end

模板与产品模块

这些模块促进了组件的复用和平台的商业化。

模板管理

TemplateModule 允许用户将应用或特定页面保存为模板。

  • 初始化:模板通常基于现有的 DSL 结构进行初始化。
  • 市场:模板可以被标记为公开或私有,以便在不同项目间使用。

商业基础设施

  • ProductModule:定义"产品"(例如,订阅套餐、特定模板)。
  • OrderModule :管理购买的整个生命周期。它跟踪 OrderEntity 从创建到完成的状态。
模块 关键实体 目的
Product ProductEntity 定义可销售的商品(模板、AI 积分)
Order OrderEntity 记录交易和支付状态
Template TemplateEntity 可复用的 DSL 蓝图,用于创建新应用

支持与外部模块

日常与报表模块

  • DailyModule:处理平台内的日常日志或自动状态更新。
  • ReportModule:为管理监督提供分析数据和报表功能。

OpenModule(外部 API)

OpenModule 作为外部集成(如 VTJ IDE 客户端)的公共 API 网关。

  • 认证:使用专门的令牌,允许外部工具获取 DSL 或发布模板。
  • 桥接 :它在内部 DslService 和外部 HTTP 请求之间充当桥梁。

参考资料

相关推荐
ryan_9963 小时前
一次讲清大模型应用评测:从 Recall@k、LLM Judge 到 Agent 上线门禁
agent·trace·eval·召回率·大模型评测·evaluation
AI绘画哇哒哒5 小时前
【建议收藏!】35岁后端血泪忠告,这3类人别硬转Agent(过来人亲述)
java·人工智能·后端·ai·程序员·大模型·agent
NeilCarmack6 小时前
Deepseek-harness增加桌面版端序列:第 1 讲 · 命令解析:`pnpm dsh desktop` 的第一步
人工智能·agent·ai agent
唐青枫7 小时前
一个值多种形态:Zig union、Tagged Union 与内存布局实战
后端
卷无止境7 小时前
Windows 上丝滑开发 Python,并稳定构建 Docker 镜像
后端·python·docker
Nturmoils7 小时前
备份完不算完,先还原到临时库验一遍
后端
你是一个铁憨憨7 小时前
从 GIS 到 Spatial Agent:MCP 如何重新定义 GIS 的 AI 入口
arcgis·ai·agent·mcp·spatial
星野云联AIoT技术洞察7 小时前
Dify 适合什么 AI 应用项目:Workflow、RAG、Agent 与自研系统的边界
agent·workflow·llmops·dify·rag·ai agent·ai应用开发
Csvn7 小时前
📊 SQL 入门 Day 22:视图与物化视图
后端·sql
Csvn8 小时前
🐍 Day 4: Python 控制流 — 条件、循环与推导式的艺术
后端·python