本文档定义织信 Informat 应用（App）的全局概念、结构与能力边界。

# Informat App 文档

## 1. 应用（App）概述

在织信 Informat 中，**应用（Application）** 是一个独立的业务系统单元，用于承载具体业务场景。

一个应用可以理解为一个完整系统，例如：

- CRM（客户管理）
- ERP（资源管理）
- OA（办公系统）
- 项目管理系统  

应用包含数据表(Table)、仪表盘(Dashboard)、工作流(Bpmn)、AI助手(AiAgent)、网站(Website)、自动化(Automatic)、脚本(Script)、定时任务(Schedule)等逻辑，用于实现业务闭环。

---

## 2. 应用组成结构

### 2.1 模块（Module）

模块是应用中可创建的功能单元，每个模块对应一个独立的功能页面。支持的模块类型：

- **数据表（Table）** — 结构化数据管理，文档 `informat.table.md`，脚本API `script/table.md`
- **工作流（Bpmn）** — 业务审批与流程编排，脚本API `script/bpmn.md`
- **仪表盘（Dashboard）** — 数据可视化与统计分析，文档 `informat.dashboard.md`
- **AI助手（AiAgent）** — 智能对话与AI能力集成，文档 `informat.aiassistant.md`，脚本API `script/aiagent.md`
- **网站（Website）** — 自定义页面与静态资源托管，文档 `informat.website.md`，脚本API `script/website.md`
- **问卷调查（Survey）** — 问卷与表单收集，脚本API `script/survey.md`

---

### 2.2 应用默认组件

以下功能属于应用内置的默认组件，不是模块，无需单独创建，每个应用自动包含：

- **自动化（Automatic）** — 事件触发、数据变更触发的自动执行逻辑，参考文档 `informat.automatic.md`
- **脚本（Script）** — JavaScript 扩展，可调用平台 API、集成外部系统，参考文档 `informat.script.md`
- **定时任务（Schedule）** — 按 Cron 表达式定期执行的任务，参考文档 `informat.schedule.md`
- **API 接口（API）** — 对外开放的数据接口，参考文档 `informat.api.md`
- **国际化（I18n）** — 多语言翻译配置
- **应用监听器（App Listener）** — 应用级别的生命周期事件监听，支持在应用安装、卸载、启用、禁用等事件触发时执行自动化逻辑，参考文档 `informat.listeners.md`

---

### 2.3 界面（Interface）

用户与系统交互的入口，包括：

- 表单页面
- 列表页面
- 仪表盘
- 自定义视图

支持通过拖拽组件快速构建 UI。

---

## 3. 应用访问地址

应用页面访问格式：
https://${webUrl}/app/${appId}

## 4. 应用设计器访问地址（Designer）

应用页面访问格式：
https://${webUrl}/designer/${appId}/setting/info


---

## 5. 应用配置能力

### 5.1 基础配置

- 应用信息
- 主题样式
- 国际化
- 环境变量

### 5.2 权限管理

- 用户管理
- 角色权限
- 数据权限控制

### 5.3 扩展能力

- API 接口
- 脚本
- 监听器
- 扩展库（Java）

---

## 6. 适用场景

应用可用于构建：

企业管理系统（ERP / OA）
数据管理系统
审批流程系统
项目管理系统
行业定制系统

## 7. 总结

App = 数据 + 界面 + 流程 + 自动化 + 扩展能力
它不仅是一个“应用”，而是一个完整的业务系统容器。

