cloudcc-cli 2.2.8 → 2.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cloudcc-cache.json +32 -1
- package/.cursor/skills/cloudcc-cli-dev/BACKEND_CLASS.md +97 -0
- package/.cursor/skills/cloudcc-cli-dev/BACKEND_SCHEDULE.md +78 -0
- package/.cursor/skills/cloudcc-cli-dev/BACKEND_TRIGGER.md +137 -0
- package/.cursor/skills/cloudcc-cli-dev/CLI_CHEATSHEET.md +215 -0
- package/{cloudcc-cli-dev → .cursor/skills/cloudcc-cli-dev}/SKILL.md +7 -2
- package/.cursor/skills/cloudcc-cli-dev/VUE_CUSTOM_COMPONENT.md +151 -0
- package/README.md +11 -0
- package/bin/index.js +2 -0
- package/build/component-cc-test-001.common.js +831 -0
- package/build/component-cc-test-001.common.js.map +1 -0
- package/build/component-cc-test-001.css +1 -0
- package/build/component-cc-test-001.umd.js +874 -0
- package/build/component-cc-test-001.umd.js.map +1 -0
- package/build/component-cc-test-001.umd.min.js +8 -0
- package/build/component-cc-test-001.umd.min.js.map +1 -0
- package/build/demo.html +1 -0
- package/docs/CloudCC/350/207/252/345/256/232/344/271/211/347/273/204/344/273/266/344/275/277/347/224/250/350/257/264/346/230/216.md +130 -0
- package/docs/cloudcc/345/256/232/346/227/266/344/275/234/344/270/232.md +472 -0
- package/docs/cloudcc/345/256/232/346/227/266/347/261/273.md +302 -0
- package/docs//350/207/252/345/256/232/344/271/211/347/261/273.md +258 -0
- package/docs//350/247/246/345/217/221/345/231/250/347/261/273.md +404 -0
- package/package.json +1 -1
- package/plugins/cc-test-001/cc-test-001.vue +32 -0
- package/plugins/cc-test-001/components/HelloWorld.vue +11 -0
- package/plugins/cc-test-001/config.json +6 -0
- package/src/classes/index.js +1 -6
- package/src/plugin/delete.js +91 -0
- package/src/plugin/doc.js +76 -0
- package/src/plugin/index.js +1 -0
- package/src/triggers/doc.js +258 -222
- package/src/triggers/pullList.js +3 -0
- package/cloudcc-cli-dev/BACKEND_CODE.md +0 -114
- package/cloudcc-cli-dev/CLI_CHEATSHEET.md +0 -90
- package/cloudcc-cli-dev/VUE_CUSTOM_COMPONENT.md +0 -50
- /package/{cloudcc-cli-dev → .cursor/skills/cloudcc-cli-dev}/INSTALL_AND_BOOTSTRAP.md +0 -0
- /package/{cloudcc-cli-dev → .cursor/skills/cloudcc-cli-dev}/OBJECTS_AND_FIELDS.md +0 -0
- /package/{cloudcc-cli-dev → .cursor/skills/cloudcc-cli-dev}/REQUIREMENTS_BREAKDOWN.md +0 -0
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
## 覆盖范围
|
|
2
|
-
|
|
3
|
-
本篇聚焦 CloudCC 后端 Java 侧二开资产(通过 `cc` 命令):
|
|
4
|
-
|
|
5
|
-
- 自定义类(Class)
|
|
6
|
-
- 定时类(Scheduled Class / Timer)
|
|
7
|
-
- 触发器(Trigger)
|
|
8
|
-
|
|
9
|
-
并给出“创建 → 拉取 → 编辑 → 发布”的闭环流程。
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## 目录结构(以本仓库约定为准)
|
|
14
|
-
|
|
15
|
-
创建后通常会生成在以下目录(项目根下):
|
|
16
|
-
|
|
17
|
-
- `classes/{ClassName}/...`
|
|
18
|
-
- `schedule/{ScheduleName}/...`
|
|
19
|
-
- `triggers/{objectName}/{triggerName}/...`
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## 源码同步边界(必须理解)
|
|
24
|
-
|
|
25
|
-
该项目使用“片段同步”策略:
|
|
26
|
-
|
|
27
|
-
- **自定义类 / 定时类 / 触发器**:只会拉取/发布 `@SOURCE_CONTENT_START` 与 `@SOURCE_CONTENT_END` 之间的内容。
|
|
28
|
-
|
|
29
|
-
这意味着:
|
|
30
|
-
|
|
31
|
-
- 你可以在片段外保留模板、import、类结构等;真正可同步的业务逻辑写在片段内。
|
|
32
|
-
- 拉取会覆盖片段区域,因此片段内不要放本地专用逻辑(如临时调试代码)。
|
|
33
|
-
|
|
34
|
-
---
|
|
35
|
-
|
|
36
|
-
## 自定义类(Class)
|
|
37
|
-
|
|
38
|
-
### 创建
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
# 在项目根目录执行
|
|
42
|
-
cc create classes <ClassName>
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
### 拉取 / 发布(片段同步)
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
cc pull classes <ClassName>
|
|
49
|
-
cc publish classes <ClassName>
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
> 说明:发布/拉取只会处理 `@SOURCE_CONTENT_START` 与 `@SOURCE_CONTENT_END` 之间的代码片段。
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
## 定时类(Scheduled Class)
|
|
57
|
-
|
|
58
|
-
### 创建
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
# 在项目根目录执行
|
|
62
|
-
cc create schedule <ScheduleName>
|
|
63
|
-
cc pull schedule <ScheduleName>
|
|
64
|
-
cc publish schedule <ScheduleName>
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
## 触发器(Trigger)
|
|
70
|
-
|
|
71
|
-
### 创建(关键入参)
|
|
72
|
-
|
|
73
|
-
触发器的 CLI 创建参数是一个 JSON 对象(需要 `encodeURI` 后作为单参传入):
|
|
74
|
-
|
|
75
|
-
```bash
|
|
76
|
-
cc create triggers <encodedJson>
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
JSON 字段(示例):
|
|
80
|
-
|
|
81
|
-
- `name`: 触发器名(Java 命名规范)
|
|
82
|
-
- `schemetableName`: 对象表名(如从对象列表拿到)
|
|
83
|
-
- `targetObjectId`: 目标对象 ID
|
|
84
|
-
- `triggerTime`: 触发时机(beforeInsert/afterUpdate/.../approval 等)
|
|
85
|
-
|
|
86
|
-
示例(macOS/zsh,注意引号与编码):
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
cc create triggers "$(node -e 'console.log(encodeURI(JSON.stringify({name:\"MyTrigger\",schemetableName:\"account\",targetObjectId:\"a01...\",triggerTime:\"beforeInsert\"})))')"
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
### 拉取 / 发布
|
|
93
|
-
|
|
94
|
-
```bash
|
|
95
|
-
# namePath 形如:objectName/triggerName(注意 objectName 通常为小写目录)
|
|
96
|
-
cc pull triggers <namePath>
|
|
97
|
-
cc publish triggers <namePath>
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
> 说明:发布/拉取只会处理 `@SOURCE_CONTENT_START` 与 `@SOURCE_CONTENT_END` 之间的代码片段。
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## 推荐工作流(AI 执行顺序)
|
|
105
|
-
|
|
106
|
-
当需求涉及后端逻辑时,建议 AI 按以下顺序执行:
|
|
107
|
-
|
|
108
|
-
1. 通过对象/字段工具确认数据结构(必要时先建对象字段)
|
|
109
|
-
2. 创建类/触发器/定时器骨架(create_*)
|
|
110
|
-
3. 拉取线上版本(pull_*)对齐基线(如是增量改造)
|
|
111
|
-
4. 编写片段内业务逻辑(注意批量与幂等)
|
|
112
|
-
5. 发布(publish_*)
|
|
113
|
-
6. 回归验证:单条、批量、权限、异常分支
|
|
114
|
-
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
## CLI 入口速查(本仓库已定义)
|
|
2
|
-
|
|
3
|
-
`package.json` 中定义的 bin:
|
|
4
|
-
|
|
5
|
-
- `cc`:主入口(支持 `create` / `get` / `pull` / `publish` / `doc` 等)
|
|
6
|
-
- `cloudccCreate`:创建模板项目(内部调用 `src/project/create.js`)
|
|
7
|
-
- `cloudccBuild`:组件发布/构建相关(内部调用 `src/plugin/publish.js`)
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## 常用 CLI 命令速查(按开发流程分组)
|
|
12
|
-
|
|
13
|
-
### 项目与文档
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
# 版本
|
|
17
|
-
cc -v
|
|
18
|
-
|
|
19
|
-
# 创建模板项目
|
|
20
|
-
cc create project <projectName>
|
|
21
|
-
|
|
22
|
-
# 输出项目文档(纯 CLI 文档)
|
|
23
|
-
cc doc project overview
|
|
24
|
-
cc doc project key-guide
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
### 对象与字段
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
# 创建自定义对象
|
|
31
|
-
cc create object <projectPath> <label>
|
|
32
|
-
|
|
33
|
-
# 查询对象列表(输出 JSON)
|
|
34
|
-
# type 可选:standard / custom / both(默认:both)
|
|
35
|
-
cc get object <projectPath> [type]
|
|
36
|
-
|
|
37
|
-
# 查询对象字段(输出 JSON)
|
|
38
|
-
cc get fields <projectPath> <objprefix>
|
|
39
|
-
|
|
40
|
-
# 创建字段(字段类型决定参数个数)
|
|
41
|
-
cc create fields <projectPath> <fieldType> <objid> <nameLabel> [ptext|lookupObj]
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
### 菜单与应用
|
|
45
|
-
|
|
46
|
-
```bash
|
|
47
|
-
# 创建菜单(标签页)
|
|
48
|
-
cc create menu <type> <projectPath> <resourceId> <tabName> [tabStyle] [mobileimg] [cloudccservicetab]
|
|
49
|
-
|
|
50
|
-
# 创建应用
|
|
51
|
-
cc create application <projectPath> <appName> <appCode> [menuIds]
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### 自定义类(classes)
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
cc create classes <ClassName>
|
|
58
|
-
cc pull classes <ClassName>
|
|
59
|
-
cc publish classes <ClassName>
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
### 定时类(schedule)
|
|
63
|
-
|
|
64
|
-
```bash
|
|
65
|
-
cc create schedule <ScheduleName>
|
|
66
|
-
cc pull schedule <ScheduleName>
|
|
67
|
-
cc publish schedule <ScheduleName>
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### 触发器(triggers)
|
|
71
|
-
|
|
72
|
-
```bash
|
|
73
|
-
# 创建:参数是一个 JSON(需 encodeURI 后作为单个参数传入)
|
|
74
|
-
cc create triggers <encodedJson>
|
|
75
|
-
|
|
76
|
-
# 拉取/发布:namePath 形如 objectName/triggerName
|
|
77
|
-
cc pull triggers <namePath>
|
|
78
|
-
cc publish triggers <namePath>
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
### 自定义组件(plugin / plugins)
|
|
82
|
-
|
|
83
|
-
```bash
|
|
84
|
-
# 创建(生成到 plugins/<pluginName>/)
|
|
85
|
-
cc create plugin <pluginName>
|
|
86
|
-
|
|
87
|
-
# 发布(编译并上传)
|
|
88
|
-
cc publish plugin <pluginName>
|
|
89
|
-
```
|
|
90
|
-
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
## 覆盖范围
|
|
2
|
-
|
|
3
|
-
本篇聚焦 CloudCC Vue2.x 自定义组件(Custom Component):
|
|
4
|
-
|
|
5
|
-
- 创建组件骨架
|
|
6
|
-
- 编辑与最佳实践入口
|
|
7
|
-
- 编译与发布到服务器
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## 创建自定义组件
|
|
12
|
-
|
|
13
|
-
### CLI 命令
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
# 在项目根目录执行(会生成到 plugins/<pluginName>/)
|
|
17
|
-
cc create plugin <pluginName>
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
创建后会生成组件主文件、子组件目录与配置文件(以项目模板为准)。
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## 发布组件
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
cc publish plugin <pluginName>
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
> 发布会执行编译/打包/上传;如果组件依赖复杂,注意依赖收集与发布策略。
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## 编辑要点(CLI 项目约束)
|
|
35
|
-
|
|
36
|
-
- 组件目录通常为 `plugins/<pluginName>/`
|
|
37
|
-
- 确保所有 `<style>` 标签带 `scoped`,避免全局样式污染
|
|
38
|
-
- 发布通过 `cc publish plugin <pluginName>` 执行编译与上传
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## 选型建议(组件 vs 客户端脚本)
|
|
43
|
-
|
|
44
|
-
- **自定义组件**:复杂交互、强 UI、可复用组件化、需要更完整工程化能力。
|
|
45
|
-
- **客户端脚本**:轻量联动、页面钩子逻辑、少量 UI 提示与校验。
|
|
46
|
-
|
|
47
|
-
一般建议:
|
|
48
|
-
|
|
49
|
-
- 先用脚本满足基础联动;当逻辑与 UI 复杂度上升时,再升级为组件方案。
|
|
50
|
-
|
|
File without changes
|
|
File without changes
|
|
File without changes
|