@steedos/standard-process-approval 2.5.3-beta.2 → 2.5.3-beta.4
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/main/default/objectTranslations/workflow_rule.en/workflow_rule.en.objectTranslation.yml +4 -1
- package/main/default/objectTranslations/workflow_rule.zh-CN/workflow_rule.zh-CN.objectTranslation.yml +4 -1
- package/main/default/objects/workflow-actions/workflow_rule.object.yml +3 -1
- package/main/default/services/action_field_updates.service.js +9 -9
- package/main/default/triggers/process_definition.trigger.js +7 -6
- package/main/default/triggers/workflow_rule.trigger.js +10 -9
- package/package.json +3 -3
package/main/default/objectTranslations/workflow_rule.en/workflow_rule.en.objectTranslation.yml
CHANGED
|
@@ -31,7 +31,7 @@ fields:
|
|
|
31
31
|
description:
|
|
32
32
|
formula:
|
|
33
33
|
label:
|
|
34
|
-
help:
|
|
34
|
+
help: Run Immediate Actions if the following criteria are met.
|
|
35
35
|
description:
|
|
36
36
|
updates_field_actions:
|
|
37
37
|
label: Field Update
|
|
@@ -49,6 +49,9 @@ fields:
|
|
|
49
49
|
label:
|
|
50
50
|
help:
|
|
51
51
|
description:
|
|
52
|
+
filters:
|
|
53
|
+
label: Filters
|
|
54
|
+
help: Run Time-Dependent Actions if the following filters are met.
|
|
52
55
|
time_triggers:
|
|
53
56
|
label: Time Triggers
|
|
54
57
|
time_triggers.$:
|
|
@@ -31,7 +31,7 @@ fields:
|
|
|
31
31
|
description:
|
|
32
32
|
formula:
|
|
33
33
|
label: 公式
|
|
34
|
-
help:
|
|
34
|
+
help: 满足以下公式时执行即时操作
|
|
35
35
|
description:
|
|
36
36
|
updates_field_actions:
|
|
37
37
|
label: 字段更新
|
|
@@ -49,6 +49,9 @@ fields:
|
|
|
49
49
|
label: 描述
|
|
50
50
|
help:
|
|
51
51
|
description:
|
|
52
|
+
filters:
|
|
53
|
+
label: 过滤条件
|
|
54
|
+
help: 满足以下过滤条件时执行依赖于时间的操作
|
|
52
55
|
time_triggers:
|
|
53
56
|
label: 时间触发器
|
|
54
57
|
time_triggers.$:
|
|
@@ -36,7 +36,8 @@ fields:
|
|
|
36
36
|
type: textarea
|
|
37
37
|
is_wide: true
|
|
38
38
|
required: false
|
|
39
|
-
group:
|
|
39
|
+
group: Immediate Actions
|
|
40
|
+
inlineHelpText: Run Immediate Actions if the following criteria are met.
|
|
40
41
|
updates_field_actions:
|
|
41
42
|
group: Immediate Actions
|
|
42
43
|
type: lookup
|
|
@@ -98,6 +99,7 @@ fields:
|
|
|
98
99
|
# visible_on: "{{global.mode ==='read' ? true : false}}"
|
|
99
100
|
depend_on:
|
|
100
101
|
- object_name
|
|
102
|
+
inlineHelpText: Run Time-Dependent Actions if the following filters are met.
|
|
101
103
|
group: 依赖于时间的工作流操作
|
|
102
104
|
time_triggers:
|
|
103
105
|
type: grid
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Description: 提供action_field_updates(字段更新对象)需要的数据接口
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
const
|
|
5
|
+
const register = require("@steedos/metadata-registrar");
|
|
6
6
|
const steedosI18n = require("@steedos/i18n");
|
|
7
7
|
const _ = require("lodash");
|
|
8
8
|
const clone = require("clone");
|
|
@@ -93,14 +93,14 @@ module.exports = {
|
|
|
93
93
|
if(!objectName){
|
|
94
94
|
return []
|
|
95
95
|
}
|
|
96
|
-
const objectConfig = await
|
|
96
|
+
const objectConfig = await register.getObjectConfig(objectName);
|
|
97
97
|
steedosI18n.translationObject(lng, objectConfig.name, objectConfig);
|
|
98
98
|
|
|
99
99
|
const options = [{ label: objectConfig.label, value: objectConfig.name }];
|
|
100
100
|
for (fieldName in objectConfig.fields) {
|
|
101
101
|
const field = objectConfig.fields[fieldName]
|
|
102
102
|
if (field && field.type === 'master_detail' && _.isString(field.reference_to)) {
|
|
103
|
-
const referenceToObjectConfig = await
|
|
103
|
+
const referenceToObjectConfig = await register.getObjectConfig(field.reference_to);
|
|
104
104
|
steedosI18n.translationObject(lng, referenceToObjectConfig.name, referenceToObjectConfig);
|
|
105
105
|
if (referenceToObjectConfig) {
|
|
106
106
|
options.push({
|
|
@@ -126,13 +126,13 @@ module.exports = {
|
|
|
126
126
|
|
|
127
127
|
let mainObjectName = null;
|
|
128
128
|
if (targetObject && targetObject != objectName) {
|
|
129
|
-
const targetField = await
|
|
129
|
+
const targetField = await register.getObjectConfig(objectName).fields[targetObject];
|
|
130
130
|
mainObjectName = targetField && targetField.reference_to;
|
|
131
131
|
} else {
|
|
132
132
|
mainObjectName = objectName;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
const objectConfig = await
|
|
135
|
+
const objectConfig = await register.getObjectConfig(mainObjectName);
|
|
136
136
|
const options = [];
|
|
137
137
|
if (objectConfig) {
|
|
138
138
|
steedosI18n.translationObject(lng, objectConfig.name, objectConfig);
|
|
@@ -164,13 +164,13 @@ module.exports = {
|
|
|
164
164
|
|
|
165
165
|
let mainObjectName = null;
|
|
166
166
|
if (targetObject && targetObject != objectName) {
|
|
167
|
-
const targetField = await
|
|
167
|
+
const targetField = await register.getObjectConfig(objectName).fields[targetObject];
|
|
168
168
|
mainObjectName = targetField && targetField.reference_to;
|
|
169
169
|
} else {
|
|
170
170
|
mainObjectName = objectName;
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
const objectConfig = await
|
|
173
|
+
const objectConfig = await register.getObjectConfig(mainObjectName);
|
|
174
174
|
const options = [];
|
|
175
175
|
if (objectConfig) {
|
|
176
176
|
steedosI18n.translationObject(lng, objectConfig.name, objectConfig);
|
|
@@ -208,13 +208,13 @@ module.exports = {
|
|
|
208
208
|
|
|
209
209
|
let mainObjectName = null;
|
|
210
210
|
if (targetObject && targetObject != objectName) {
|
|
211
|
-
const targetField = await
|
|
211
|
+
const targetField = await register.getObjectConfig(objectName).fields[targetObject];
|
|
212
212
|
mainObjectName = targetField && targetField.reference_to;
|
|
213
213
|
} else {
|
|
214
214
|
mainObjectName = objectName;
|
|
215
215
|
}
|
|
216
216
|
|
|
217
|
-
const objectConfig = await
|
|
217
|
+
const objectConfig = await register.getObjectConfig(mainObjectName);
|
|
218
218
|
let literal_value_schema = {
|
|
219
219
|
"type": "text",
|
|
220
220
|
"name": "literal_value",
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const _ = require("underscore");
|
|
2
2
|
const util = require('@steedos/standard-objects').util;
|
|
3
3
|
const objectql = require('@steedos/objectql');
|
|
4
|
+
const register = require('@steedos/metadata-registrar');
|
|
4
5
|
const InternalData = require('@steedos/standard-objects').internalData;
|
|
5
6
|
|
|
6
7
|
function setSpaceAndOwner(record, that){
|
|
@@ -55,12 +56,12 @@ module.exports = {
|
|
|
55
56
|
let filters = InternalData.parserFilters(this.query.filters)
|
|
56
57
|
let approvalProcesses = [];
|
|
57
58
|
if(filters.name){
|
|
58
|
-
approvalProcess =
|
|
59
|
+
approvalProcess = register.getSourceApprovalProcess(filters.name);
|
|
59
60
|
if(approvalProcess){
|
|
60
61
|
approvalProcesses.push(approvalProcess);
|
|
61
62
|
}
|
|
62
63
|
}else{
|
|
63
|
-
approvalProcesses =
|
|
64
|
+
approvalProcesses = register.getSourceApprovalProcesses();
|
|
64
65
|
}
|
|
65
66
|
|
|
66
67
|
if (filters.object_name){
|
|
@@ -77,12 +78,12 @@ module.exports = {
|
|
|
77
78
|
let filters = InternalData.parserFilters(this.query.filters)
|
|
78
79
|
let approvalProcesses = [];
|
|
79
80
|
if(filters.name){
|
|
80
|
-
approvalProcess =
|
|
81
|
+
approvalProcess = register.getSourceApprovalProcess(filters.name);
|
|
81
82
|
if(approvalProcess){
|
|
82
83
|
approvalProcesses.push(approvalProcess);
|
|
83
84
|
}
|
|
84
85
|
}else{
|
|
85
|
-
approvalProcesses =
|
|
86
|
+
approvalProcesses = register.getSourceApprovalProcesses();
|
|
86
87
|
}
|
|
87
88
|
|
|
88
89
|
if (filters.object_name){
|
|
@@ -99,12 +100,12 @@ module.exports = {
|
|
|
99
100
|
let filters = InternalData.parserFilters(this.query.filters)
|
|
100
101
|
let approvalProcesses = [];
|
|
101
102
|
if(filters.name){
|
|
102
|
-
approvalProcess =
|
|
103
|
+
approvalProcess = register.getSourceApprovalProcess(filters.name);
|
|
103
104
|
if(approvalProcess){
|
|
104
105
|
approvalProcesses.push(approvalProcess);
|
|
105
106
|
}
|
|
106
107
|
}else{
|
|
107
|
-
approvalProcesses =
|
|
108
|
+
approvalProcesses = register.getSourceApprovalProcesses();
|
|
108
109
|
}
|
|
109
110
|
|
|
110
111
|
if (filters.object_name){
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* @Author: sunhaolin@hotoa.com
|
|
3
3
|
* @Date: 2021-08-30 12:06:41
|
|
4
|
-
* @LastEditors:
|
|
5
|
-
* @LastEditTime:
|
|
4
|
+
* @LastEditors: baozhoutao@steedos.com
|
|
5
|
+
* @LastEditTime: 2023-05-30 17:29:53
|
|
6
6
|
* @Description:
|
|
7
7
|
*/
|
|
8
8
|
const _ = require("underscore");
|
|
9
9
|
const util = require('@steedos/standard-objects').util;
|
|
10
10
|
const objectql = require("@steedos/objectql");
|
|
11
|
+
const register = require("@steedos/metadata-registrar")
|
|
11
12
|
const InternalData = require('@steedos/standard-objects').internalData;
|
|
12
13
|
|
|
13
14
|
const getInternalWorkflowRules = function(sourceWorkflowRules, filters){
|
|
@@ -40,10 +41,10 @@ module.exports = {
|
|
|
40
41
|
let filters = InternalData.parserFilters(this.query.filters)
|
|
41
42
|
let workflowRules = [];
|
|
42
43
|
if(filters.object_name){
|
|
43
|
-
workflowRules =
|
|
44
|
+
workflowRules = register.getObjectWorkflowRules(filters.object_name);
|
|
44
45
|
delete filters.object_name;
|
|
45
46
|
}else{
|
|
46
|
-
workflowRules =
|
|
47
|
+
workflowRules = register.getAllWorkflowRules();
|
|
47
48
|
}
|
|
48
49
|
|
|
49
50
|
workflowRules = getInternalWorkflowRules(workflowRules, filters);
|
|
@@ -56,10 +57,10 @@ module.exports = {
|
|
|
56
57
|
let filters = InternalData.parserFilters(this.query.filters)
|
|
57
58
|
let workflowRules = [];
|
|
58
59
|
if(filters.object_name){
|
|
59
|
-
workflowRules =
|
|
60
|
+
workflowRules = register.getObjectWorkflowRules(filters.object_name);
|
|
60
61
|
delete filters.object_name;
|
|
61
62
|
}else{
|
|
62
|
-
workflowRules =
|
|
63
|
+
workflowRules = register.getAllWorkflowRules();
|
|
63
64
|
}
|
|
64
65
|
|
|
65
66
|
workflowRules = getInternalWorkflowRules(workflowRules, filters);
|
|
@@ -72,10 +73,10 @@ module.exports = {
|
|
|
72
73
|
let filters = InternalData.parserFilters(this.query.filters)
|
|
73
74
|
let workflowRules = [];
|
|
74
75
|
if(filters.object_name){
|
|
75
|
-
workflowRules =
|
|
76
|
+
workflowRules = register.getObjectWorkflowRules(filters.object_name);
|
|
76
77
|
delete filters.object_name;
|
|
77
78
|
}else{
|
|
78
|
-
workflowRules =
|
|
79
|
+
workflowRules = register.getAllWorkflowRules();
|
|
79
80
|
}
|
|
80
81
|
|
|
81
82
|
workflowRules = getInternalWorkflowRules(workflowRules, filters);
|
|
@@ -87,7 +88,7 @@ module.exports = {
|
|
|
87
88
|
afterFindOne: async function(){
|
|
88
89
|
if(_.isEmpty(this.data.values)){
|
|
89
90
|
let id = this.id
|
|
90
|
-
let workflowRule =
|
|
91
|
+
let workflowRule = register.getWorkflowRule(id);
|
|
91
92
|
if(workflowRule){
|
|
92
93
|
this.data.values = workflowRule;
|
|
93
94
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steedos/standard-process-approval",
|
|
3
|
-
"version": "2.5.3-beta.
|
|
3
|
+
"version": "2.5.3-beta.4",
|
|
4
4
|
"main": "package.service.js",
|
|
5
5
|
"private": false,
|
|
6
6
|
"publishConfig": {
|
|
@@ -10,10 +10,10 @@
|
|
|
10
10
|
"steedos"
|
|
11
11
|
],
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@steedos/process": "2.5.3-beta.
|
|
13
|
+
"@steedos/process": "2.5.3-beta.4"
|
|
14
14
|
},
|
|
15
15
|
"description": "steedos package",
|
|
16
16
|
"repository": {},
|
|
17
17
|
"license": "MIT",
|
|
18
|
-
"gitHead": "
|
|
18
|
+
"gitHead": "864f038f9cd5f12c521dce09498ca74d8b156077"
|
|
19
19
|
}
|