@steedos/objectql 2.1.16 → 2.1.20
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/actions/field_updates.js +28 -21
- package/lib/actions/field_updates.js.map +1 -1
- package/lib/actions/workflow_notifications.js +1 -1
- package/lib/actions/workflow_notifications.js.map +1 -1
- package/lib/actions/workflow_rule.js +2 -2
- package/lib/actions/workflow_rule.js.map +1 -1
- package/lib/driver/metadata.d.ts +40 -0
- package/lib/driver/metadata.js +201 -0
- package/lib/driver/metadata.js.map +1 -0
- package/lib/types/object.js +24 -7
- package/lib/types/object.js.map +1 -1
- package/lib/types/schema.d.ts +2 -0
- package/lib/types/schema.js +2 -0
- package/lib/types/schema.js.map +1 -1
- package/package.json +9 -8
- package/src/actions/field_updates.ts +15 -12
- package/src/actions/workflow_notifications.ts +1 -1
- package/src/actions/workflow_rule.ts +2 -2
- package/src/driver/metadata.ts +213 -0
- package/src/types/object.ts +25 -6
- package/src/types/schema.ts +2 -0
|
@@ -44,12 +44,12 @@ exports.getFieldUpdateActionTargetObjectName = getFieldUpdateActionTargetObjectN
|
|
|
44
44
|
function runFieldUpdateAction(action, recordId, userSession) {
|
|
45
45
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
46
46
|
var record, recordIdToUpdate, previousRecord, needToReevaluate, isCrossedObject, mainObjectName, _a, objectToUpdate, fieldToUpdate, newFieldValue;
|
|
47
|
-
var _b;
|
|
48
|
-
return tslib_1.__generator(this, function (
|
|
49
|
-
switch (
|
|
47
|
+
var _b, _c;
|
|
48
|
+
return tslib_1.__generator(this, function (_d) {
|
|
49
|
+
switch (_d.label) {
|
|
50
50
|
case 0: return [4 /*yield*/, index_1.getObject(action.object_name).findOne(recordId, null)];
|
|
51
51
|
case 1:
|
|
52
|
-
record =
|
|
52
|
+
record = _d.sent();
|
|
53
53
|
needToReevaluate = false;
|
|
54
54
|
isCrossedObject = action.target_object != action.object_name;
|
|
55
55
|
mainObjectName = getFieldUpdateActionTargetObjectName(action);
|
|
@@ -60,8 +60,8 @@ function runFieldUpdateAction(action, recordId, userSession) {
|
|
|
60
60
|
if (!_a) return [3 /*break*/, 3];
|
|
61
61
|
return [4 /*yield*/, index_1.getObject(mainObjectName).findOne(recordIdToUpdate, null)];
|
|
62
62
|
case 2:
|
|
63
|
-
_a = (
|
|
64
|
-
|
|
63
|
+
_a = (_d.sent());
|
|
64
|
+
_d.label = 3;
|
|
65
65
|
case 3:
|
|
66
66
|
previousRecord = _a;
|
|
67
67
|
//对于跨对象的字段更新,虽然始终不会重新评估字段更新关联对象的工作流规则,但是始终会重新评估其要更新的对象的所有工作流规则。
|
|
@@ -73,7 +73,7 @@ function runFieldUpdateAction(action, recordId, userSession) {
|
|
|
73
73
|
previousRecord = record;
|
|
74
74
|
//对于非跨对象的字段更新,是否重新评估字段更新关联对象的工作流规则由其属性reevaluate_on_change决定。
|
|
75
75
|
needToReevaluate = action.reevaluate_on_change;
|
|
76
|
-
|
|
76
|
+
_d.label = 5;
|
|
77
77
|
case 5:
|
|
78
78
|
objectToUpdate = index_1.getObject(mainObjectName);
|
|
79
79
|
fieldToUpdate = objectToUpdate.getField(action.field_name);
|
|
@@ -83,33 +83,40 @@ function runFieldUpdateAction(action, recordId, userSession) {
|
|
|
83
83
|
}
|
|
84
84
|
return [4 /*yield*/, getFieldValue(action, recordId, userSession)];
|
|
85
85
|
case 6:
|
|
86
|
-
newFieldValue =
|
|
87
|
-
if (!(recordIdToUpdate && newFieldValue !== (previousRecord && previousRecord[action.field_name]))) return [3 /*break*/,
|
|
88
|
-
|
|
89
|
-
return [4 /*yield*/, objectToUpdate.
|
|
86
|
+
newFieldValue = _d.sent();
|
|
87
|
+
if (!(recordIdToUpdate && newFieldValue !== (previousRecord && previousRecord[action.field_name]))) return [3 /*break*/, 13];
|
|
88
|
+
if (!(action.undirect === true)) return [3 /*break*/, 8];
|
|
89
|
+
return [4 /*yield*/, objectToUpdate.update(recordIdToUpdate, (_b = {}, _b[action.field_name] = newFieldValue, _b))];
|
|
90
90
|
case 7:
|
|
91
|
+
_d.sent();
|
|
92
|
+
return [3 /*break*/, 12];
|
|
93
|
+
case 8:
|
|
94
|
+
// 只有值变更时才执行字段更新、级联公式重算、级联汇总字段重算、重新评估工作流规则等操作
|
|
95
|
+
return [4 /*yield*/, objectToUpdate.directUpdate(recordIdToUpdate, (_c = {}, _c[action.field_name] = newFieldValue, _c))];
|
|
96
|
+
case 9:
|
|
91
97
|
// 只有值变更时才执行字段更新、级联公式重算、级联汇总字段重算、重新评估工作流规则等操作
|
|
92
|
-
|
|
98
|
+
_d.sent();
|
|
93
99
|
// 字段更新后,需要找到引用了该字段的公式字段并更新其值
|
|
94
100
|
return [4 /*yield*/, formula_1.runQuotedByObjectFieldFormulas(mainObjectName, recordIdToUpdate, userSession, {
|
|
95
101
|
fieldNames: [action.field_name]
|
|
96
102
|
})];
|
|
97
|
-
case
|
|
103
|
+
case 10:
|
|
98
104
|
// 字段更新后,需要找到引用了该字段的公式字段并更新其值
|
|
99
|
-
|
|
105
|
+
_d.sent();
|
|
100
106
|
// 字段更新后,需要找到引用了该字段的累计汇总字段并更新其值
|
|
101
107
|
return [4 /*yield*/, summary_1.runQuotedByObjectFieldSummaries(mainObjectName, recordIdToUpdate, null, userSession, {
|
|
102
108
|
fieldNames: [action.field_name]
|
|
103
109
|
})];
|
|
104
|
-
case
|
|
110
|
+
case 11:
|
|
105
111
|
// 字段更新后,需要找到引用了该字段的累计汇总字段并更新其值
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
case
|
|
112
|
+
_d.sent();
|
|
113
|
+
_d.label = 12;
|
|
114
|
+
case 12: return [3 /*break*/, 14];
|
|
115
|
+
case 13:
|
|
109
116
|
// 值没变更时强制重置needToReevaluate为false,即不需要执行相关工作流规则重新评估
|
|
110
117
|
needToReevaluate = false;
|
|
111
|
-
|
|
112
|
-
case
|
|
118
|
+
_d.label = 14;
|
|
119
|
+
case 14:
|
|
113
120
|
if (needToReevaluate) {
|
|
114
121
|
return [2 /*return*/, {
|
|
115
122
|
object_name: mainObjectName,
|
|
@@ -137,7 +144,7 @@ function runFieldUpdateActions(ids, recordId, userSession) {
|
|
|
137
144
|
filters = [];
|
|
138
145
|
targets = [];
|
|
139
146
|
if (!_.isEmpty(ids)) {
|
|
140
|
-
filters.push(['name', 'in', ids]);
|
|
147
|
+
filters.push([['name', 'in', ids], 'or', ['_id', 'in', ids]]);
|
|
141
148
|
}
|
|
142
149
|
if (!!_.isEmpty(filters)) return [3 /*break*/, 9];
|
|
143
150
|
return [4 /*yield*/, index_1.getObject("action_field_updates").find({ filters: filters })];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field_updates.js","sourceRoot":"","sources":["../../src/actions/field_updates.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"field_updates.js","sourceRoot":"","sources":["../../src/actions/field_updates.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ function runWorkflowNotifyActions(ids, recordId, userSession) {
|
|
|
20
20
|
if (_.isEmpty(ids) || _.isEmpty(recordId) || _.isEmpty(userSession)) {
|
|
21
21
|
return [2 /*return*/];
|
|
22
22
|
}
|
|
23
|
-
filters = ['name', 'in', ids];
|
|
23
|
+
filters = [['name', 'in', ids], 'or', ['_id', 'in', ids]];
|
|
24
24
|
return [4 /*yield*/, index_1.getObject("workflow_notifications").find({ filters: filters })];
|
|
25
25
|
case 1:
|
|
26
26
|
notifications = _b.sent();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow_notifications.js","sourceRoot":"","sources":["../../src/actions/workflow_notifications.ts"],"names":[],"mappings":";;;;AAAA,kCAAqD;AAIrD,8BAAiC;AAIjC;;;;;GAKG;AACH,SAAsB,wBAAwB,CAAC,GAAkB,EAAE,QAAa,EAAE,WAAgB;;;;;;;oBAC9F,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;wBACjE,sBAAO;qBACV;oBACG,OAAO,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow_notifications.js","sourceRoot":"","sources":["../../src/actions/workflow_notifications.ts"],"names":[],"mappings":"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"}
|
|
@@ -183,13 +183,13 @@ function runWFRule(rule, record, userSession, previousRecord) {
|
|
|
183
183
|
previousIsTrue = false;
|
|
184
184
|
targets = [];
|
|
185
185
|
if (!previousRecord) return [3 /*break*/, 2];
|
|
186
|
-
return [4 /*yield*/, formula_1.computeFormula(rule.formula, rule.object_name, previousRecord, userSession.userId, userSession.spaceId)];
|
|
186
|
+
return [4 /*yield*/, formula_1.computeFormula(rule.formula, rule.object_name, previousRecord, userSession === null || userSession === void 0 ? void 0 : userSession.userId, userSession === null || userSession === void 0 ? void 0 : userSession.spaceId)];
|
|
187
187
|
case 1:
|
|
188
188
|
previousIsTrue = _a.sent();
|
|
189
189
|
_a.label = 2;
|
|
190
190
|
case 2:
|
|
191
191
|
if (!!previousIsTrue) return [3 /*break*/, 6];
|
|
192
|
-
return [4 /*yield*/, formula_1.computeFormula(rule.formula, rule.object_name, record, userSession.userId, userSession.spaceId)];
|
|
192
|
+
return [4 /*yield*/, formula_1.computeFormula(rule.formula, rule.object_name, record, userSession === null || userSession === void 0 ? void 0 : userSession.userId, userSession === null || userSession === void 0 ? void 0 : userSession.spaceId)];
|
|
193
193
|
case 3:
|
|
194
194
|
isTrue = _a.sent();
|
|
195
195
|
if (!isTrue) return [3 /*break*/, 6];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow_rule.js","sourceRoot":"","sources":["../../src/actions/workflow_rule.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"workflow_rule.js","sourceRoot":"","sources":["../../src/actions/workflow_rule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Dictionary } from "@salesforce/ts-types";
|
|
2
|
+
import { SteedosDriver } from ".";
|
|
3
|
+
import { SteedosQueryOptions, SteedosIDType, SteedosObjectType } from "../types";
|
|
4
|
+
import { SteedosDriverConfig } from "./driver";
|
|
5
|
+
import { SteedosFieldDBType } from "./fieldDBType";
|
|
6
|
+
export declare class MetadataDriver implements SteedosDriver {
|
|
7
|
+
databaseVersion?: string;
|
|
8
|
+
config?: SteedosDriverConfig;
|
|
9
|
+
connect(): void;
|
|
10
|
+
close(): void;
|
|
11
|
+
formatFiltersToMongoQuery(filters: any): any;
|
|
12
|
+
getMongoFilters(filters: any): any;
|
|
13
|
+
getMongoFieldsOptions(fields: any): {};
|
|
14
|
+
getMongoOptions(options: any): any;
|
|
15
|
+
getMongoSortOptions(sort: any): any;
|
|
16
|
+
getAggregateOptions(options: any): any[];
|
|
17
|
+
queryMetadata(collection: any, queryOptions: any, spaceId: any): import("mingo/cursor").Cursor;
|
|
18
|
+
getSupportedColumnTypes(): SteedosFieldDBType[];
|
|
19
|
+
find(collection: any, query: SteedosQueryOptions, spaceId?: SteedosIDType): import("mingo/types").RawArray;
|
|
20
|
+
aggregate(collection: any, query: SteedosQueryOptions, externalPipeline: any, spaceId?: SteedosIDType): import("mingo/types").RawArray;
|
|
21
|
+
findOne(collection: any, id: SteedosIDType, query: SteedosQueryOptions, spaceId?: SteedosIDType): void;
|
|
22
|
+
insert(collection: any, doc: Dictionary<any>, spaceId?: SteedosIDType): void;
|
|
23
|
+
update(collection: any, id: SteedosQueryOptions | SteedosIDType, doc: Dictionary<any>, spaceId?: SteedosIDType): void;
|
|
24
|
+
updateOne(collection: any, id: SteedosQueryOptions | SteedosIDType, doc: Dictionary<any>, spaceId?: SteedosIDType): void;
|
|
25
|
+
updateMany?(collection: any, queryFilters: any, doc: Dictionary<any>, spaceId?: SteedosIDType): void;
|
|
26
|
+
delete(collection: any, id: SteedosQueryOptions | SteedosIDType, spaceId?: SteedosIDType): void;
|
|
27
|
+
directUpdate(collection: any, id: SteedosQueryOptions | SteedosIDType, doc: Dictionary<any>, spaceId?: SteedosIDType): void;
|
|
28
|
+
directFind(collection: any, query: SteedosQueryOptions, spaceId?: SteedosIDType): void;
|
|
29
|
+
directInsert(collection: any, doc: Dictionary<any>, spaceId?: SteedosIDType): void;
|
|
30
|
+
directDelete(collection: any, id: SteedosQueryOptions | SteedosIDType, spaceId?: SteedosIDType): void;
|
|
31
|
+
directAggregate?(collection: any, query: SteedosQueryOptions, externalPipeline: any, spaceId?: SteedosIDType): void;
|
|
32
|
+
directAggregatePrefixalPipeline?(collection: any, query: SteedosQueryOptions, prefixalPipeline: any, spaceId?: SteedosIDType): void;
|
|
33
|
+
count(collection: any, query: SteedosQueryOptions, spaceId?: SteedosIDType): number;
|
|
34
|
+
dropEntities?(): void;
|
|
35
|
+
registerEntities?(objects: Dictionary<SteedosObjectType>): void;
|
|
36
|
+
dropTables?(): void;
|
|
37
|
+
createTables?(objects: Dictionary<SteedosObjectType>): void;
|
|
38
|
+
init(objects: Dictionary<SteedosObjectType>): void;
|
|
39
|
+
_makeNewID?(tableName?: string): void;
|
|
40
|
+
}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MetadataDriver = void 0;
|
|
4
|
+
var mingo = require("mingo");
|
|
5
|
+
var steedosFilters = require("@steedos/filters");
|
|
6
|
+
var odataV4Mongodb = require("odata-v4-mongodb");
|
|
7
|
+
var clone = require("clone");
|
|
8
|
+
var _ = require("underscore");
|
|
9
|
+
var MetadataDriver = /** @class */ (function () {
|
|
10
|
+
function MetadataDriver() {
|
|
11
|
+
}
|
|
12
|
+
MetadataDriver.prototype.connect = function () {
|
|
13
|
+
};
|
|
14
|
+
MetadataDriver.prototype.close = function () {
|
|
15
|
+
};
|
|
16
|
+
MetadataDriver.prototype.formatFiltersToMongoQuery = function (filters) {
|
|
17
|
+
var emptyFilters = {};
|
|
18
|
+
var odataQuery = "";
|
|
19
|
+
if (_.isString(filters)) {
|
|
20
|
+
odataQuery = filters;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
odataQuery = steedosFilters.formatFiltersToODataQuery(filters);
|
|
24
|
+
}
|
|
25
|
+
if (!odataQuery) {
|
|
26
|
+
return emptyFilters;
|
|
27
|
+
}
|
|
28
|
+
var query = odataV4Mongodb.createFilter(odataQuery);
|
|
29
|
+
return query;
|
|
30
|
+
};
|
|
31
|
+
MetadataDriver.prototype.getMongoFilters = function (filters) {
|
|
32
|
+
var emptyFilters = {};
|
|
33
|
+
if (_.isUndefined(filters)) {
|
|
34
|
+
return emptyFilters;
|
|
35
|
+
}
|
|
36
|
+
if (_.isString(filters) && !filters.length) {
|
|
37
|
+
return emptyFilters;
|
|
38
|
+
}
|
|
39
|
+
if (_.isArray(filters) && !filters.length) {
|
|
40
|
+
return emptyFilters;
|
|
41
|
+
}
|
|
42
|
+
var mongoFilters = this.formatFiltersToMongoQuery(filters);
|
|
43
|
+
return mongoFilters;
|
|
44
|
+
};
|
|
45
|
+
MetadataDriver.prototype.getMongoFieldsOptions = function (fields) {
|
|
46
|
+
if (typeof fields == "string") {
|
|
47
|
+
fields = (fields).split(",").map(function (n) { return n.trim(); });
|
|
48
|
+
}
|
|
49
|
+
if (!(fields && fields.length)) {
|
|
50
|
+
return {};
|
|
51
|
+
}
|
|
52
|
+
var projection = {};
|
|
53
|
+
(fields).forEach(function (field) {
|
|
54
|
+
if (field) {
|
|
55
|
+
projection[field] = 1;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
return projection;
|
|
59
|
+
};
|
|
60
|
+
MetadataDriver.prototype.getMongoOptions = function (options) {
|
|
61
|
+
if (_.isUndefined(options)) {
|
|
62
|
+
return {};
|
|
63
|
+
}
|
|
64
|
+
var result = {};
|
|
65
|
+
var projection = this.getMongoFieldsOptions(options.fields);
|
|
66
|
+
var sort = this.getMongoSortOptions(options.sort);
|
|
67
|
+
result.projection = projection;
|
|
68
|
+
result.sort = sort;
|
|
69
|
+
result.limit = options.top;
|
|
70
|
+
result.skip = options.skip;
|
|
71
|
+
return result;
|
|
72
|
+
};
|
|
73
|
+
MetadataDriver.prototype.getMongoSortOptions = function (sort) {
|
|
74
|
+
var result = undefined;
|
|
75
|
+
if (sort && typeof sort === "string") {
|
|
76
|
+
var arraySort = sort.split(",").map(function (n) { return n.trim(); });
|
|
77
|
+
var stringSort_1 = "";
|
|
78
|
+
arraySort.forEach(function (n) {
|
|
79
|
+
if (n) {
|
|
80
|
+
stringSort_1 += n + ",";
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
stringSort_1 = stringSort_1.replace(/,$/g, "");
|
|
84
|
+
result = odataV4Mongodb.createQuery("$orderby=" + stringSort_1).sort;
|
|
85
|
+
}
|
|
86
|
+
return result;
|
|
87
|
+
};
|
|
88
|
+
MetadataDriver.prototype.getAggregateOptions = function (options) {
|
|
89
|
+
if (_.isUndefined(options)) {
|
|
90
|
+
return [];
|
|
91
|
+
}
|
|
92
|
+
var result = [];
|
|
93
|
+
var projection = this.getMongoFieldsOptions(options.fields);
|
|
94
|
+
var sort = this.getMongoSortOptions(options.sort);
|
|
95
|
+
if (!_.isEmpty(projection)) {
|
|
96
|
+
result.push({ $project: projection });
|
|
97
|
+
}
|
|
98
|
+
if (!_.isEmpty(sort)) {
|
|
99
|
+
result.push({ $sort: sort });
|
|
100
|
+
}
|
|
101
|
+
if (options.skip) {
|
|
102
|
+
result.push({ $skip: options.skip });
|
|
103
|
+
}
|
|
104
|
+
if (options.top) {
|
|
105
|
+
result.push({ $limit: options.top });
|
|
106
|
+
}
|
|
107
|
+
return result;
|
|
108
|
+
};
|
|
109
|
+
MetadataDriver.prototype.queryMetadata = function (collection, queryOptions, spaceId) {
|
|
110
|
+
var _collection = clone(collection);
|
|
111
|
+
_.each(_collection, function (item) { item.space = spaceId; });
|
|
112
|
+
var mongoFilters = this.getMongoFilters(queryOptions.filters);
|
|
113
|
+
var mongoOptions = this.getMongoOptions(queryOptions);
|
|
114
|
+
// console.log(`mongoFilters`, JSON.stringify(mongoFilters));
|
|
115
|
+
// console.log(`mongoOptions`, mongoOptions);
|
|
116
|
+
var query = new mingo.Query(mongoFilters, mongoOptions.projectio);
|
|
117
|
+
var cursor = query.find(_collection);
|
|
118
|
+
if (mongoOptions.sort) {
|
|
119
|
+
cursor.sort(mongoOptions.sort);
|
|
120
|
+
}
|
|
121
|
+
// if(mongoOptions.skip){
|
|
122
|
+
// cursor.skip(mongoOptions.skip)
|
|
123
|
+
// }
|
|
124
|
+
// if(mongoOptions.limit){
|
|
125
|
+
// cursor.limit(mongoOptions.limit)
|
|
126
|
+
// }
|
|
127
|
+
return cursor;
|
|
128
|
+
};
|
|
129
|
+
MetadataDriver.prototype.getSupportedColumnTypes = function () {
|
|
130
|
+
throw new Error("Method not implemented.");
|
|
131
|
+
};
|
|
132
|
+
MetadataDriver.prototype.find = function (collection, query, spaceId) {
|
|
133
|
+
var result = this.queryMetadata(collection, query, spaceId).all();
|
|
134
|
+
return result;
|
|
135
|
+
};
|
|
136
|
+
MetadataDriver.prototype.aggregate = function (collection, query, externalPipeline, spaceId) {
|
|
137
|
+
var result = this.queryMetadata(collection, query, spaceId).all();
|
|
138
|
+
return result;
|
|
139
|
+
};
|
|
140
|
+
MetadataDriver.prototype.findOne = function (collection, id, query, spaceId) {
|
|
141
|
+
throw new Error("Method not implemented.");
|
|
142
|
+
};
|
|
143
|
+
MetadataDriver.prototype.insert = function (collection, doc, spaceId) {
|
|
144
|
+
throw new Error("Method not implemented.");
|
|
145
|
+
};
|
|
146
|
+
MetadataDriver.prototype.update = function (collection, id, doc, spaceId) {
|
|
147
|
+
throw new Error("Method not implemented.");
|
|
148
|
+
};
|
|
149
|
+
MetadataDriver.prototype.updateOne = function (collection, id, doc, spaceId) {
|
|
150
|
+
throw new Error("Method not implemented.");
|
|
151
|
+
};
|
|
152
|
+
MetadataDriver.prototype.updateMany = function (collection, queryFilters, doc, spaceId) {
|
|
153
|
+
throw new Error("Method not implemented.");
|
|
154
|
+
};
|
|
155
|
+
MetadataDriver.prototype.delete = function (collection, id, spaceId) {
|
|
156
|
+
throw new Error("Method not implemented.");
|
|
157
|
+
};
|
|
158
|
+
MetadataDriver.prototype.directUpdate = function (collection, id, doc, spaceId) {
|
|
159
|
+
throw new Error("Method not implemented.");
|
|
160
|
+
};
|
|
161
|
+
MetadataDriver.prototype.directFind = function (collection, query, spaceId) {
|
|
162
|
+
throw new Error("Method not implemented.");
|
|
163
|
+
};
|
|
164
|
+
MetadataDriver.prototype.directInsert = function (collection, doc, spaceId) {
|
|
165
|
+
throw new Error("Method not implemented.");
|
|
166
|
+
};
|
|
167
|
+
MetadataDriver.prototype.directDelete = function (collection, id, spaceId) {
|
|
168
|
+
throw new Error("Method not implemented.");
|
|
169
|
+
};
|
|
170
|
+
MetadataDriver.prototype.directAggregate = function (collection, query, externalPipeline, spaceId) {
|
|
171
|
+
throw new Error("Method not implemented.");
|
|
172
|
+
};
|
|
173
|
+
MetadataDriver.prototype.directAggregatePrefixalPipeline = function (collection, query, prefixalPipeline, spaceId) {
|
|
174
|
+
throw new Error("Method not implemented.");
|
|
175
|
+
};
|
|
176
|
+
MetadataDriver.prototype.count = function (collection, query, spaceId) {
|
|
177
|
+
var result = this.queryMetadata(collection, query, spaceId).count();
|
|
178
|
+
return result;
|
|
179
|
+
};
|
|
180
|
+
MetadataDriver.prototype.dropEntities = function () {
|
|
181
|
+
throw new Error("Method not implemented.");
|
|
182
|
+
};
|
|
183
|
+
MetadataDriver.prototype.registerEntities = function (objects) {
|
|
184
|
+
throw new Error("Method not implemented.");
|
|
185
|
+
};
|
|
186
|
+
MetadataDriver.prototype.dropTables = function () {
|
|
187
|
+
throw new Error("Method not implemented.");
|
|
188
|
+
};
|
|
189
|
+
MetadataDriver.prototype.createTables = function (objects) {
|
|
190
|
+
throw new Error("Method not implemented.");
|
|
191
|
+
};
|
|
192
|
+
MetadataDriver.prototype.init = function (objects) {
|
|
193
|
+
throw new Error("Method not implemented.");
|
|
194
|
+
};
|
|
195
|
+
MetadataDriver.prototype._makeNewID = function (tableName) {
|
|
196
|
+
throw new Error("Method not implemented.");
|
|
197
|
+
};
|
|
198
|
+
return MetadataDriver;
|
|
199
|
+
}());
|
|
200
|
+
exports.MetadataDriver = MetadataDriver;
|
|
201
|
+
//# sourceMappingURL=metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/driver/metadata.ts"],"names":[],"mappings":"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"}
|
package/lib/types/object.js
CHANGED
|
@@ -15,6 +15,7 @@ var validation_rules_1 = require("./validation_rules");
|
|
|
15
15
|
var object_events_1 = require("./object_events");
|
|
16
16
|
var i18n_1 = require("@steedos/i18n");
|
|
17
17
|
var object_layouts_1 = require("./object_layouts");
|
|
18
|
+
var lodash_1 = require("lodash");
|
|
18
19
|
var clone = require('clone');
|
|
19
20
|
// 主子表有层级限制,超过3层就报错,该函数判断当前对象作为主表对象往下的层级最多不越过3层,
|
|
20
21
|
// 其3层指的是A-B-C-D,它们都有父子关系,A作为最顶层,该对象上不可以再创建主表子表关系字段,但是B、C、D上可以;
|
|
@@ -1282,7 +1283,7 @@ var SteedosObjectType = /** @class */ (function (_super) {
|
|
|
1282
1283
|
};
|
|
1283
1284
|
SteedosObjectType.prototype.getRecordView = function (userSession) {
|
|
1284
1285
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1285
|
-
var lng, objectMetadataConfig, objectConfig, _a, _b, _c, _d, layouts, layout, _fields_1, layoutFieldKeys, objectFieldKeys, difference,
|
|
1286
|
+
var lng, objectMetadataConfig, objectConfig, _a, _b, _c, _d, layouts, layout, _fields_1, sort_no_1, layoutFieldKeys, objectFieldKeys, difference, layoutButtonsName_1, spaceProcessDefinition, dbListViews;
|
|
1286
1287
|
return tslib_1.__generator(this, function (_e) {
|
|
1287
1288
|
switch (_e.label) {
|
|
1288
1289
|
case 0:
|
|
@@ -1317,6 +1318,7 @@ var SteedosObjectType = /** @class */ (function (_super) {
|
|
|
1317
1318
|
if (layouts && layouts.length > 0) {
|
|
1318
1319
|
layout = layouts[0];
|
|
1319
1320
|
_fields_1 = {};
|
|
1321
|
+
sort_no_1 = 1;
|
|
1320
1322
|
_.each(layout.fields, function (_item) {
|
|
1321
1323
|
_fields_1[_item.field_name] = objectConfig.fields[_item.field_name];
|
|
1322
1324
|
if (_fields_1[_item.field_name]) {
|
|
@@ -1336,6 +1338,8 @@ var SteedosObjectType = /** @class */ (function (_super) {
|
|
|
1336
1338
|
if (_item.visible_on) {
|
|
1337
1339
|
_fields_1[_item.field_name].visible_on = _item.visible_on;
|
|
1338
1340
|
}
|
|
1341
|
+
_fields_1[_item.field_name].sort_no = sort_no_1;
|
|
1342
|
+
sort_no_1++;
|
|
1339
1343
|
}
|
|
1340
1344
|
});
|
|
1341
1345
|
layoutFieldKeys = _.keys(_fields_1);
|
|
@@ -1346,21 +1350,34 @@ var SteedosObjectType = /** @class */ (function (_super) {
|
|
|
1346
1350
|
});
|
|
1347
1351
|
_.each(difference, function (fieldApiName) {
|
|
1348
1352
|
objectConfig.fields[fieldApiName].hidden = true;
|
|
1353
|
+
objectConfig.fields[fieldApiName].sort_no = 99999;
|
|
1349
1354
|
});
|
|
1350
|
-
_buttons_1 = {};
|
|
1351
1355
|
_.each(layout.buttons, function (button) {
|
|
1352
1356
|
var action = objectConfig.actions[button.button_name];
|
|
1353
1357
|
if (action) {
|
|
1354
1358
|
if (button.visible_on) {
|
|
1355
|
-
action.
|
|
1359
|
+
action._visible = button.visible_on;
|
|
1356
1360
|
}
|
|
1357
|
-
_buttons_1[button.button_name] = action;
|
|
1358
1361
|
}
|
|
1359
1362
|
});
|
|
1360
|
-
|
|
1363
|
+
layoutButtonsName_1 = _.pluck(layout.buttons, 'button_name');
|
|
1364
|
+
_.each(objectConfig.actions, function (action) {
|
|
1365
|
+
if (!_.include(layoutButtonsName_1, action.name)) {
|
|
1366
|
+
action.visible = false;
|
|
1367
|
+
action._visible = function () { return false; }.toString();
|
|
1368
|
+
}
|
|
1369
|
+
});
|
|
1361
1370
|
// _object.allow_customActions = userObjectLayout.custom_actions || []
|
|
1362
1371
|
// _object.exclude_actions = userObjectLayout.exclude_actions || []
|
|
1363
1372
|
objectConfig.related_lists = layout.related_lists || [];
|
|
1373
|
+
_.each(objectConfig.related_lists, function (related_list) {
|
|
1374
|
+
if (related_list.sort_field_name && _.isArray(related_list.sort_field_name) && related_list.sort_field_name.length > 0) {
|
|
1375
|
+
related_list.sort = [];
|
|
1376
|
+
_.each(related_list.sort_field_name, function (fName) {
|
|
1377
|
+
related_list.sort.push({ field_name: fName, order: related_list.sort_order || 'asc' });
|
|
1378
|
+
});
|
|
1379
|
+
}
|
|
1380
|
+
});
|
|
1364
1381
|
}
|
|
1365
1382
|
return [4 /*yield*/, getObject("process_definition").directFind({ filters: [['space', '=', userSession.spaceId], ['object_name', '=', this.name], ['active', '=', true]] })];
|
|
1366
1383
|
case 7:
|
|
@@ -1408,7 +1425,7 @@ var SteedosObjectType = /** @class */ (function (_super) {
|
|
|
1408
1425
|
return [4 /*yield*/, this.callMetadataObjectServiceAction('getOriginalObject', { objectApiName: this.name })];
|
|
1409
1426
|
case 1:
|
|
1410
1427
|
objectConfig = _b.sent();
|
|
1411
|
-
_.each(objectConfig.fields, function (field, key) {
|
|
1428
|
+
_.each(lodash_1.sortBy(objectConfig.fields, function (o) { return o.sort_no; }), function (field, key) {
|
|
1412
1429
|
var layoutField = {};
|
|
1413
1430
|
layoutField.field_name = field.name || key;
|
|
1414
1431
|
layoutField.is_readonly = field.readonly;
|
|
@@ -1680,7 +1697,7 @@ var SteedosObjectType = /** @class */ (function (_super) {
|
|
|
1680
1697
|
return tslib_1.__generator(this, function (_a) {
|
|
1681
1698
|
switch (_a.label) {
|
|
1682
1699
|
case 0:
|
|
1683
|
-
if (method === 'count') {
|
|
1700
|
+
if (method === 'count' || method === "findOne") {
|
|
1684
1701
|
method = 'find';
|
|
1685
1702
|
}
|
|
1686
1703
|
meteorWhen = "before" + method.charAt(0).toLocaleUpperCase() + _.rest(tslib_1.__spread(method)).join('');
|