diff --git a/process/DataPrivacy_lib/process.js b/process/DataPrivacy_lib/process.js index 4d42d2d37e812cc8881022bc727027c8d15a6cad..f1bda31c81429cd4446654387120d6c1cf6a8892 100644 --- a/process/DataPrivacy_lib/process.js +++ b/process/DataPrivacy_lib/process.js @@ -174,11 +174,14 @@ DataPrivacyType.get = function(pKey) { // Todo Format or set content dsgvotype var persData = _selectPersonal(pContactId, pContactIdSaved, ["DATEOFBIRTH"]); - - return [{ - value: persData.DATEOFBIRTH, - id: persData.CONTACTID - }] + + if (persData.DATEOFBIRTH) + return [{ + value: persData.DATEOFBIRTH, + id: persData.CONTACTID + }]; + else + return []; } /** @@ -320,7 +323,7 @@ DataPrivacyUtils.getDSGVO = function(pContactId, pFilterCond) KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.dsgvoType(), "DSGVOTYPE")) // 12 - dsgvotype-displayvalue) .from("DSGVO") .where("DSGVO.CONTACT_ID", pContactId) - .and(pFilterCond) + .andIfSet(pFilterCond) .table(); } @@ -363,6 +366,8 @@ DataPrivacyUtils.collectAll = function(pContactId, pFilterCond) data.forEach(function(pRow) { + if(pRow.value == "")//when the value is empty there is no need to insert the records since they'd been deleted later in the function + return; // search if it is already in DSGVO table var found = false; for (dat in contactDSGVO) @@ -415,7 +420,7 @@ DataPrivacyUtils.collectAll = function(pContactId, pFilterCond) if (!pRow[4]) { if (pRow[0]) - deletes.push(["DSGVO", newWhere("DSGVO.DSGVOID", pRow[0])]); + deletes.push(["DSGVO", newWhere("DSGVO.DSGVOID", pRow[0]).build()]); return false; }