From 4cf70624c0b9fd02b9ed4a463f27a8786ed33bfd Mon Sep 17 00:00:00 2001
From: "d.buechler" <d.buechler@adito.de>
Date: Mon, 20 May 2019 15:06:52 +0200
Subject: [PATCH] =?UTF-8?q?Stufen=20k=C3=B6nnen=20nun=20einen=20Vorg=C3=A4?=
 =?UTF-8?q?nger=20haben=20Gantt=20wurde=20in=20die=20KampagnenMain=20integ?=
 =?UTF-8?q?riert?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../create_campaignStep.xml                   |  1 +
 aliasDefinition/Data_alias/Data_alias.aod     | 14 ++++++++
 .../CampaignStep_entity.aod                   | 35 +++++++++++++++++++
 .../children/campaignid_param/valueProcess.js |  4 +++
 .../predecessorstep_id/displayValueProcess.js | 11 ++++++
 .../_____LANGUAGE_EXTRA.aod                   | 12 +++----
 .../_____LANGUAGE_de/_____LANGUAGE_de.aod     | 10 +++---
 .../_____LANGUAGE_en/_____LANGUAGE_en.aod     |  3 ++
 .../CampaignStepEdit_view.aod                 |  4 +++
 .../CampaignStepPreview_view.aod              | 10 ++++++
 .../CampaignStepsGantt_view.aod               |  2 ++
 11 files changed, 94 insertions(+), 12 deletions(-)
 create mode 100644 entity/CampaignStep_entity/entityfields/campaignstepsconsumer/children/campaignid_param/valueProcess.js
 create mode 100644 entity/CampaignStep_entity/entityfields/predecessorstep_id/displayValueProcess.js

diff --git a/.liquibase/Data_alias/basic/2019.2/CampaignManagement/create_campaignStep.xml b/.liquibase/Data_alias/basic/2019.2/CampaignManagement/create_campaignStep.xml
index 377cb13f6c1..5b29140f921 100644
--- a/.liquibase/Data_alias/basic/2019.2/CampaignManagement/create_campaignStep.xml
+++ b/.liquibase/Data_alias/basic/2019.2/CampaignManagement/create_campaignStep.xml
@@ -38,6 +38,7 @@
             </column>
             <column name="USER_EDIT" type="NVARCHAR(50)" />
             <column name="DATE_EDIT" type="DATE" />
+            <column name="PREDECESSORSTEP_ID" type="CHAR(36)" />
         </createTable>
     </changeSet>
 </databaseChangeLog>
\ No newline at end of file
diff --git a/aliasDefinition/Data_alias/Data_alias.aod b/aliasDefinition/Data_alias/Data_alias.aod
index 7f8d378183a..2cfe22f1fe3 100644
--- a/aliasDefinition/Data_alias/Data_alias.aod
+++ b/aliasDefinition/Data_alias/Data_alias.aod
@@ -9131,6 +9131,20 @@
                 <title></title>
                 <description></description>
               </entityFieldDb>
+              <entityFieldDb>
+                <name>PREDECESSORSTEP_ID</name>
+                <dbName></dbName>
+                <primaryKey v="false" />
+                <columnType v="1" />
+                <size v="36" />
+                <scale v="0" />
+                <notNull v="false" />
+                <isUnique v="false" />
+                <index v="false" />
+                <documentation></documentation>
+                <title></title>
+                <description></description>
+              </entityFieldDb>
             </entityFields>
           </entityDb>
           <entityDb>
diff --git a/entity/CampaignStep_entity/CampaignStep_entity.aod b/entity/CampaignStep_entity/CampaignStep_entity.aod
index f6294fddc03..7aa1787d28c 100644
--- a/entity/CampaignStep_entity/CampaignStep_entity.aod
+++ b/entity/CampaignStep_entity/CampaignStep_entity.aod
@@ -136,6 +136,12 @@
           <fieldName>CampaignStepsReadonly</fieldName>
           <isConsumer v="false" />
         </entityDependency>
+        <entityDependency>
+          <name>db1a63f3-753b-423d-9ab9-db3d03315dc6</name>
+          <entityName>CampaignStep_entity</entityName>
+          <fieldName>CampaignStepsConsumer</fieldName>
+          <isConsumer v="false" />
+        </entityDependency>
       </dependencies>
       <children>
         <entityParameter>
@@ -312,6 +318,31 @@
       <onActionProcess>%aditoprj%/entity/CampaignStep_entity/entityfields/newtask/onActionProcess.js</onActionProcess>
       <iconId>VAADIN:TASKS</iconId>
     </entityActionField>
+    <entityField>
+      <name>PREDECESSORSTEP_ID</name>
+      <title>Predecessor</title>
+      <color></color>
+      <consumer>CampaignStepsConsumer</consumer>
+      <textInputAllowed v="true" />
+      <displayValueProcess>%aditoprj%/entity/CampaignStep_entity/entityfields/predecessorstep_id/displayValueProcess.js</displayValueProcess>
+    </entityField>
+    <entityConsumer>
+      <name>CampaignStepsConsumer</name>
+      <fieldType>DEPENDENCY_OUT</fieldType>
+      <dependency>
+        <name>dependency</name>
+        <entityName>CampaignStep_entity</entityName>
+        <fieldName>CampaignSteps</fieldName>
+      </dependency>
+      <children>
+        <entityParameter>
+          <name>campaignId_param</name>
+          <valueProcess>%aditoprj%/entity/CampaignStep_entity/entityfields/campaignstepsconsumer/children/campaignid_param/valueProcess.js</valueProcess>
+          <expose v="true" />
+          <mandatory v="true" />
+        </entityParameter>
+      </children>
+    </entityConsumer>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
@@ -397,6 +428,10 @@
           <name>CAMPAIGN_ID.displayValue</name>
           <expression>%aditoprj%/entity/CampaignStep_entity/recordcontainers/db/recordfieldmappings/campaign_id.displayvalue/expression.js</expression>
         </dbRecordFieldMapping>
+        <dbRecordFieldMapping>
+          <name>PREDECESSORSTEP_ID.value</name>
+          <recordfield>CAMPAIGNSTEP.PREDECESSORSTEP_ID</recordfield>
+        </dbRecordFieldMapping>
       </recordFieldMappings>
     </dbRecordContainer>
   </recordContainers>
diff --git a/entity/CampaignStep_entity/entityfields/campaignstepsconsumer/children/campaignid_param/valueProcess.js b/entity/CampaignStep_entity/entityfields/campaignstepsconsumer/children/campaignid_param/valueProcess.js
new file mode 100644
index 00000000000..b2482a5e35f
--- /dev/null
+++ b/entity/CampaignStep_entity/entityfields/campaignstepsconsumer/children/campaignid_param/valueProcess.js
@@ -0,0 +1,4 @@
+import("system.vars");
+import("system.result");
+
+result.string(vars.get("$field.CAMPAIGN_ID"));
\ No newline at end of file
diff --git a/entity/CampaignStep_entity/entityfields/predecessorstep_id/displayValueProcess.js b/entity/CampaignStep_entity/entityfields/predecessorstep_id/displayValueProcess.js
new file mode 100644
index 00000000000..ee5fd1723b8
--- /dev/null
+++ b/entity/CampaignStep_entity/entityfields/predecessorstep_id/displayValueProcess.js
@@ -0,0 +1,11 @@
+import("system.vars");
+import("Campaign_lib");
+import("system.result");
+
+var campaignStepName = "";
+var campaignStepId = vars.get("$field.PREDECESSORSTEP_ID");
+
+if(campaignStepId != "")
+    campaignStepName = CampaignUtils.getCampaignStepNameById(campaignStepId);
+
+result.string(campaignStepName);
\ No newline at end of file
diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
index f064d610834..6d5b796d84c 100644
--- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
+++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
@@ -3828,12 +3828,6 @@
     <entry>
       <key>New step</key>
     </entry>
-    <entry>
-      <key>e</key>
-    </entry>
-    <entry>
-      <key>huhu</key>
-    </entry>
     <entry>
       <key>Runtime</key>
     </entry>
@@ -3858,6 +3852,12 @@
     <entry>
       <key>Per participant</key>
     </entry>
+    <entry>
+      <key>Runtime</key>
+    </entry>
+    <entry>
+      <key>Predecessor</key>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
   <sqlModels>
diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
index 078d4602b95..281a90591cb 100644
--- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
+++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
@@ -4792,12 +4792,6 @@
       <key>Runtime</key>
       <value>Laufzeit</value>
     </entry>
-    <entry>
-      <key>e</key>
-    </entry>
-    <entry>
-      <key>huhu</key>
-    </entry>
     <entry>
       <key>Street</key>
     </entry>
@@ -4819,6 +4813,10 @@
       <key>Per participant</key>
       <value>Pro Teilnehmer</value>
     </entry>
+    <entry>
+      <key>Predecessor</key>
+      <value>Vorgänger</value>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
 </language>
diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
index 05c625c5850..c915317edd3 100644
--- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
+++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
@@ -3909,6 +3909,9 @@
     <entry>
       <key>Per participant</key>
     </entry>
+    <entry>
+      <key>Predecessor</key>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
 </language>
diff --git a/neonView/CampaignStepEdit_view/CampaignStepEdit_view.aod b/neonView/CampaignStepEdit_view/CampaignStepEdit_view.aod
index 7c5c1ed02a3..cbaf32680bb 100644
--- a/neonView/CampaignStepEdit_view/CampaignStepEdit_view.aod
+++ b/neonView/CampaignStepEdit_view/CampaignStepEdit_view.aod
@@ -44,6 +44,10 @@
           <name>981cf207-6e9b-428e-bd81-0d76b4b2f180</name>
           <entityField>DESCRIPTION</entityField>
         </entityFieldLink>
+        <entityFieldLink>
+          <name>568fd355-f13f-4b40-801e-614790091fc5</name>
+          <entityField>PREDECESSORSTEP_ID</entityField>
+        </entityFieldLink>
       </fields>
     </genericViewTemplate>
   </children>
diff --git a/neonView/CampaignStepPreview_view/CampaignStepPreview_view.aod b/neonView/CampaignStepPreview_view/CampaignStepPreview_view.aod
index 1412f14a597..d08ef3dfc47 100644
--- a/neonView/CampaignStepPreview_view/CampaignStepPreview_view.aod
+++ b/neonView/CampaignStepPreview_view/CampaignStepPreview_view.aod
@@ -36,6 +36,16 @@
         </entityFieldLink>
       </fields>
     </genericViewTemplate>
+    <genericViewTemplate>
+      <name>Predecessor</name>
+      <entityField>#ENTITY</entityField>
+      <fields>
+        <entityFieldLink>
+          <name>c5c7eff5-da6d-4664-9bdc-1cae9dcec461</name>
+          <entityField>PREDECESSORSTEP_ID</entityField>
+        </entityFieldLink>
+      </fields>
+    </genericViewTemplate>
     <genericViewTemplate>
       <name>CampaignId</name>
       <entityField>#ENTITY</entityField>
diff --git a/neonView/CampaignStepsGantt_view/CampaignStepsGantt_view.aod b/neonView/CampaignStepsGantt_view/CampaignStepsGantt_view.aod
index d1aca8f45ec..ab23a36c853 100644
--- a/neonView/CampaignStepsGantt_view/CampaignStepsGantt_view.aod
+++ b/neonView/CampaignStepsGantt_view/CampaignStepsGantt_view.aod
@@ -15,6 +15,8 @@
       <titleField>NAME</titleField>
       <descriptionField>DESCRIPTION</descriptionField>
       <uidField>CAMPAIGNSTEPID</uidField>
+      <stepPredecessorIdField>PREDECESSORSTEP_ID</stepPredecessorIdField>
+      <groupedProjectIdField>CAMPAIGN_ID</groupedProjectIdField>
       <entityField>#ENTITY</entityField>
       <title></title>
     </ganttViewTemplate>
-- 
GitLab