@steedos/service-metadata-objects 2.1.82 → 2.1.86
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/lib/actionsHandler.d.ts +2 -1
- package/lib/actionsHandler.js +67 -22
- package/lib/actionsHandler.js.map +1 -1
- package/lib/formula/core.js +7 -5
- package/lib/formula/core.js.map +1 -1
- package/lib/formula/field_formula.js +16 -11
- package/lib/formula/field_formula.js.map +1 -1
- package/lib/formula/formulaActionHandler.js +26 -26
- package/lib/formula/formulaActionHandler.js.map +1 -1
- package/lib/formula/util.js +20 -13
- package/lib/formula/util.js.map +1 -1
- package/lib/lookup/LookupActionHandler.js +12 -12
- package/lib/lookup/LookupActionHandler.js.map +1 -1
- package/lib/master-detail/masterDetailActionHandler.js +31 -30
- package/lib/master-detail/masterDetailActionHandler.js.map +1 -1
- package/lib/objects/fields/index.js +1 -1
- package/lib/objects/fields/index.js.map +1 -1
- package/lib/objects/index.js +26 -6
- package/lib/objects/index.js.map +1 -1
- package/lib/objects.service.js +44 -36
- package/lib/objects.service.js.map +1 -1
- package/lib/summary/summaryActionHandler.js +18 -18
- package/lib/summary/summaryActionHandler.js.map +1 -1
- package/package.json +3 -4
- package/src/actionsHandler.ts +56 -11
- package/src/formula/formulaActionHandler.ts +1 -1
- package/src/objects/index.ts +27 -1
- package/src/objects.service.ts +11 -4
package/lib/actionsHandler.d.ts
CHANGED
|
@@ -15,13 +15,14 @@ export declare class ActionHandlers {
|
|
|
15
15
|
onRegister: any;
|
|
16
16
|
onDestroy: any;
|
|
17
17
|
onRegistered: any;
|
|
18
|
-
registerObjectMemEntry: Map<string,
|
|
18
|
+
registerObjectMemEntry: Map<string, any>;
|
|
19
19
|
constructor(onRegister: any, onDestroy: any, onRegistered: any);
|
|
20
20
|
registerObject(ctx: any, objectApiName: any, data: any, meta: any): Promise<boolean>;
|
|
21
21
|
get(ctx: any): Promise<MetadataObject>;
|
|
22
22
|
getAll(ctx: any): Promise<Array<MetadataObject>>;
|
|
23
23
|
add(ctx: any): Promise<boolean>;
|
|
24
24
|
addConfig(ctx: any): Promise<boolean>;
|
|
25
|
+
addConfigs(ctx: any): Promise<boolean>;
|
|
25
26
|
change(ctx: any): Promise<boolean>;
|
|
26
27
|
delete(ctx: any): Promise<boolean>;
|
|
27
28
|
verify(ctx: any): Promise<boolean>;
|
package/lib/actionsHandler.js
CHANGED
|
@@ -20,12 +20,14 @@ class ActionHandlers {
|
|
|
20
20
|
this.registerObjectMemEntry = new Map();
|
|
21
21
|
}
|
|
22
22
|
registerObject(ctx, objectApiName, data, meta) {
|
|
23
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
24
|
-
if (
|
|
23
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
24
|
+
if (objectApiName != objects_1.MONGO_BASE_OBJECT &&
|
|
25
|
+
objectApiName != objects_1.SQL_BASE_OBJECT && this.onRegister && _.isFunction(this.onRegister)) {
|
|
25
26
|
yield this.onRegister(data);
|
|
26
27
|
}
|
|
27
28
|
yield ctx.broker.call('metadata.add', { key: cacherKey(objectApiName), data: data }, { meta: meta });
|
|
28
|
-
if (
|
|
29
|
+
if (objectApiName != objects_1.MONGO_BASE_OBJECT &&
|
|
30
|
+
objectApiName != objects_1.SQL_BASE_OBJECT && this.onRegistered && _.isFunction(this.onRegistered)) {
|
|
29
31
|
yield this.onRegistered(data);
|
|
30
32
|
}
|
|
31
33
|
// 为每个对象 setTimeout 延时执行
|
|
@@ -36,7 +38,7 @@ class ActionHandlers {
|
|
|
36
38
|
}
|
|
37
39
|
timeoutId = setTimeout(function () {
|
|
38
40
|
ctx.broker.emit("metadata.objects.inserted", { objectApiName: objectApiName, isInsert: true });
|
|
39
|
-
ctx.broker.
|
|
41
|
+
ctx.broker.broadcast(`${data.datasource}.@${objectApiName}.metadata.objects.inserted`, { objectApiName: objectApiName, isInsert: true, data: data });
|
|
40
42
|
registerObjectMemEntry.delete(objectApiName);
|
|
41
43
|
}, DELAY_MESSAGE_OF_OBJECT_CHANGED);
|
|
42
44
|
registerObjectMemEntry.set(objectApiName, timeoutId);
|
|
@@ -44,12 +46,12 @@ class ActionHandlers {
|
|
|
44
46
|
});
|
|
45
47
|
}
|
|
46
48
|
get(ctx) {
|
|
47
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
48
50
|
return yield ctx.broker.call('metadata.get', { key: cacherKey(ctx.params.objectApiName) }, { meta: ctx.meta });
|
|
49
51
|
});
|
|
50
52
|
}
|
|
51
53
|
getAll(ctx) {
|
|
52
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
53
55
|
const datasource = ctx.params.datasource;
|
|
54
56
|
const objects = yield ctx.broker.call('metadata.filter', { key: cacherKey("*") }, { meta: ctx.meta });
|
|
55
57
|
if (datasource) {
|
|
@@ -62,7 +64,7 @@ class ActionHandlers {
|
|
|
62
64
|
});
|
|
63
65
|
}
|
|
64
66
|
add(ctx) {
|
|
65
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
66
68
|
if (true) {
|
|
67
69
|
return true;
|
|
68
70
|
}
|
|
@@ -73,7 +75,7 @@ class ActionHandlers {
|
|
|
73
75
|
});
|
|
74
76
|
}
|
|
75
77
|
addConfig(ctx) {
|
|
76
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
77
79
|
let config = ctx.params.data;
|
|
78
80
|
if (config.extend) {
|
|
79
81
|
config.name = config.extend;
|
|
@@ -91,23 +93,64 @@ class ActionHandlers {
|
|
|
91
93
|
}
|
|
92
94
|
}
|
|
93
95
|
yield ctx.broker.call('metadata.addServiceMetadata', { key: cacherKey(metadataApiName), data: config }, { meta: Object.assign({}, ctx.meta, { metadataType: _1.METADATA_TYPE, metadataApiName: metadataApiName }) });
|
|
94
|
-
const objectConfig = yield objects_1.refreshObject(ctx, metadataApiName);
|
|
96
|
+
const objectConfig = yield (0, objects_1.refreshObject)(ctx, metadataApiName);
|
|
95
97
|
if (!objectConfig) {
|
|
96
98
|
return;
|
|
97
99
|
}
|
|
98
|
-
const objectServiceName = objects_1.getObjectServiceName(metadataApiName);
|
|
99
|
-
|
|
100
|
+
const objectServiceName = (0, objects_1.getObjectServiceName)(metadataApiName);
|
|
101
|
+
const result = yield this.registerObject(ctx, metadataApiName, objectConfig, {
|
|
100
102
|
caller: {
|
|
101
103
|
// nodeID: broker.nodeID,
|
|
102
104
|
service: {
|
|
103
105
|
name: objectServiceName,
|
|
106
|
+
// version: broker.service.version, TODO
|
|
107
|
+
// fullName: broker.service.fullName, TODO
|
|
104
108
|
}
|
|
105
109
|
}
|
|
106
110
|
});
|
|
111
|
+
return result;
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
addConfigs(ctx) {
|
|
115
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
116
|
+
let configs = ctx.params.data;
|
|
117
|
+
for (let config of configs) {
|
|
118
|
+
if (config.extend) {
|
|
119
|
+
config.name = config.extend;
|
|
120
|
+
}
|
|
121
|
+
const metadataApiName = config.name;
|
|
122
|
+
if (!config.isMain) {
|
|
123
|
+
const metadataConfig = yield ctx.broker.call('metadata.getServiceMetadata', {
|
|
124
|
+
serviceName: ctx.meta.metadataServiceName,
|
|
125
|
+
metadataType: _1.METADATA_TYPE,
|
|
126
|
+
metadataApiName: metadataApiName,
|
|
127
|
+
}, { meta: ctx.meta });
|
|
128
|
+
if (metadataConfig && metadataConfig.metadata) {
|
|
129
|
+
config.list_views = _.defaultsDeep(metadataConfig.metadata.list_views || {}, config.list_views || {});
|
|
130
|
+
config = _.defaultsDeep(config, metadataConfig.metadata);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
yield ctx.broker.call('metadata.addServiceMetadata', { key: cacherKey(metadataApiName), data: config }, { meta: Object.assign({}, ctx.meta, { metadataType: _1.METADATA_TYPE, metadataApiName: metadataApiName }) });
|
|
134
|
+
const objectConfig = yield (0, objects_1.refreshObject)(ctx, metadataApiName);
|
|
135
|
+
if (!objectConfig) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
const objectServiceName = (0, objects_1.getObjectServiceName)(metadataApiName);
|
|
139
|
+
yield this.registerObject(ctx, metadataApiName, objectConfig, {
|
|
140
|
+
caller: {
|
|
141
|
+
// nodeID: broker.nodeID,
|
|
142
|
+
service: {
|
|
143
|
+
name: objectServiceName,
|
|
144
|
+
// version: broker.service.version, TODO
|
|
145
|
+
// fullName: broker.service.fullName, TODO
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
}
|
|
107
150
|
});
|
|
108
151
|
}
|
|
109
152
|
change(ctx) {
|
|
110
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
153
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
111
154
|
const { data, oldData } = ctx.params;
|
|
112
155
|
if (oldData.name != data.name) {
|
|
113
156
|
// console.log(`change==================`, oldData.name, data.name);
|
|
@@ -119,42 +162,44 @@ class ActionHandlers {
|
|
|
119
162
|
});
|
|
120
163
|
}
|
|
121
164
|
delete(ctx) {
|
|
122
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
165
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
123
166
|
// console.log(`delete==================`, ctx.params.objectApiName);
|
|
124
167
|
return yield this.deleteObject(ctx, ctx.params.objectApiName);
|
|
125
168
|
});
|
|
126
169
|
}
|
|
127
170
|
verify(ctx) {
|
|
128
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
171
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
129
172
|
console.log("verify");
|
|
130
173
|
return true;
|
|
131
174
|
});
|
|
132
175
|
}
|
|
133
176
|
getOriginalObject(ctx) {
|
|
134
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
135
|
-
return yield objects_1.getOriginalObject(ctx, ctx.params.objectApiName);
|
|
177
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
178
|
+
return yield (0, objects_1.getOriginalObject)(ctx, ctx.params.objectApiName);
|
|
136
179
|
});
|
|
137
180
|
}
|
|
138
181
|
refresh(ctx) {
|
|
139
182
|
var e_1, _a;
|
|
140
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
183
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
141
184
|
const { isClear, metadataApiNames } = ctx.params;
|
|
142
185
|
if (isClear) {
|
|
143
186
|
try {
|
|
144
|
-
for (var metadataApiNames_1 = tslib_1.__asyncValues(metadataApiNames), metadataApiNames_1_1; metadataApiNames_1_1 = yield metadataApiNames_1.next(), !metadataApiNames_1_1.done;) {
|
|
187
|
+
for (var metadataApiNames_1 = (0, tslib_1.__asyncValues)(metadataApiNames), metadataApiNames_1_1; metadataApiNames_1_1 = yield metadataApiNames_1.next(), !metadataApiNames_1_1.done;) {
|
|
145
188
|
const metadataApiName = metadataApiNames_1_1.value;
|
|
146
|
-
const objectConfig = yield objects_1.refreshObject(ctx, metadataApiName);
|
|
189
|
+
const objectConfig = yield (0, objects_1.refreshObject)(ctx, metadataApiName);
|
|
147
190
|
if (!objectConfig) {
|
|
148
191
|
// console.log(`refresh deleteObject==================`, metadataApiName);
|
|
149
192
|
yield this.deleteObject(ctx, metadataApiName);
|
|
150
193
|
}
|
|
151
194
|
else {
|
|
152
|
-
const objectServiceName = objects_1.getObjectServiceName(metadataApiName);
|
|
195
|
+
const objectServiceName = (0, objects_1.getObjectServiceName)(metadataApiName);
|
|
153
196
|
yield this.registerObject(ctx, metadataApiName, objectConfig, {
|
|
154
197
|
caller: {
|
|
155
198
|
// nodeID: broker.nodeID,
|
|
156
199
|
service: {
|
|
157
200
|
name: objectServiceName,
|
|
201
|
+
// version: broker.service.version, TODO
|
|
202
|
+
// fullName: broker.service.fullName, TODO
|
|
158
203
|
}
|
|
159
204
|
}
|
|
160
205
|
});
|
|
@@ -172,13 +217,13 @@ class ActionHandlers {
|
|
|
172
217
|
});
|
|
173
218
|
}
|
|
174
219
|
deleteObject(ctx, objectApiName) {
|
|
175
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
220
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
176
221
|
ctx.broker.broadcast(`delete.metadata.${_1.METADATA_TYPE}`, { objectApiName: objectApiName });
|
|
177
222
|
return true;
|
|
178
223
|
});
|
|
179
224
|
}
|
|
180
225
|
handleDeleteObject(ctx, objectApiName) {
|
|
181
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
226
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
182
227
|
const { metadata } = (yield ctx.broker.call("metadata.get", { key: cacherKey(objectApiName) }, { meta: ctx.meta })) || {};
|
|
183
228
|
yield ctx.broker.call('metadata.delete', { key: cacherKey(objectApiName) }, { meta: ctx.meta });
|
|
184
229
|
if (this.onDestroy && _.isFunction(this.onDestroy)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionsHandler.js","sourceRoot":"","sources":["../src/actionsHandler.ts"],"names":[],"mappings":";;;;AAAA,4BAA6B;AAC7B,wBAAkC;AAClC,
|
|
1
|
+
{"version":3,"file":"actionsHandler.js","sourceRoot":"","sources":["../src/actionsHandler.ts"],"names":[],"mappings":"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"}
|
package/lib/formula/core.js
CHANGED
|
@@ -9,9 +9,10 @@ const util_1 = require("./util");
|
|
|
9
9
|
* 根据公式内容,取出其中{}中的变量
|
|
10
10
|
* @param formula
|
|
11
11
|
*/
|
|
12
|
-
|
|
13
|
-
return formula_1.extract(formula);
|
|
12
|
+
const pickFormulaVars = (formula) => {
|
|
13
|
+
return (0, formula_1.extract)(formula);
|
|
14
14
|
};
|
|
15
|
+
exports.pickFormulaVars = pickFormulaVars;
|
|
15
16
|
/**
|
|
16
17
|
* 某个对象上的公式字段是否引用了某个对象和字段
|
|
17
18
|
* @param formulaObjectName 公式字段在所在对象名称
|
|
@@ -19,14 +20,15 @@ exports.pickFormulaVars = (formula) => {
|
|
|
19
20
|
* @param object_name 是否引用了该对象
|
|
20
21
|
* @param field_name 是否引用了该字段
|
|
21
22
|
*/
|
|
22
|
-
|
|
23
|
-
const configs = yield field_formula_1.getObjectFieldFormulaConfigs(formulaObjectName, formulaFieldName);
|
|
23
|
+
const isFormulaFieldQuotingObjectAndFields = (formulaObjectName, formulaFieldName, objectName, fieldNames) => (0, tslib_1.__awaiter)(void 0, void 0, void 0, function* () {
|
|
24
|
+
const configs = yield (0, field_formula_1.getObjectFieldFormulaConfigs)(formulaObjectName, formulaFieldName);
|
|
24
25
|
if (configs && configs.length) {
|
|
25
|
-
return util_1.isFieldFormulaConfigQuotingObjectAndFields(configs[0], objectName, fieldNames);
|
|
26
|
+
return (0, util_1.isFieldFormulaConfigQuotingObjectAndFields)(configs[0], objectName, fieldNames);
|
|
26
27
|
}
|
|
27
28
|
else {
|
|
28
29
|
// 没找到公式字段配置说明传入的参数不是公式字段
|
|
29
30
|
return false;
|
|
30
31
|
}
|
|
31
32
|
});
|
|
33
|
+
exports.isFormulaFieldQuotingObjectAndFields = isFormulaFieldQuotingObjectAndFields;
|
|
32
34
|
//# sourceMappingURL=core.js.map
|
package/lib/formula/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/formula/core.ts"],"names":[],"mappings":";;;;AACA,8CAA2C;AAC3C,mDAA+D;AAC/D,iCAAoE;AAEpE;;;GAGG;
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/formula/core.ts"],"names":[],"mappings":";;;;AACA,8CAA2C;AAC3C,mDAA+D;AAC/D,iCAAoE;AAEpE;;;GAGG;AACI,MAAM,eAAe,GAAG,CAAC,OAAe,EAAiB,EAAE;IAC9D,OAAO,IAAA,iBAAO,EAAC,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAGD;;;;;;GAMG;AACI,MAAM,oCAAoC,GAAG,CAAO,iBAAyB,EAAE,gBAAwB,EAAE,UAAkB,EAAE,UAA0B,EAAoB,EAAE;IAChL,MAAM,OAAO,GAAyC,MAAM,IAAA,4CAA4B,EAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IAC9H,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE;QAC3B,OAAO,IAAA,iDAA0C,EAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;KACzF;SACI;QACD,yBAAyB;QACzB,OAAO,KAAK,CAAC;KAChB;AACL,CAAC,CAAA,CAAA;AATY,QAAA,oCAAoC,wCAShD"}
|
|
@@ -9,22 +9,24 @@ const _ = require("lodash");
|
|
|
9
9
|
// export const clearFieldFormulaConfigs = (query?: object) => {
|
|
10
10
|
// removeManyConfigs('field_formula', query);
|
|
11
11
|
// }
|
|
12
|
-
|
|
12
|
+
const getFieldFormulaConfigs = () => {
|
|
13
13
|
return [];
|
|
14
14
|
// return getConfigs('field_formula');
|
|
15
15
|
};
|
|
16
|
-
exports.
|
|
16
|
+
exports.getFieldFormulaConfigs = getFieldFormulaConfigs;
|
|
17
|
+
const getFieldFormulaConfig = (_id) => {
|
|
17
18
|
return null;
|
|
18
19
|
// return getConfig('field_formula', _id);
|
|
19
20
|
};
|
|
21
|
+
exports.getFieldFormulaConfig = getFieldFormulaConfig;
|
|
20
22
|
/**
|
|
21
23
|
* 获取对象本身的字段公式配置
|
|
22
24
|
* 不传入fieldName时取objectName关联的所有字段公式配置
|
|
23
25
|
* @param objectName
|
|
24
26
|
* @param fieldName
|
|
25
27
|
*/
|
|
26
|
-
|
|
27
|
-
const configs = exports.getFieldFormulaConfigs();
|
|
28
|
+
const getObjectFieldFormulaConfigs = (objectName, fieldName) => {
|
|
29
|
+
const configs = (0, exports.getFieldFormulaConfigs)();
|
|
28
30
|
let result = configs.filter((config) => {
|
|
29
31
|
if (fieldName) {
|
|
30
32
|
return config.object_name === objectName && config.field_name === fieldName;
|
|
@@ -33,8 +35,9 @@ exports.getObjectFieldFormulaConfigs = (objectName, fieldName) => {
|
|
|
33
35
|
return config.object_name === objectName;
|
|
34
36
|
}
|
|
35
37
|
});
|
|
36
|
-
return util_1.sortFieldFormulaConfigs(result);
|
|
38
|
+
return (0, util_1.sortFieldFormulaConfigs)(result);
|
|
37
39
|
};
|
|
40
|
+
exports.getObjectFieldFormulaConfigs = getObjectFieldFormulaConfigs;
|
|
38
41
|
/**
|
|
39
42
|
* 获取对象在哪些字段公式中被引用
|
|
40
43
|
* 不传入fieldNames时取objectName关联的所有字段公式配置
|
|
@@ -42,8 +45,8 @@ exports.getObjectFieldFormulaConfigs = (objectName, fieldName) => {
|
|
|
42
45
|
* @param fieldNames
|
|
43
46
|
* @param escapeConfigs 要跳过的字段公式
|
|
44
47
|
*/
|
|
45
|
-
|
|
46
|
-
const configs = exports.getFieldFormulaConfigs();
|
|
48
|
+
const getObjectQuotedByFieldFormulaConfigs = (objectName, fieldNames, escapeConfigs) => {
|
|
49
|
+
const configs = (0, exports.getFieldFormulaConfigs)();
|
|
47
50
|
let configsOnCurrentObject = [];
|
|
48
51
|
let configsOnOtherObjects = [];
|
|
49
52
|
configs.forEach((config) => {
|
|
@@ -53,7 +56,7 @@ exports.getObjectQuotedByFieldFormulaConfigs = (objectName, fieldNames, escapeCo
|
|
|
53
56
|
return;
|
|
54
57
|
}
|
|
55
58
|
}
|
|
56
|
-
let isQuoting = util_1.isFieldFormulaConfigQuotingObjectAndFields(config, objectName, fieldNames);
|
|
59
|
+
let isQuoting = (0, util_1.isFieldFormulaConfigQuotingObjectAndFields)(config, objectName, fieldNames);
|
|
57
60
|
if (isQuoting) {
|
|
58
61
|
let isOwn = config.object_name === objectName;
|
|
59
62
|
if (isOwn) {
|
|
@@ -71,16 +74,18 @@ exports.getObjectQuotedByFieldFormulaConfigs = (objectName, fieldNames, escapeCo
|
|
|
71
74
|
}
|
|
72
75
|
});
|
|
73
76
|
// 当前对象上的字段一定要做排序
|
|
74
|
-
const ownConfigs = util_1.sortFieldFormulaConfigs(configsOnCurrentObject);
|
|
77
|
+
const ownConfigs = (0, util_1.sortFieldFormulaConfigs)(configsOnCurrentObject);
|
|
75
78
|
const otherConfigs = configsOnOtherObjects;
|
|
76
79
|
const allConfigs = ownConfigs.concat(otherConfigs);
|
|
77
80
|
return { ownConfigs, otherConfigs, allConfigs };
|
|
78
81
|
};
|
|
82
|
+
exports.getObjectQuotedByFieldFormulaConfigs = getObjectQuotedByFieldFormulaConfigs;
|
|
79
83
|
/**
|
|
80
84
|
* 获取参数config在哪些字段公式中被引用
|
|
81
85
|
* @param config
|
|
82
86
|
*/
|
|
83
|
-
|
|
84
|
-
return exports.getObjectQuotedByFieldFormulaConfigs(config.object_name, [config.field_name]);
|
|
87
|
+
const getQuotedByFieldFormulaConfigs = (config) => {
|
|
88
|
+
return (0, exports.getObjectQuotedByFieldFormulaConfigs)(config.object_name, [config.field_name]);
|
|
85
89
|
};
|
|
90
|
+
exports.getQuotedByFieldFormulaConfigs = getQuotedByFieldFormulaConfigs;
|
|
86
91
|
//# sourceMappingURL=field_formula.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field_formula.js","sourceRoot":"","sources":["../../src/formula/field_formula.ts"],"names":[],"mappings":";;;AAEA,iCAA6F;AAC7F,4BAA6B;AAE7B,oFAAoF;AACpF,0CAA0C;AAC1C,IAAI;AAEJ,gEAAgE;AAChE,iDAAiD;AACjD,IAAI;
|
|
1
|
+
{"version":3,"file":"field_formula.js","sourceRoot":"","sources":["../../src/formula/field_formula.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ class FormulaActionHandler {
|
|
|
21
21
|
this.broker = broker;
|
|
22
22
|
}
|
|
23
23
|
deleteAll(objectConfig) {
|
|
24
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
25
25
|
try {
|
|
26
26
|
if (!objectConfig) {
|
|
27
27
|
return;
|
|
@@ -37,7 +37,7 @@ class FormulaActionHandler {
|
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
getObjectConfig(objectApiName) {
|
|
40
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
41
41
|
const data = yield this.broker.call('objects.get', { objectApiName: objectApiName });
|
|
42
42
|
return data ? data.metadata : null;
|
|
43
43
|
});
|
|
@@ -64,7 +64,7 @@ class FormulaActionHandler {
|
|
|
64
64
|
*/
|
|
65
65
|
computeFormulaVarAndQuotes(formulaVar, objectConfig, quotes, vars) {
|
|
66
66
|
var e_1, _a;
|
|
67
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
68
68
|
let isSimpleVar = objectConfig === null; //明确传入null时表示要计算的是普通变量。
|
|
69
69
|
// 公式变量以FormulaUserSessionKey(即$user)值开头,说明是userSession变量
|
|
70
70
|
let isUserVar = new RegExp(`^${type_1.FormulaUserKey.replace("$", "\\$")}\\b`).test(formulaVar);
|
|
@@ -105,7 +105,7 @@ class FormulaActionHandler {
|
|
|
105
105
|
let tempObjectConfig = objectConfig;
|
|
106
106
|
let i = -1;
|
|
107
107
|
try {
|
|
108
|
-
for (var varItems_1 = tslib_1.__asyncValues(varItems), varItems_1_1; varItems_1_1 = yield varItems_1.next(), !varItems_1_1.done;) {
|
|
108
|
+
for (var varItems_1 = (0, tslib_1.__asyncValues)(varItems), varItems_1_1; varItems_1_1 = yield varItems_1.next(), !varItems_1_1.done;) {
|
|
109
109
|
let varItem = varItems_1_1.value;
|
|
110
110
|
i++;
|
|
111
111
|
// let i:number = _index as unknown as number;
|
|
@@ -217,18 +217,18 @@ class FormulaActionHandler {
|
|
|
217
217
|
*/
|
|
218
218
|
computeFormulaVarsAndQuotes(formula, objectConfig) {
|
|
219
219
|
var e_2, _a;
|
|
220
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
220
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
221
221
|
let quotes = [];
|
|
222
222
|
let vars = [];
|
|
223
223
|
let formulaVars = [];
|
|
224
224
|
try {
|
|
225
|
-
formulaVars = core_1.pickFormulaVars(formula);
|
|
225
|
+
formulaVars = (0, core_1.pickFormulaVars)(formula);
|
|
226
226
|
}
|
|
227
227
|
catch (ex) {
|
|
228
228
|
throw new Error(`pickFormulaVars:Catch an error "${ex}" while pick vars from the formula "${formula}" for "${JSON.stringify(objectConfig)}"`);
|
|
229
229
|
}
|
|
230
230
|
try {
|
|
231
|
-
for (var formulaVars_1 = tslib_1.__asyncValues(formulaVars), formulaVars_1_1; formulaVars_1_1 = yield formulaVars_1.next(), !formulaVars_1_1.done;) {
|
|
231
|
+
for (var formulaVars_1 = (0, tslib_1.__asyncValues)(formulaVars), formulaVars_1_1; formulaVars_1_1 = yield formulaVars_1.next(), !formulaVars_1_1.done;) {
|
|
232
232
|
const formulaVar = formulaVars_1_1.value;
|
|
233
233
|
yield this.computeFormulaVarAndQuotes(formulaVar, objectConfig, quotes, vars);
|
|
234
234
|
}
|
|
@@ -247,7 +247,7 @@ class FormulaActionHandler {
|
|
|
247
247
|
return `$steedos.#formula.${APIName}`;
|
|
248
248
|
}
|
|
249
249
|
getObjectFieldFormulaConfig(fieldConfig, objectConfig) {
|
|
250
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
250
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
251
251
|
const formula = fieldConfig.formula;
|
|
252
252
|
let result = yield this.computeFormulaVarsAndQuotes(formula, objectConfig);
|
|
253
253
|
let formulaConfig = {
|
|
@@ -265,10 +265,10 @@ class FormulaActionHandler {
|
|
|
265
265
|
}
|
|
266
266
|
getObjectFieldsFormulaConfig(config, datasource) {
|
|
267
267
|
var e_3, _a;
|
|
268
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
268
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
269
269
|
const objectFieldsFormulaConfig = [];
|
|
270
270
|
try {
|
|
271
|
-
for (var _b = tslib_1.__asyncValues(_.values(config.fields)), _c; _c = yield _b.next(), !_c.done;) {
|
|
271
|
+
for (var _b = (0, tslib_1.__asyncValues)(_.values(config.fields)), _c; _c = yield _b.next(), !_c.done;) {
|
|
272
272
|
const field = _c.value;
|
|
273
273
|
// console.log('key', key);
|
|
274
274
|
// const field = config.fields[key]
|
|
@@ -314,11 +314,11 @@ class FormulaActionHandler {
|
|
|
314
314
|
}
|
|
315
315
|
getFormulaReferenceMaps(broker) {
|
|
316
316
|
var e_4, _a;
|
|
317
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
317
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
318
318
|
const maps = [];
|
|
319
319
|
let records = (yield broker.call('metadata.filter', { key: this.cacherKey(`${refMapName}.*`) }, { meta: {} })) || {};
|
|
320
320
|
try {
|
|
321
|
-
for (var records_1 = tslib_1.__asyncValues(records), records_1_1; records_1_1 = yield records_1.next(), !records_1_1.done;) {
|
|
321
|
+
for (var records_1 = (0, tslib_1.__asyncValues)(records), records_1_1; records_1_1 = yield records_1.next(), !records_1_1.done;) {
|
|
322
322
|
const item = records_1_1.value;
|
|
323
323
|
const metadata = item === null || item === void 0 ? void 0 : item.metadata;
|
|
324
324
|
if (metadata) {
|
|
@@ -337,7 +337,7 @@ class FormulaActionHandler {
|
|
|
337
337
|
});
|
|
338
338
|
}
|
|
339
339
|
addFormulaReferenceMaps(broker, key, value) {
|
|
340
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
340
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
341
341
|
let { metadata } = (yield this.getFormulaReferenceMaps(broker)) || [];
|
|
342
342
|
let maps = [];
|
|
343
343
|
if (metadata) {
|
|
@@ -355,13 +355,13 @@ class FormulaActionHandler {
|
|
|
355
355
|
}
|
|
356
356
|
addFormulaMetadata(config, datasource) {
|
|
357
357
|
var e_5, _a, e_6, _b;
|
|
358
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
358
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
359
359
|
const objectFieldsFormulaConfig = yield this.getObjectFieldsFormulaConfig(config, datasource);
|
|
360
360
|
try {
|
|
361
|
-
for (var objectFieldsFormulaConfig_1 = tslib_1.__asyncValues(objectFieldsFormulaConfig), objectFieldsFormulaConfig_1_1; objectFieldsFormulaConfig_1_1 = yield objectFieldsFormulaConfig_1.next(), !objectFieldsFormulaConfig_1_1.done;) {
|
|
361
|
+
for (var objectFieldsFormulaConfig_1 = (0, tslib_1.__asyncValues)(objectFieldsFormulaConfig), objectFieldsFormulaConfig_1_1; objectFieldsFormulaConfig_1_1 = yield objectFieldsFormulaConfig_1.next(), !objectFieldsFormulaConfig_1_1.done;) {
|
|
362
362
|
const fieldFormula = objectFieldsFormulaConfig_1_1.value;
|
|
363
363
|
try {
|
|
364
|
-
for (var _c = (e_6 = void 0, tslib_1.__asyncValues(fieldFormula.quotes)), _d; _d = yield _c.next(), !_d.done;) {
|
|
364
|
+
for (var _c = (e_6 = void 0, (0, tslib_1.__asyncValues)(fieldFormula.quotes)), _d; _d = yield _c.next(), !_d.done;) {
|
|
365
365
|
const quote = _d.value;
|
|
366
366
|
yield this.addFormulaReferenceMaps(this.broker, `${fieldFormula._id}`, `${quote.object_name}.${quote.field_name}`);
|
|
367
367
|
}
|
|
@@ -387,18 +387,18 @@ class FormulaActionHandler {
|
|
|
387
387
|
});
|
|
388
388
|
}
|
|
389
389
|
getObjectDynamicCalcFormulaMap(objectApiName) {
|
|
390
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
390
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
391
391
|
return yield this.broker.call('metadata.filter', { key: this.cacherKey(getDynamicCalcMapCacherKey(objectApiName, '*')) }, { meta: {} });
|
|
392
392
|
});
|
|
393
393
|
}
|
|
394
394
|
recalcObjectsFormulaMap(objectConfig) {
|
|
395
395
|
var e_7, _a;
|
|
396
396
|
var _b;
|
|
397
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
397
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
398
398
|
const recalcObjects = {};
|
|
399
399
|
const dynamicCalcFormulaMap = yield this.getObjectDynamicCalcFormulaMap(objectConfig.name);
|
|
400
400
|
try {
|
|
401
|
-
for (var dynamicCalcFormulaMap_1 = tslib_1.__asyncValues(dynamicCalcFormulaMap), dynamicCalcFormulaMap_1_1; dynamicCalcFormulaMap_1_1 = yield dynamicCalcFormulaMap_1.next(), !dynamicCalcFormulaMap_1_1.done;) {
|
|
401
|
+
for (var dynamicCalcFormulaMap_1 = (0, tslib_1.__asyncValues)(dynamicCalcFormulaMap), dynamicCalcFormulaMap_1_1; dynamicCalcFormulaMap_1_1 = yield dynamicCalcFormulaMap_1.next(), !dynamicCalcFormulaMap_1_1.done;) {
|
|
402
402
|
const item = dynamicCalcFormulaMap_1_1.value;
|
|
403
403
|
const recalcObjectApiName = (_b = item === null || item === void 0 ? void 0 : item.metadata) === null || _b === void 0 ? void 0 : _b.objectApiName;
|
|
404
404
|
if (recalcObjectApiName) {
|
|
@@ -426,7 +426,7 @@ class FormulaActionHandler {
|
|
|
426
426
|
});
|
|
427
427
|
}
|
|
428
428
|
add(objectConfig) {
|
|
429
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
429
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
430
430
|
try {
|
|
431
431
|
yield this.addFormulaMetadata(objectConfig, objectConfig.datasource);
|
|
432
432
|
return true;
|
|
@@ -438,7 +438,7 @@ class FormulaActionHandler {
|
|
|
438
438
|
});
|
|
439
439
|
}
|
|
440
440
|
filter(ctx) {
|
|
441
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
441
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
442
442
|
let { objectApiName, fieldApiName } = ctx.params;
|
|
443
443
|
if (!objectApiName) {
|
|
444
444
|
objectApiName = "*";
|
|
@@ -450,13 +450,13 @@ class FormulaActionHandler {
|
|
|
450
450
|
const configs = [];
|
|
451
451
|
const res = yield this.broker.call('metadata.filter', { key: key }, { meta: {} });
|
|
452
452
|
_.forEach(res, (item) => {
|
|
453
|
-
configs.push(item.metadata);
|
|
453
|
+
configs.push(item === null || item === void 0 ? void 0 : item.metadata);
|
|
454
454
|
});
|
|
455
455
|
return configs;
|
|
456
456
|
});
|
|
457
457
|
}
|
|
458
458
|
get(ctx) {
|
|
459
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
459
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
460
460
|
let { fieldApiFullName } = ctx.params;
|
|
461
461
|
const key = this.cacherKey(fieldApiFullName);
|
|
462
462
|
const res = yield this.broker.call('metadata.get', { key: key }, { meta: {} });
|
|
@@ -465,7 +465,7 @@ class FormulaActionHandler {
|
|
|
465
465
|
}
|
|
466
466
|
verifyObjectFieldFormulaConfig(ctx) {
|
|
467
467
|
var e_8, _a;
|
|
468
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
468
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
469
469
|
let { fieldConfig, objectConfig } = ctx.params;
|
|
470
470
|
const fieldFormula = yield this.getObjectFieldFormulaConfig(fieldConfig, objectConfig);
|
|
471
471
|
let { metadata } = (yield this.getFormulaReferenceMaps(ctx.broker)) || [];
|
|
@@ -474,7 +474,7 @@ class FormulaActionHandler {
|
|
|
474
474
|
maps = metadata;
|
|
475
475
|
}
|
|
476
476
|
try {
|
|
477
|
-
for (var _b = tslib_1.__asyncValues(fieldFormula.quotes), _c; _c = yield _b.next(), !_c.done;) {
|
|
477
|
+
for (var _b = (0, tslib_1.__asyncValues)(fieldFormula.quotes), _c; _c = yield _b.next(), !_c.done;) {
|
|
478
478
|
const quote = _c.value;
|
|
479
479
|
let data = {
|
|
480
480
|
key: fieldFormula._id,
|
|
@@ -494,7 +494,7 @@ class FormulaActionHandler {
|
|
|
494
494
|
});
|
|
495
495
|
}
|
|
496
496
|
getFormulaVarsAndQuotes(ctx) {
|
|
497
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
497
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
498
498
|
let { formula, objectConfig } = ctx.params;
|
|
499
499
|
return yield this.computeFormulaVarsAndQuotes(formula, objectConfig);
|
|
500
500
|
});
|