@algotech-ce/interpretor 4.1.50 → 4.1.52
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.
|
@@ -18,6 +18,7 @@ export interface Filter {
|
|
|
18
18
|
export declare class TaskMergeV2 extends TaskBase {
|
|
19
19
|
_task: InterpretorTaskDto;
|
|
20
20
|
execute(task: InterpretorTaskDto): Observable<InterpretorValidateDto>;
|
|
21
|
+
_applyMerge(smartModel: SmartModelDto, propType: string[], propToMerge: string[], objects: SmartObjectDto[]): any;
|
|
21
22
|
_filterSmartObject(object: SmartObjectDto, objectsBD: SmartObjectDto[], filterKeys: string[]): SmartObjectDto;
|
|
22
23
|
_querySearch(modelKey: SmartModelDto, objects: SmartObjectDto[], filterKeys: string[]): QuerySearch;
|
|
23
24
|
private createQueryProp;
|
|
@@ -43,45 +43,23 @@ class TaskMergeV2 extends task_base_1.TaskBase {
|
|
|
43
43
|
const propType = values[2];
|
|
44
44
|
const propToMerge = values[3];
|
|
45
45
|
const saveOnApi = values[4];
|
|
46
|
-
const
|
|
47
|
-
return
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
smartModel,
|
|
53
|
-
smartObjectsFromDB: _.cloneDeep(smartObjects),
|
|
54
|
-
objects,
|
|
55
|
-
propType,
|
|
56
|
-
propToMerge,
|
|
57
|
-
saveOnApi
|
|
58
|
-
};
|
|
59
|
-
}));
|
|
46
|
+
const chunkObjects = _.chunk(objects, 500);
|
|
47
|
+
return (0, rxjs_1.concat)(...chunkObjects.map((currentChunk) => this._applyMerge(smartModel, propType, propToMerge, currentChunk))).pipe((0, operators_1.toArray)(), (0, operators_1.map)((data) => ({
|
|
48
|
+
so2Add: _.flatten(data.map((d) => d.so2Add)),
|
|
49
|
+
so2Update: _.flatten(data.map((d) => d.so2Update)),
|
|
50
|
+
saveOnApi
|
|
51
|
+
})));
|
|
60
52
|
}), (0, operators_1.map)((data) => {
|
|
61
|
-
const so2Add = [];
|
|
62
|
-
const so2Update = [];
|
|
63
|
-
for (const object of data.objects) {
|
|
64
|
-
let toMerge = this._filterSmartObject(object, data.smartObjectsFromDB, data.propType);
|
|
65
|
-
if (!toMerge) {
|
|
66
|
-
toMerge = this.soUtils.createInstance(data.smartModel);
|
|
67
|
-
// push to new
|
|
68
|
-
this._pushObject(so2Add, data.propToMerge, toMerge, data.smartModel, object.properties);
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
// push to update
|
|
72
|
-
this._pushObject(so2Update, data.propToMerge, toMerge, data.smartModel, object.properties);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
53
|
const transfers = [{
|
|
76
54
|
saveOnApi: data.saveOnApi,
|
|
77
55
|
data: this._getTransitionData(0),
|
|
78
56
|
type: 'smartobjects',
|
|
79
|
-
value: so2Add,
|
|
57
|
+
value: data.so2Add,
|
|
80
58
|
}, {
|
|
81
59
|
saveOnApi: data.saveOnApi,
|
|
82
60
|
data: this._getTransitionData(1),
|
|
83
61
|
type: 'smartobjects',
|
|
84
|
-
value: so2Update,
|
|
62
|
+
value: data.so2Update,
|
|
85
63
|
}];
|
|
86
64
|
const validation = {
|
|
87
65
|
transitionKey: 'done',
|
|
@@ -90,6 +68,37 @@ class TaskMergeV2 extends task_base_1.TaskBase {
|
|
|
90
68
|
return validation;
|
|
91
69
|
}));
|
|
92
70
|
}
|
|
71
|
+
_applyMerge(smartModel, propType, propToMerge, objects) {
|
|
72
|
+
const querySearch = this._querySearch(smartModel, objects, propType);
|
|
73
|
+
return this.soUtils.getAllByProperties(querySearch, this._task.instance.context).pipe((0, operators_1.catchError)((err) => {
|
|
74
|
+
throw new tasks_error_1.TaskMergeError('ERR-045', `{{FAILED-TO-FETCH-DATA-BY-MODEL}} : ${err.message}`);
|
|
75
|
+
}), (0, operators_1.map)((smartObjects) => {
|
|
76
|
+
interpretor_so_utils_1.InterpretorSoUtils.pushOrReplaceSo(this._task.instance.smartobjects, smartObjects, this._task.instance.context?.custom?.indexes);
|
|
77
|
+
return {
|
|
78
|
+
smartModel,
|
|
79
|
+
smartObjectsFromDB: _.cloneDeep(smartObjects),
|
|
80
|
+
objects,
|
|
81
|
+
propType,
|
|
82
|
+
propToMerge,
|
|
83
|
+
};
|
|
84
|
+
}), (0, operators_1.map)((data) => {
|
|
85
|
+
const so2Add = [];
|
|
86
|
+
const so2Update = [];
|
|
87
|
+
for (const object of data.objects) {
|
|
88
|
+
let toMerge = this._filterSmartObject(object, data.smartObjectsFromDB, data.propType);
|
|
89
|
+
if (!toMerge) {
|
|
90
|
+
toMerge = this.soUtils.createInstance(data.smartModel);
|
|
91
|
+
// push to new
|
|
92
|
+
this._pushObject(so2Add, data.propToMerge, toMerge, data.smartModel, object.properties);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
// push to update
|
|
96
|
+
this._pushObject(so2Update, data.propToMerge, toMerge, data.smartModel, object.properties);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return { so2Add, so2Update };
|
|
100
|
+
}), (0, operators_1.first)());
|
|
101
|
+
}
|
|
93
102
|
/* Only for tests */
|
|
94
103
|
_filterSmartObject(object, objectsBD, filterKeys) {
|
|
95
104
|
const propsObject = _.filter(object.properties, (p) => filterKeys.includes(p.key));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-merge-v2.js","sourceRoot":"","sources":["../../src/interpretor-tasks/task-merge-v2.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+
|
|
1
|
+
{"version":3,"file":"task-merge-v2.js","sourceRoot":"","sources":["../../src/interpretor-tasks/task-merge-v2.ts"],"names":[],"mappings":"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"}
|