aj命令
1. 基本使用
aj命令的专用语法如下:
aj <command> [options1|options2|options3...]
2. 命令列表
| 命令执行 | 含义 |
|---|---|
| aj icomplex | 「模块」生成ExListComplex专用模块。 |
| aj iform | 「组件」生成ExForm专用组件。 |
| aj jperm | 「后端」生成权限专用的Excel数据文件。 |
3. 标准化配置
{
module: 'ZT环境变量设置的模块',
language: 'Z_LANGUAGE语言环境变量设置,默认「cn」',
pathRoot: '系统根据执行目录计算的当前项目根目录',
pathResource: '资源目录',
pathUi: '生成代码目录',
namespace: 'Cab.json中所需的名空间值',
input: {
params: {
MODULE: '当前模块的文字描述名称',
API: '构造标准接口`/api/xxx`的RESTful接口专用路径替换部分。',
IDENTIFIER: '模型的统一标识符,最终会绑定到identifier中。'
},
tpl: {
type: '使用的模板tpl文件目录,cab/下的目录名',
source: '「单文件」单文件的拷贝源',
target: '「单文件」单文件的目标拷贝文件'
}
},
runtime: {
namespaceFile: 'Cab.json文件生成路径',
resource: '资源文件的根目录',
resourceFiles: {
'fileName1': '资源文件地址,json后缀,模板则是fileName1.tpl文件',
'fileName2': '......'
},
ui: '代码文件根目录',
uiFiles: {
'fileName1': '代码文件地址,js后缀,模板则是fileName1.tpl文件',
'fileName2': '......'
}
}
}
4. 标准化模板参数
tpl文件中替换的部分会使用配置文件中的参数来替换。
| 参数 | 替换部分 | 含义 |
|---|---|---|
| MODULE | #MODULE# |
当前模块的文字描述名称。 |
| API | #API# |
构造标准接口/api/xxx的RESTful接口专用路径替换部分。 |
| IDENTIFIER | #IDENTIFIER# |
模型的统一标识符,最终会绑定到identifier中。 |
| NAME | #NAME# |
绑定文件设定,直接赋值input.params.NAME = tpl.target生成单文件专用。 |
| SIGMA | #SIGMA |
SIGMA统一标识符,用于标识租户、应用。 |
| ROLE_ID | #ROLE_ID# |
操作的角色ID。 |
| PREFIX | 无 | 生成文件专用参数,不在模板中。 |
| SHEET | 无 | 工作专用的Sheet名,不在模板中。 |
Methods
(static) icomplex()
aj icomplex
1. 命令
使用该命令生成完整的ExListComplex完整组件页。
2. 执行
2.1. 基本介绍
# 2.1.1. 命令语法
aj icomplex
# 2.1.2. 执行测试
aj icomplex
# ...省略部分...
[Zero AI] Zero AI 系统启动......
[Zero AI] Zero AI 加载输入参数:
{
"config": "ui.json"
}
[Zero AI] 「启用ZT环境」,当前模块:generated/test,特殊命令只能在ZT环境使用。
[Zero AI] Zero AI 0. 基础环境......
[Zero AI] 环境变量:ZT = generated/test
[Zero AI] 模块信息:generated/test
[Zero AI] 语言信息:cn
[Zero AI] 项目目录:<项目根目录>
[Zero AI] Zero AI 1. 目录检查......
[Zero AI] Zero AI 2. 文件表:
[Zero AI] UI.Add = <项目根目录>/src/cab/cn/components/generated/test/UI.Add.json
[Zero AI] UI.Edit = <项目根目录>/src/cab/cn/components/generated/test/UI.Edit.json
[Zero AI] UI.Filter = <项目根目录>/src/cab/cn/components/generated/test/UI.Filter.json
[Zero AI] UI = <项目根目录>/src/cab/cn/components/generated/test/UI.json
[Zero AI] UI = <项目根目录>/src/components/generated/test/UI.js
[Zero AI] Op = <项目根目录>/src/components/generated/test/Op.js
[Zero AI] UI.Form = <项目根目录>/src/components/generated/test/UI.Form.js
[Zero AI] Zero AI 3. 执行React命令......
[Zero AI] Zero AI 3.1. 创建名空间文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/Cab.json!
[Zero AI] Zero AI 3.2. 构造资源文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Add.json!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Edit.json!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Filter.json!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.json!
[Zero AI] Zero AI 3.3. 构造界面文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/UI.js!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/Op.js!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/UI.Form.js!
[Zero AI] Zero AI 4. 命令执行完成!!!
代码执行完成后会在项目中生成Zero UI专用模块generated/test的所有页面以及组件。
- 执行代码之前先执行
export ZT=generated/test确保ZT环境变量有值。 - 执行位置可以是当前项目中的任意一个路径,脚本会自己计算当前项目的根目录(Zero UI专用)。
- 该命令执行时模板文件位置位于
src/cab/list目录中,且模板文件以tpl结尾。
2.2. 生成的文件说明
| 文件名 | 模板 | 含义 |
|---|---|---|
| Cab.json | 无 | 名空间关联文件,计算得来。 |
| UI.Add.json | UI.Add.json.tpl | 「无字段」添加表单专用资源文件。 |
| UI.Edit.json | UI.Edit.json.tpl | 「无字段」编辑表单专用资源文件。 |
| UI.Filter.json | UI.Filter.json.tpl | 过滤表单专用资源文件(高级搜索用)。 |
| UI.json | UI.json.tpl | 主界面资源文件。 |
| UI.js | UI.js.tpl | 主界面脚本文件。 |
| Op.js | Op.js.tpl | Action/Callback专用Js事件脚本。 |
| UI.Form.js | UI.Form.js.tpl | 三个表单合一的专用Js脚本。 |
3. 选项
3.1. 基本说明
| 短参 | 全参 | 类型 | 默认 | 含义 |
|---|---|---|---|---|
| -c | --config | String | ui.json |
配置文件路径。 |
(static) iform()
aj iform
1. 命令
使用该命令生成完整的ExForm完整表单组件页。
2. 执行
2.1. 基本介绍
# 2.1.1. 命令语法
ai iform -u <ui>
# 2.1.2. 执行测试
aj iform -u UI.Basic
# ...省略部分...
[Zero AI] Zero AI 系统启动......
[Zero AI] Zero AI 加载输入参数:
{
"config": "ui.json",
"ui": "UI.Basic"
}
[Zero AI] 「启用ZT环境」,当前模块:generated/test,特殊命令只能在ZT环境使用。
[Zero AI] Zero AI 0. 基础环境......
[Zero AI] 环境变量:ZT = generated/test
[Zero AI] 模块信息:generated/test
[Zero AI] 语言信息:cn
[Zero AI] 项目目录:<项目根目录>
[Zero AI] Zero AI 1. 目录检查......
[Zero AI] Zero AI 2. 文件表:
[Zero AI] Zero AI 3. 执行React命令......
[Zero AI] Zero AI 3.1. 创建名空间文件......
[Zero AI] Zero AI 3.2. 构造资源文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Basic.json!
[Zero AI] Zero AI 3.3. 构造界面文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/UI.Basic.js!
[Zero AI] Zero AI 4. 命令执行完成!!!
代码执行完成后会在项目中生成Zero UI专用模块generated/test中唯一的两个页面。
- 执行代码之前先执行
export ZT=generated/test确保ZT环境变量有值。 - 该命令执行时模板文件位置位于
src/cab/form目录中,且模板文件以tpl结尾。 - 生成的
UI.js的按钮部分直接位于当前文件中,并且默认包含了ADD, EDIT, DELETE三个核心按钮。
2.2. 生成的文件说明
| 文件名 | 模板 | 含义 |
|---|---|---|
| Cab.json | 无 | 名空间关联文件,计算得来。 |
<Name>.json |
UI.json.tpl | 当前表单专用资源文件。 |
<Name>.js |
UI.js.tpl | 当前表单源代码专用文件。 |
3. 选项
3.1. 基本说明
| 短参 | 全参 | 类型 | 默认 | 含义 |
|---|---|---|---|---|
| -u | --ui | String | 无 | 生成的文件名,最终生成<Name>.json/<Name>.js |
| -c | --config | String | ui.json |
配置文件路径。 |
(static) jperm()
aj jperm
1. 命令
使用该命令生成某个角色的专用权限文件目录(内置所有Zero Extension标准权限)
2. 执行
2.1. 基本介绍
# 2.1.1. 命令语法
aj jperm -r <role> -i <input>
# 2.1.2. 执行测试
ai jperm -r ccc -i input
[Zero AI] Zero AI 1. 准备生成角色对应权限:ID = "ccc" ...
[Zero AI] Zero AI 2. 生成 Zero Extension 权限...
### 3. 选项
#### 3.1. 基本说明
|短参|全参|类型|默认|含义|
|---|---|---|---|:---|
|-c|--role|String|无|系统中角色的UUID。|
|-i|--input|String|无|另外一个目录,用来合并新权限。|
(static) jplugin()
aj jplugin
1. 命令
使用该命令执行插件项目初始化,设置第三方集成项目模板专用。
2. 执行
2.1. 基本介绍
# 2.1.1. 命令语法
aj jplugin -m pbc
# 2.1.2. 执行测试
aj jplugin -m pbc
# ...省略部分...
[Zero AI] Zero AI 系统启动......
[Zero AI] Zero AI 加载输入参数:
{
"module": "pbc",
"config": "workspace.json"
}
[Zero AI] 「Java环境」,后端工作路径:<工作目录>。
[Zero AI] Zero AI 0. 基础环境......
[Zero AI] Zero AI 工作目录:<工作目录>
[Zero AI] Zero AI 1. 执行Plugin命令......
[Zero AI] Zero AI 1.1. 初始化源代码目录......
[Zero AI] 创建目录:<工作目录>/src/main/java/cn
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc/component
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc/cv
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc/error
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc/input
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc/output
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc/refine
[Zero AI] 创建目录:<工作目录>/src/main/java/cn/originx/pbc/plugin
[Zero AI] Zero AI 1.2. 初始化资源目录......
[Zero AI] 创建目录:<工作目录>/src/main/resources/plugin
[Zero AI] 创建目录:<工作目录>/src/main/resources/plugin/pbc
[Zero AI] 创建目录:<工作目录>/src/main/resources/plugin/pbc/annal
[Zero AI] Zero AI 2. 生成代码......
[Zero AI] Zero AI 2.1. backlog日志配置......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/resources/plugin/pbc/annal/infix.xml!
[Zero AI] Zero AI 2.2.1. 「默认」集成配置......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/resources/plugin/pbc/integration.json!
[Zero AI] Zero AI 2.2.2. 「开发」集成配置......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/resources/plugin/pbc/integration-dev.json!
[Zero AI] Zero AI 2.2.3. 「生产」集成配置......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/resources/plugin/pbc/integration-prod.json!
[Zero AI] Zero AI 2.2.4. 基础配置......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/resources/plugin/pbc/configuration.json!
[Zero AI] Zero AI 2.3.1. 常量处理......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/cv/PbCv.java!
[Zero AI] Zero AI 2.3.2. Before/After 插件处理......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/plugin/AbstractPbBefore.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/plugin/AbstractPbAfter.java!
[Zero AI] Zero AI 2.3.3. Refine 工具处理......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/refine/PbLog.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/refine/PbPin.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/refine/Pb.java!
[Zero AI] Zero AI 2.3.4. Error 异常类处理......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/error/_501PbIoNullException.java!
[Zero AI] Zero AI 2.3.5. Component 通道组件......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/component/AbstractPbComponent.java!
[Zero AI] Zero AI 2.3.6. In 组件处理......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/input/PbIn.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/input/AbstractPbIn.java!
[Zero AI] Zero AI 2.3.7. Out 组件处理......
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/output/PbIo.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/output/AbstractPbIo.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/output/PbIoAdd.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/output/PbIoUpdate.java!
[Zero AI] (Sync)成功将数据写入到文件:<工作目录>/src/main/java/cn/originx/pbc/output/PbIoDelete.java!
[Zero AI] Zero AI 3. 执行完成......
3. 选项
3.1. 基本说明
| 短参 | 全参 | 类型 | 默认 | 含义 |
|---|---|---|---|---|
| -p | --path | String | 无 | 根据传入路径设置,如果是.则是当前目录,如果不传则从workspace.json中读取。 |
| -m | --module | String | 无 | 模块名称,通常是infix-xxx中的xxx名称。 |
| -c | --config | String | workspace.json |
配置文件路径。 |