From 991d437d35b8aa392e35a2569248b140225743bc Mon Sep 17 00:00:00 2001
From: "S.Listl" <S.Listl@SLISTL.aditosoftware.local>
Date: Tue, 17 Dec 2019 14:41:33 +0100
Subject: [PATCH] WorkflowTask load displayValues in recordcontainer

---
 .../WorkflowTask_entity/WorkflowTask_entity.aod  |  8 ++++++--
 .../entityfields/assignee/displayValueProcess.js | 10 ----------
 .../target_id/displayValueProcess.js             |  8 --------
 .../recordcontainers/jdito/contentProcess.js     | 16 +++++++++++++---
 4 files changed, 19 insertions(+), 23 deletions(-)
 delete mode 100644 entity/WorkflowTask_entity/entityfields/assignee/displayValueProcess.js
 delete mode 100644 entity/WorkflowTask_entity/entityfields/target_id/displayValueProcess.js

diff --git a/entity/WorkflowTask_entity/WorkflowTask_entity.aod b/entity/WorkflowTask_entity/WorkflowTask_entity.aod
index 9ae9d27e26..093057d737 100644
--- a/entity/WorkflowTask_entity/WorkflowTask_entity.aod
+++ b/entity/WorkflowTask_entity/WorkflowTask_entity.aod
@@ -83,7 +83,6 @@
     <entityField>
       <name>ASSIGNEE</name>
       <title>Responsible</title>
-      <displayValueProcess>%aditoprj%/entity/WorkflowTask_entity/entityfields/assignee/displayValueProcess.js</displayValueProcess>
     </entityField>
     <entityField>
       <name>DUEDATE</name>
@@ -103,7 +102,6 @@
       <title>Link</title>
       <linkedContextProcess>%aditoprj%/entity/WorkflowTask_entity/entityfields/target_id/linkedContextProcess.js</linkedContextProcess>
       <state>READONLY</state>
-      <displayValueProcess>%aditoprj%/entity/WorkflowTask_entity/entityfields/target_id/displayValueProcess.js</displayValueProcess>
     </entityField>
   </entityFields>
   <recordContainers>
@@ -152,6 +150,9 @@
         <jDitoRecordFieldMapping>
           <name>ASSIGNEE.value</name>
         </jDitoRecordFieldMapping>
+        <jDitoRecordFieldMapping>
+          <name>ASSIGNEE.displayValue</name>
+        </jDitoRecordFieldMapping>
         <jDitoRecordFieldMapping>
           <name>DUEDATE.value</name>
           <isFilterable v="true" />
@@ -165,6 +166,9 @@
         <jDitoRecordFieldMapping>
           <name>TARGET_ID.value</name>
         </jDitoRecordFieldMapping>
+        <jDitoRecordFieldMapping>
+          <name>TARGET_ID.displayValue</name>
+        </jDitoRecordFieldMapping>
       </recordFieldMappings>
     </jDitoRecordContainer>
   </recordContainers>
diff --git a/entity/WorkflowTask_entity/entityfields/assignee/displayValueProcess.js b/entity/WorkflowTask_entity/entityfields/assignee/displayValueProcess.js
deleted file mode 100644
index 01de759d56..0000000000
--- a/entity/WorkflowTask_entity/entityfields/assignee/displayValueProcess.js
+++ /dev/null
@@ -1,10 +0,0 @@
-import("system.neon");
-import("system.result");
-import("system.vars");
-import("system.entities");
-import("Context_lib");
-
-if (vars.get("$field.ASSIGNEE") && vars.get("$sys.recordstate") == neon.OPERATINGSTATE_VIEW)
-    result.string(ContextUtils.loadContentTitle("Employee_entity", vars.get("$field.ASSIGNEE")));
-else
-    result.string("");
diff --git a/entity/WorkflowTask_entity/entityfields/target_id/displayValueProcess.js b/entity/WorkflowTask_entity/entityfields/target_id/displayValueProcess.js
deleted file mode 100644
index 94eee8c9a2..0000000000
--- a/entity/WorkflowTask_entity/entityfields/target_id/displayValueProcess.js
+++ /dev/null
@@ -1,8 +0,0 @@
-//import("system.result");
-//import("Context_lib");
-//import("system.vars");
-//import("system.project");
-
-//var context = project.getContextStructure(vars.get("$field.TARGET_CONTEXT"));
-//
-//result.string(ContextUtils.loadContentTitle(context.entity, vars.get("$field.TARGET_ID")));
diff --git a/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js b/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js
index acf9eb5744..17a7556ee4 100644
--- a/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js
+++ b/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js
@@ -1,3 +1,5 @@
+import("system.project");
+import("Context_lib");
 import("system.neon");
 import("Employee_lib");
 import("Util_lib");
@@ -19,7 +21,8 @@ if (vars.get("$local.idvalues") && vars.get("$local.idvalues")[0])
         .taskId(vars.get("$local.idvalues")[0])
     tasks = [JSON.parse(workflow.getTask(loadConfig))];
 }
-else {
+else 
+{
     if (isOnlyForCurrentUser)
         loadConfig.candidateIdentifier(EmployeeUtils.getCurrentUserId());
     tasks = JSON.parse(workflow.getTasks(loadConfig));
@@ -28,6 +31,11 @@ else {
 tasks = tasks.map(function (task)
 {
     var variables = JSON.parse(workflow.getTaskVariables(task.id));
+    var targetTitle = "";
+    if (variables.targetId && variables.targetContext)
+        targetTitle = ContextUtils.loadContentTitle(project.getContextStructure(variables.targetContext).entity, variables.targetId); 
+    
+    var assigneeName = task.assignee ? ContextUtils.loadContentTitle("Employee_entity", task.assignee) : "";
     
     return [
         task.id,
@@ -41,14 +49,16 @@ tasks = tasks.map(function (task)
         task.description || "",
         task.category || "",
         task.assignee || "",
+        assigneeName,
         task.dueDate ? Date.parse(task.dueDate).toString() : "",
         task.owner || "",
         variables.targetContext || "",
-        variables.targetId || ""
+        variables.targetId || "",
+        targetTitle
     ];
 });
 
 tasks = JditoFilterUtils.filterRecords(["UID", "NAME", "PROCESSDEFINITION_ID", "PROCESSINSTANCE_ID", 
-    "CREATE_TIME", "FORMDEFINITION", "USER", "DESCRIPTION", "CATEGORY", "ASSIGNEE", "DUEDATE", "OWNER"], tasks, vars.get("$local.filter").filter);
+    "CREATE_TIME", "FORMDEFINITION", "USER", "DESCRIPTION", "CATEGORY", "ASSIGNEE", "", "DUEDATE", "OWNER"], tasks, vars.get("$local.filter").filter);
 
 result.object(tasks);
\ No newline at end of file
-- 
GitLab