Skip to content

Commit 8e72b9f

Browse files
committed
Clean message / fix issue with update documents
1 parent e0f4031 commit 8e72b9f

4 files changed

Lines changed: 91 additions & 69 deletions

File tree

OpenFlow/src/DatabaseConnection.ts

Lines changed: 39 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -366,9 +366,10 @@ export class DatabaseConnection {
366366
q.item._version = await this.SaveDiff(q.collectionname, original, q.item);
367367
} else {
368368
itemReplace = false;
369-
var _version = await this.SaveUpdateDiff(q, user);
370-
if ((q.item["$set"]) === undefined) { (q.item["$set"]) = {} };
371-
(q.item["$set"])._version = _version;
369+
this.SaveUpdateDiff(q, user);
370+
// var _version = await this.SaveUpdateDiff(q, user);
371+
// if ((q.item["$set"]) === undefined) { (q.item["$set"]) = {} };
372+
// (q.item["$set"])._version = _version;
372373
}
373374

374375
if (q.collectionname === "users" && q.item._type === "user" && q.item.hasOwnProperty("newpassword")) {
@@ -812,39 +813,43 @@ export class DatabaseConnection {
812813
}
813814

814815
async SaveUpdateDiff<T extends Base>(q: UpdateOneMessage<T>, user: TokenUser) {
815-
var _skip_array: string[] = Config.skip_history_collections.split(",");
816-
var skip_array: string[] = [];
817-
_skip_array.forEach(x => skip_array.push(x.trim()));
818-
if (skip_array.indexOf(q.collectionname) > -1) { return 0; }
819-
var res = await this.query<T>(q.query, null, 1, 0, null, q.collectionname, q.jwt);
820-
var name: string = "unknown";
821-
var _id: string = "";
822-
if (res.length > 0) {
823-
var _version = 1;
824-
var original = res[0];
825-
name = original.name;
826-
_id = original._id;
827-
delete original._modifiedby;
828-
delete original._modifiedbyid;
829-
delete original._modified;
830-
if (original._version != undefined && original._version != null) {
831-
_version = original._version + 1;
816+
try {
817+
var _skip_array: string[] = Config.skip_history_collections.split(",");
818+
var skip_array: string[] = [];
819+
_skip_array.forEach(x => skip_array.push(x.trim()));
820+
if (skip_array.indexOf(q.collectionname) > -1) { return 0; }
821+
var res = await this.query<T>(q.query, null, 1, 0, null, q.collectionname, q.jwt);
822+
var name: string = "unknown";
823+
var _id: string = "";
824+
if (res.length > 0) {
825+
var _version = 1;
826+
var original = res[0];
827+
name = original.name;
828+
_id = original._id;
829+
delete original._modifiedby;
830+
delete original._modifiedbyid;
831+
delete original._modified;
832+
if (original._version != undefined && original._version != null) {
833+
_version = original._version + 1;
834+
}
832835
}
836+
var updatehist = {
837+
_modified: new Date(new Date().toISOString()),
838+
_modifiedby: user.name,
839+
_modifiedbyid: user._id,
840+
_created: new Date(new Date().toISOString()),
841+
_createdby: user.name,
842+
_createdbyid: user._id,
843+
name: name,
844+
id: _id,
845+
update: JSON.stringify(q.item),
846+
_version: _version,
847+
reason: ""
848+
}
849+
await this.db.collection(q.collectionname + '_hist').insertOne(updatehist);
850+
} catch (error) {
851+
this._logger.error(error);
833852
}
834-
var updatehist = {
835-
_modified: new Date(new Date().toISOString()),
836-
_modifiedby: user.name,
837-
_modifiedbyid: user._id,
838-
_created: new Date(new Date().toISOString()),
839-
_createdby: user.name,
840-
_createdbyid: user._id,
841-
name: name,
842-
id: _id,
843-
update: q.item,
844-
_version: _version,
845-
reason: ""
846-
}
847-
await this.db.collection(q.collectionname + '_hist').insertOne(updatehist);
848853
}
849854
async SaveDiff(collectionname: string, original: any, item: any) {
850855
if (item._type == 'instance' && collectionname == 'workflows') return 0;

0 commit comments

Comments
 (0)