@steedos/standard-process-approval 2.3.2-beta.6 → 2.3.2-beta.7
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.
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
const _ = require("underscore");
|
|
2
|
+
const util = require('@steedos/standard-objects').util;
|
|
3
|
+
const objectql = require("@steedos/objectql");
|
|
4
|
+
const InternalData = require('@steedos/standard-objects').internalData;
|
|
5
|
+
|
|
6
|
+
const getInternalOutboundMessages = function(sourceOutboundMessages, filters){
|
|
7
|
+
let dbOutboundMessages = Creator.getCollection("workflow_outbound_messages").find(filters, {fields:{_id:1, name:1}}).fetch();
|
|
8
|
+
let messages = [];
|
|
9
|
+
|
|
10
|
+
if(!filters.is_system){
|
|
11
|
+
_.forEach(sourceOutboundMessages, function(doc){
|
|
12
|
+
if(!_.find(dbOutboundMessages, function(p){
|
|
13
|
+
return p.name === doc.name
|
|
14
|
+
})){
|
|
15
|
+
messages.push(doc);
|
|
16
|
+
}
|
|
17
|
+
})
|
|
18
|
+
}
|
|
19
|
+
return messages;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
module.exports = {
|
|
23
|
+
beforeInsert: async function () {
|
|
24
|
+
await util.checkAPIName(this.object_name, 'name', this.doc.name, undefined, [['is_system','!=', true]]);
|
|
25
|
+
},
|
|
26
|
+
beforeUpdate: async function () {
|
|
27
|
+
if (_.has(this.doc, 'name')) {
|
|
28
|
+
await util.checkAPIName(this.object_name, 'name', this.doc.name, this.id, [['is_system','!=', true]]);
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
afterFind: async function(){
|
|
32
|
+
let filters = InternalData.parserFilters(this.query.filters)
|
|
33
|
+
let messages = [];
|
|
34
|
+
if(filters.name && filters.name.$in){
|
|
35
|
+
for(let _name of filters.name.$in){
|
|
36
|
+
let message = objectql.getWorkflowOutboundMessage(_name);
|
|
37
|
+
if(message){
|
|
38
|
+
messages.push(message);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}else if(filters._id && !filters._id.$ne){
|
|
42
|
+
let message = objectql.getWorkflowOutboundMessage(filters._id);
|
|
43
|
+
if(message){
|
|
44
|
+
messages.push(message);
|
|
45
|
+
}
|
|
46
|
+
}else if(filters.object_name){
|
|
47
|
+
messages = objectql.getObjectOutboundMessages(filters.object_name);
|
|
48
|
+
delete filters.object_name;
|
|
49
|
+
}else{
|
|
50
|
+
messages = objectql.getAllWorkflowOutboundMessages();
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
if(filters._id && filters._id.$ne){
|
|
54
|
+
if(!_.isArray(filters._id.$ne)){
|
|
55
|
+
filters._id.$ne = [filters._id.$ne]
|
|
56
|
+
}
|
|
57
|
+
for(let neid of filters._id.$ne){
|
|
58
|
+
messages = _.filter(messages, function(item){
|
|
59
|
+
return item._id !== neid
|
|
60
|
+
})
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
messages = getInternalOutboundMessages(messages, filters);
|
|
65
|
+
|
|
66
|
+
if(messages && messages.length>0){
|
|
67
|
+
this.data.values = this.data.values.concat(messages)
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
afterAggregate: async function(){
|
|
71
|
+
let filters = InternalData.parserFilters(this.query.filters)
|
|
72
|
+
let messages = [];
|
|
73
|
+
if(filters._id && filters._id.$in){
|
|
74
|
+
for(let id of filters._id.$in){
|
|
75
|
+
let message = objectql.getWorkflowOutboundMessage(id);
|
|
76
|
+
if(message){
|
|
77
|
+
messages.push(message);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}else if(filters._id && !filters._id.$ne){
|
|
81
|
+
let message = objectql.getWorkflowOutboundMessage(filters._id);
|
|
82
|
+
if(message){
|
|
83
|
+
messages.push(message);
|
|
84
|
+
}
|
|
85
|
+
}else if(filters.object_name){
|
|
86
|
+
messages = objectql.getObjectOutboundMessages(filters.object_name);
|
|
87
|
+
delete filters.object_name;
|
|
88
|
+
}else{
|
|
89
|
+
messages = objectql.getAllWorkflowOutboundMessages();
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
if(filters._id && filters._id.$ne){
|
|
93
|
+
if(!_.isArray(filters._id.$ne)){
|
|
94
|
+
filters._id.$ne = [filters._id.$ne]
|
|
95
|
+
}
|
|
96
|
+
for(let neid of filters._id.$ne){
|
|
97
|
+
messages = _.filter(messages, function(item){
|
|
98
|
+
return item._id !== neid
|
|
99
|
+
})
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
afterFind: async function(){
|
|
104
|
+
let filters = InternalData.parserFilters(this.query.filters)
|
|
105
|
+
let messages = [];
|
|
106
|
+
if(filters.name && filters.name.$in){
|
|
107
|
+
for(let _name of filters.name.$in){
|
|
108
|
+
let message = objectql.getWorkflowOutboundMessage(_name);
|
|
109
|
+
if(message){
|
|
110
|
+
messages.push(message);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}else if(filters._id && !filters._id.$ne){
|
|
114
|
+
let message = objectql.getWorkflowOutboundMessage(filters._id);
|
|
115
|
+
if(message){
|
|
116
|
+
messages.push(message);
|
|
117
|
+
}
|
|
118
|
+
}else if(filters.object_name){
|
|
119
|
+
messages = objectql.getObjectWorkflowOutboundMessages(filters.object_name);
|
|
120
|
+
delete filters.object_name;
|
|
121
|
+
}else{
|
|
122
|
+
messages = objectql.getAllWorkflowOutboundMessages();
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
if(filters._id && filters._id.$ne){
|
|
126
|
+
if(!_.isArray(filters._id.$ne)){
|
|
127
|
+
filters._id.$ne = [filters._id.$ne]
|
|
128
|
+
}
|
|
129
|
+
for(let neid of filters._id.$ne){
|
|
130
|
+
messages = _.filter(messages, function(item){
|
|
131
|
+
return item._id !== neid
|
|
132
|
+
})
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
messages = getInternalOutboundMessages(messages, filters);
|
|
137
|
+
|
|
138
|
+
if(messages && messages.length>0){
|
|
139
|
+
this.data.values = this.data.values.concat(messages)
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
afterAggregate: async function(){
|
|
143
|
+
let filters = InternalData.parserFilters(this.query.filters)
|
|
144
|
+
let messages = [];
|
|
145
|
+
if(filters._id && filters._id.$in){
|
|
146
|
+
for(let id of filters._id.$in){
|
|
147
|
+
let message = objectql.getWorkflowOutboundMessage(id);
|
|
148
|
+
if(message){
|
|
149
|
+
messages.push(message);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}else if(filters._id && !filters._id.$ne){
|
|
153
|
+
let message = objectql.getWorkflowOutboundMessage(filters._id);
|
|
154
|
+
if(message){
|
|
155
|
+
messages.push(message);
|
|
156
|
+
}
|
|
157
|
+
}else if(filters.object_name){
|
|
158
|
+
messages = objectql.getObjectOutboundMessages(filters.object_name);
|
|
159
|
+
delete filters.object_name;
|
|
160
|
+
}else{
|
|
161
|
+
messages = objectql.getAllWorkflowOutboundMessages();
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
if(filters._id && filters._id.$ne){
|
|
165
|
+
if(!_.isArray(filters._id.$ne)){
|
|
166
|
+
filters._id.$ne = [filters._id.$ne]
|
|
167
|
+
}
|
|
168
|
+
for(let neid of filters._id.$ne){
|
|
169
|
+
messages = _.filter(messages, function(item){
|
|
170
|
+
return item._id !== neid
|
|
171
|
+
})
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
messages = getInternalOutboundMessages(messages, filters);
|
|
176
|
+
|
|
177
|
+
if(messages && messages.length>0){
|
|
178
|
+
this.data.values = this.data.values.concat(messages)
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
afterCount: async function(){
|
|
182
|
+
let filters = InternalData.parserFilters(this.query.filters)
|
|
183
|
+
let messages = [];
|
|
184
|
+
if(filters._id && filters._id.$in){
|
|
185
|
+
for(let id of filters._id.$in){
|
|
186
|
+
let message = objectql.getWorkflowOutboundMessage(id);
|
|
187
|
+
if(message){
|
|
188
|
+
messages.push(message);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}else if(filters._id && !filters._id.$ne){
|
|
192
|
+
let message = objectql.getWorkflowOutboundMessage(filters._id);
|
|
193
|
+
if(message){
|
|
194
|
+
messages.push(message);
|
|
195
|
+
}
|
|
196
|
+
}else if(filters.object_name){
|
|
197
|
+
messages = objectql.getObjectWorkflowOutboundMessages(filters.object_name);
|
|
198
|
+
delete filters.object_name;
|
|
199
|
+
}else{
|
|
200
|
+
messages = objectql.getAllWorkflowOutboundMessages();
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
if(filters._id && filters._id.$ne){
|
|
204
|
+
if(!_.isArray(filters._id.$ne)){
|
|
205
|
+
filters._id.$ne = [filters._id.$ne]
|
|
206
|
+
}
|
|
207
|
+
for(let neid of filters._id.$ne){
|
|
208
|
+
messages = _.filter(messages, function(item){
|
|
209
|
+
return item._id !== neid
|
|
210
|
+
})
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
messages = getInternalOutboundMessages(messages, filters);
|
|
215
|
+
|
|
216
|
+
if(messages && messages.length>0){
|
|
217
|
+
this.data.values = this.data.values + messages.length
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
afterFindOne: async function(){
|
|
221
|
+
if(_.isEmpty(this.data.values)){
|
|
222
|
+
let id = this.id
|
|
223
|
+
|
|
224
|
+
let dbNotification = Creator.getCollection("workflow_outbound_messages").find({name: id}).fetch();
|
|
225
|
+
if(dbNotification && dbNotification.length > 0){
|
|
226
|
+
this.data.values = dbNotification[0];
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
let message = objectql.getWorkflowOutboundMessage(id);
|
|
231
|
+
if(message){
|
|
232
|
+
this.data.values = message;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steedos/standard-process-approval",
|
|
3
|
-
"version": "2.3.2-beta.
|
|
3
|
+
"version": "2.3.2-beta.7",
|
|
4
4
|
"main": "package.service.js",
|
|
5
5
|
"private": false,
|
|
6
6
|
"publishConfig": {
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
"description": "steedos package",
|
|
13
13
|
"repository": {},
|
|
14
14
|
"license": "MIT",
|
|
15
|
-
"gitHead": "
|
|
15
|
+
"gitHead": "1e2a0049e4a1bb5e7b09d020f32b60514bdc1bd9"
|
|
16
16
|
}
|