Skip to content
Snippets Groups Projects
Commit c400e790 authored by Sebastian Pongratz's avatar Sebastian Pongratz :ping_pong:
Browse files

[Projekt: Entwicklung - Neon][TicketNr.: 1082902][[Beobachtungen] verschiedene Bugfixes]

parent 61620129
No related branches found
No related tags found
No related merge requests found
...@@ -4,4 +4,6 @@ import("system.result"); ...@@ -4,4 +4,6 @@ import("system.result");
import("system.neon"); import("system.neon");
if (!vars.get("$this.value") && vars.get("$field.OBJECT_TYPE") && (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_EDIT)) if (!vars.get("$this.value") && vars.get("$field.OBJECT_TYPE") && (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_EDIT))
result.string(Observation.getAllFieldValue(vars.get("$field.OBJECT_TYPE"))); {
\ No newline at end of file result.string(Observation.getAllFieldValue(vars.get("$field.OBJECT_TYPE")));
}
...@@ -3,16 +3,16 @@ import("Context_lib"); ...@@ -3,16 +3,16 @@ import("Context_lib");
import("system.vars"); import("system.vars");
import("system.result"); import("system.result");
let isFilterParamExists = vars.exists("$param.ObjectFilter_param") && vars.get("$param.ObjectFilter_param"); let filterParam = vars.get("$param.ObjectFilter_param");
let resFilter; let resFilter;
if ((vars.get("$this.value") == null || vars.get("$this.value") == "") && vars.get("$field.OBJECT_TYPE") && !vars.get("$field.OBJECT_ID") && !isFilterParamExists) if ((vars.get("$this.value") == null || vars.get("$this.value") == "") && vars.get("$field.OBJECT_TYPE") && !vars.get("$field.OBJECT_ID") && !filterParam)
{ {
resFilter = Observation.getContextFilter(vars.get("$field.OBJECT_TYPE"), null); resFilter = Observation.getContextFilter(vars.get("$field.OBJECT_TYPE"), null);
} }
else if (!vars.get("$this.value") && isFilterParamExists) else if (!vars.get("$this.value") && filterParam)
{ {
resFilter = vars.get("$param.ObjectFilter_param"); resFilter = filterParam;
} }
if (resFilter) if (resFilter)
......
...@@ -192,7 +192,7 @@ Observation.prototype.checkFilterAndPermissions = function (pUserTitle, pFilterO ...@@ -192,7 +192,7 @@ Observation.prototype.checkFilterAndPermissions = function (pUserTitle, pFilterO
// check if the observation has been alredy checkt // check if the observation has been alredy checkt
if (this.storedFilterResults[storedIndex]) if (this.storedFilterResults[storedIndex])
{ {
return this.storedFilterResults[storedIndex]; return JSON.parse(this.storedFilterResults[storedIndex]);
} }
try try
...@@ -224,7 +224,7 @@ Observation.prototype.checkFilterAndPermissions = function (pUserTitle, pFilterO ...@@ -224,7 +224,7 @@ Observation.prototype.checkFilterAndPermissions = function (pUserTitle, pFilterO
filterResult = null; filterResult = null;
} }
this.storedFilterResults[storedIndex] = filterResult; this.storedFilterResults[storedIndex] = JSON.stringify(filterResult);
return filterResult return filterResult
} }
...@@ -241,7 +241,7 @@ Observation.prototype.parseAndFilterObjectFields = function (pObjectFields, pUse ...@@ -241,7 +241,7 @@ Observation.prototype.parseAndFilterObjectFields = function (pObjectFields, pUse
if (this.storedObservedFields[storedIndex]) if (this.storedObservedFields[storedIndex])
{ {
return this.storedObservedFields[storedIndex] return JSON.parse(this.storedObservedFields[storedIndex]);
} }
let observeFields = {}; let observeFields = {};
...@@ -260,7 +260,7 @@ Observation.prototype.parseAndFilterObjectFields = function (pObjectFields, pUse ...@@ -260,7 +260,7 @@ Observation.prototype.parseAndFilterObjectFields = function (pObjectFields, pUse
} }
}, this); }, this);
this.storedObservedFields[storedIndex] = observeFields; this.storedObservedFields[storedIndex] = JSON.stringify(observeFields);
return observeFields; return observeFields;
} }
...@@ -285,7 +285,7 @@ Observation.prototype._checkDependencies = function (pObserver, pDependentContex ...@@ -285,7 +285,7 @@ Observation.prototype._checkDependencies = function (pObserver, pDependentContex
var dependentCheckVars = {} var dependentCheckVars = {}
dependentCheckVars[WorkflowVariables.TRIGGER()] = this.callerVariables[WorkflowVariables.TRIGGER()]; dependentCheckVars[WorkflowVariables.TRIGGER()] = this.callerVariables[WorkflowVariables.TRIGGER()];
dependentCheckVars[WorkflowVariables.TARGET_CONTEXT()] = pDependentContext; dependentCheckVars[WorkflowVariables.TARGET_CONTEXT()] = pDependentContext;
dependentCheckVars[WorkflowVariables.EVENT_USER()] = pObserver; dependentCheckVars[WorkflowVariables.EVENT_USER()] = this.callerVariables[WorkflowVariables.EVENT_USER()];
Object.keys(pTempObserver[pObserver][Observation.RECORDS_SPECIFIC_VALUES()]).forEach(function (pRecordID) { Object.keys(pTempObserver[pObserver][Observation.RECORDS_SPECIFIC_VALUES()]).forEach(function (pRecordID) {
let specificRecordValues = pTempObserver[pObserver][Observation.RECORDS_SPECIFIC_VALUES()][pRecordID]; let specificRecordValues = pTempObserver[pObserver][Observation.RECORDS_SPECIFIC_VALUES()][pRecordID];
...@@ -322,7 +322,7 @@ Observation.prototype._formatFieldsToLoad = function (pFilterResults) ...@@ -322,7 +322,7 @@ Observation.prototype._formatFieldsToLoad = function (pFilterResults)
let res = {}; let res = {};
let fieldsToLoad = this.callerVariables[WorkflowVariables.FIELDS_TO_LOAD()] let fieldsToLoad = this.callerVariables[WorkflowVariables.FIELDS_TO_LOAD()]
if (Array.isArray(fieldsToLoad)) if (Array.isArray(fieldsToLoad) && !Utils.isNullOrEmpty(fieldsToLoad))
{ {
let recordFields = {}; let recordFields = {};
let pro = project.getRecordContainerModel(this.callerVariables[Observation.ENTITY_NAME()])["recordFieldMappings"]; let pro = project.getRecordContainerModel(this.callerVariables[Observation.ENTITY_NAME()])["recordFieldMappings"];
...@@ -394,7 +394,7 @@ Observation.prototype.checkObservation = function(pObservationId) ...@@ -394,7 +394,7 @@ Observation.prototype.checkObservation = function(pObservationId)
var filterResult; var filterResult;
// exclude the user who made the changes. // exclude the user who made the changes.
if (user)// && pVariables[WorkflowVariables.EVENT_USER()] !== observation[2]) if (user && this.callerVariables[WorkflowVariables.EVENT_USER()] !== user["name"])
{ {
filterResult = this.checkFilterAndPermissions(user.title, observation[1], observation[0]); filterResult = this.checkFilterAndPermissions(user.title, observation[1], observation[0]);
...@@ -405,6 +405,10 @@ Observation.prototype.checkObservation = function(pObservationId) ...@@ -405,6 +405,10 @@ Observation.prototype.checkObservation = function(pObservationId)
return filterResult; return filterResult;
} }
if (Utils.isNullOrEmpty(observation[3]))
{
observation[3] = Observation.getAllFieldValue(this.callerVariables[WorkflowVariables.TARGET_CONTEXT()]);
}
tempObserver[observation[2]] = this.parseAndFilterObjectFields(observation[3], user.title, filterResult); tempObserver[observation[2]] = this.parseAndFilterObjectFields(observation[3], user.title, filterResult);
tempObserver[observation[2]][Observation.RECORDS_SPECIFIC_VALUES()] = this._formatFieldsToLoad(filterResult); tempObserver[observation[2]][Observation.RECORDS_SPECIFIC_VALUES()] = this._formatFieldsToLoad(filterResult);
} }
...@@ -448,8 +452,9 @@ Observation.prototype.checkObservation = function(pObservationId) ...@@ -448,8 +452,9 @@ Observation.prototype.checkObservation = function(pObservationId)
*/ */
Observation._syncTempObservationAndObservation = function (pTempObserver, pObservers, pObserverUserID, pChangedRows) Observation._syncTempObservationAndObservation = function (pTempObserver, pObservers, pObserverUserID, pChangedRows)
{ {
if (pTempObserver[pObserverUserID] && (!Utils.isNullOrEmpty(pTempObserver[pObserverUserID][Observation.OBJECT_IDs()]))) if (pTempObserver[pObserverUserID] && (!pTempObserver[pObserverUserID][Observation.OBJECT_IDs()] ||
{ Object.keys(pTempObserver[pObserverUserID][Observation.OBJECT_IDs()]).length > 0))
{
if (!pObservers[pObserverUserID]) if (!pObservers[pObserverUserID])
{ {
pObservers[pObserverUserID] = pTempObserver[pObserverUserID]; pObservers[pObserverUserID] = pTempObserver[pObserverUserID];
...@@ -613,7 +618,7 @@ Observation._notification = function (pVariables, pFilteredVariables, pObservers ...@@ -613,7 +618,7 @@ Observation._notification = function (pVariables, pFilteredVariables, pObservers
pFilteredVariables.notificationUser = pObserver; pFilteredVariables.notificationUser = pObserver;
var isNewDescription = false; var isNewDescription = false;
if (pFilteredVariables != {}){ if (!Utils.isNullOrEmpty(pFilteredVariables)){
var rowData = pVariables[WorkflowVariables.ROWDATA()]; var rowData = pVariables[WorkflowVariables.ROWDATA()];
Object.keys(pObservers[pObserver]).forEach(function (field) { Object.keys(pObservers[pObserver]).forEach(function (field) {
if (pVariables[WorkflowVariables.CHANGED_ROWS()].indexOf(field) > -1) if (pVariables[WorkflowVariables.CHANGED_ROWS()].indexOf(field) > -1)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment