From f9d1998cb25b64146203f3d02777608d24c12f91 Mon Sep 17 00:00:00 2001 From: "j.goderbauer" <j.goderbauer@adito.de> Date: Mon, 11 Feb 2019 15:30:25 +0100 Subject: [PATCH] =?UTF-8?q?[Projekt:=20Entwicklung=20-=20Neon][TicketNr.:?= =?UTF-8?q?=201032312][Keywords=20f=C3=BCr=20bestehende=20Module=20anlegen?= =?UTF-8?q?]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- entity/Keyword_entity/Keyword_entity.aod | 12 ++++++ entity/Task_entity/Task_entity.aod | 42 ++++++++++++++++++- .../children/containername_param/code.js | 4 ++ .../children/containername_param/code.js | 4 ++ .../status/possibleItemsProcess.js | 7 ---- .../entityfields/type/possibleItemsProcess.js | 7 ---- .../status.displayvalue/expression.js | 5 +++ .../type.displayvalue/expression.js | 5 +++ .../data_alias/data/example_task/base.xml | 6 +-- .../data_alias/struct/create_task.xml | 4 +- process/Keyword_lib/process.js | 21 +--------- 11 files changed, 77 insertions(+), 40 deletions(-) create mode 100644 entity/Task_entity/entityfields/keywordstates/children/containername_param/code.js create mode 100644 entity/Task_entity/entityfields/keywordtypes/children/containername_param/code.js delete mode 100644 entity/Task_entity/entityfields/status/possibleItemsProcess.js delete mode 100644 entity/Task_entity/entityfields/type/possibleItemsProcess.js create mode 100644 entity/Task_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js create mode 100644 entity/Task_entity/recordcontainers/db/recordfieldmappings/type.displayvalue/expression.js diff --git a/entity/Keyword_entity/Keyword_entity.aod b/entity/Keyword_entity/Keyword_entity.aod index 681c0b77df..afc39b04e7 100644 --- a/entity/Keyword_entity/Keyword_entity.aod +++ b/entity/Keyword_entity/Keyword_entity.aod @@ -160,6 +160,18 @@ <fieldName>KeywordGenders</fieldName> <isConsumer v="false" /> </entityDependency> + <entityDependency> + <name>001e0934-0920-4b38-afff-caf299e96abf</name> + <entityName>Task_entity</entityName> + <fieldName>KeywordTypes</fieldName> + <isConsumer v="false" /> + </entityDependency> + <entityDependency> + <name>8d28f08b-675d-4bcf-9318-a508d45ca69e</name> + <entityName>Task_entity</entityName> + <fieldName>KeywordStates</fieldName> + <isConsumer v="false" /> + </entityDependency> </dependencies> <children> <entityParameter> diff --git a/entity/Task_entity/Task_entity.aod b/entity/Task_entity/Task_entity.aod index a2069a8026..0e739e2eda 100644 --- a/entity/Task_entity/Task_entity.aod +++ b/entity/Task_entity/Task_entity.aod @@ -30,8 +30,8 @@ <entityField> <name>STATUS</name> <title>{$TASK_STATUS}</title> + <consumer>KeywordStates</consumer> <mandatory v="true" /> - <possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/status/possibleItemsProcess.js</possibleItemsProcess> <groupable v="true" /> <valueProcess>%aditoprj%/entity/Task_entity/entityfields/status/valueProcess.js</valueProcess> </entityField> @@ -76,7 +76,7 @@ <entityField> <name>TYPE</name> <title>type</title> - <possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/type/possibleItemsProcess.js</possibleItemsProcess> + <consumer>KeywordTypes</consumer> <groupable v="true" /> </entityField> <entityField> @@ -140,6 +140,36 @@ </entityParameter> </children> </entityConsumer> + <entityConsumer> + <name>KeywordStates</name> + <fieldType>DEPENDENCY_OUT</fieldType> + <dependency> + <name>dependency</name> + <entityName>Keyword_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>containerName_param</name> + <code>%aditoprj%/entity/Task_entity/entityfields/keywordstates/children/containername_param/code.js</code> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>KeywordTypes</name> + <fieldType>DEPENDENCY_OUT</fieldType> + <dependency> + <name>dependency</name> + <entityName>Keyword_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>containerName_param</name> + <code>%aditoprj%/entity/Task_entity/entityfields/keywordtypes/children/containername_param/code.js</code> + </entityParameter> + </children> + </entityConsumer> </entityFields> <recordContainers> <dbRecordContainer> @@ -212,6 +242,14 @@ <name>REQUESTOR_RELATION_ID.displayValue</name> <expression>%aditoprj%/entity/Task_entity/recordcontainers/db/recordfieldmappings/requestor_relation_id.displayvalue/expression.js</expression> </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>TYPE.displayValue</name> + <expression>%aditoprj%/entity/Task_entity/recordcontainers/db/recordfieldmappings/type.displayvalue/expression.js</expression> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>STATUS.displayValue</name> + <expression>%aditoprj%/entity/Task_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js</expression> + </dbRecordFieldMapping> </recordFieldMappings> </dbRecordContainer> </recordContainers> diff --git a/entity/Task_entity/entityfields/keywordstates/children/containername_param/code.js b/entity/Task_entity/entityfields/keywordstates/children/containername_param/code.js new file mode 100644 index 0000000000..580aeb3de0 --- /dev/null +++ b/entity/Task_entity/entityfields/keywordstates/children/containername_param/code.js @@ -0,0 +1,4 @@ +import("system.result"); +import("Keyword_lib"); + +result.string($KeywordRegistry.get.TaskStatus); \ No newline at end of file diff --git a/entity/Task_entity/entityfields/keywordtypes/children/containername_param/code.js b/entity/Task_entity/entityfields/keywordtypes/children/containername_param/code.js new file mode 100644 index 0000000000..45a01452c0 --- /dev/null +++ b/entity/Task_entity/entityfields/keywordtypes/children/containername_param/code.js @@ -0,0 +1,4 @@ +import("system.result"); +import("Keyword_lib"); + +result.string($KeywordRegistry.get.TaskType); \ No newline at end of file diff --git a/entity/Task_entity/entityfields/status/possibleItemsProcess.js b/entity/Task_entity/entityfields/status/possibleItemsProcess.js deleted file mode 100644 index c954aedab3..0000000000 --- a/entity/Task_entity/entityfields/status/possibleItemsProcess.js +++ /dev/null @@ -1,7 +0,0 @@ -import("system.result"); -import("Keyword_lib"); - -var items; - -items = KeywordUtils.getStandardArray("TASK.STATUS"); -result.object(items); \ No newline at end of file diff --git a/entity/Task_entity/entityfields/type/possibleItemsProcess.js b/entity/Task_entity/entityfields/type/possibleItemsProcess.js deleted file mode 100644 index ff1398053b..0000000000 --- a/entity/Task_entity/entityfields/type/possibleItemsProcess.js +++ /dev/null @@ -1,7 +0,0 @@ -import("system.result"); -import("Keyword_lib"); - -var items; - -items = KeywordUtils.getStandardArray("TASK.TYPE"); -result.object(items); \ No newline at end of file diff --git a/entity/Task_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js b/entity/Task_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js new file mode 100644 index 0000000000..4af15e0ec6 --- /dev/null +++ b/entity/Task_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js @@ -0,0 +1,5 @@ +import("system.result"); +import("Keyword_lib"); + +var sql = KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.get.TaskStatus, "TASK.STATUS"); +result.string(sql); diff --git a/entity/Task_entity/recordcontainers/db/recordfieldmappings/type.displayvalue/expression.js b/entity/Task_entity/recordcontainers/db/recordfieldmappings/type.displayvalue/expression.js new file mode 100644 index 0000000000..a0b8bddfdc --- /dev/null +++ b/entity/Task_entity/recordcontainers/db/recordfieldmappings/type.displayvalue/expression.js @@ -0,0 +1,5 @@ +import("system.result"); +import("Keyword_lib"); + +var sql = KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.get.TaskType, "TASK.TYPE"); +result.string(sql); diff --git a/others/db_changes/data_alias/data/example_task/base.xml b/others/db_changes/data_alias/data/example_task/base.xml index d87f6b06ef..e52129586b 100644 --- a/others/db_changes/data_alias/data/example_task/base.xml +++ b/others/db_changes/data_alias/data/example_task/base.xml @@ -10,7 +10,7 @@ <column name="CODE" valueNumeric="10000"/> <column name="SUBJECT" value="effiziente Wertschöpfungsketten bündeln und anlaysieren"/> - <column name="STATUS" valueNumeric="1"/> + <column name="STATUS" value="b1fd456f-f5d2-459e-b467-76e2914c8169"/> <column name="PRIORITY" valueNumeric="2"/> <column name="PROTECTIONLEVEL" valueNumeric="0"/> <column name="START_DATE" valueDate="2019-01-20T14:00:00"/> @@ -31,7 +31,7 @@ <column name="CODE" valueNumeric="10001"/> <column name="SUBJECT" value="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."/> - <column name="STATUS" valueNumeric="2"/> + <column name="STATUS" value="00595a73-22e2-4c3b-a21c-06bdec262d20"/> <column name="PRIORITY" valueNumeric="1"/> <column name="PROTECTIONLEVEL" valueNumeric="1"/> <column name="START_DATE" valueDate="2019-01-20T11:30:00"/> @@ -52,7 +52,7 @@ <column name="CODE" valueNumeric="10002"/> <column name="SUBJECT" value="Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris"/> - <column name="STATUS" valueNumeric="1"/> + <column name="STATUS" value="b1fd456f-f5d2-459e-b467-76e2914c8169"/> <column name="PRIORITY" valueNumeric="3"/> <column name="PROTECTIONLEVEL" valueNumeric="0"/> <column name="START_DATE" valueDate="2019-01-09T08:00:00"/> diff --git a/others/db_changes/data_alias/struct/create_task.xml b/others/db_changes/data_alias/struct/create_task.xml index b28b6c8c05..4d10c0757c 100644 --- a/others/db_changes/data_alias/struct/create_task.xml +++ b/others/db_changes/data_alias/struct/create_task.xml @@ -10,13 +10,13 @@ <constraints nullable="false" unique="true"/> </column> <column name="SUBJECT" type="NVARCHAR(254)"/> - <column name="STATUS" type="SMALLINT"/> + <column name="STATUS" type="CHAR(36)"/> <column name="PRIORITY" type="SMALLINT"/> <column name="REQUESTOR_RELATION_ID" type="CHAR(36)"/> <column name="EDITOR_RELATION_ID" type="CHAR(36)"/> <column name="START_DATE" type="TIMESTAMP"/> <column name="MATURITY_DATE" type="TIMESTAMP"/> - <column name="TYPE" type="SMALLINT"/> + <column name="TYPE" type="CHAR(36)"/> <column name="DESCRIPTION" type="NCLOB"/> <column name="PROTECTIONLEVEL" type="SMALLINT"/> </createTable> diff --git a/process/Keyword_lib/process.js b/process/Keyword_lib/process.js index 16957a4f17..b8492b5071 100644 --- a/process/Keyword_lib/process.js +++ b/process/Keyword_lib/process.js @@ -30,6 +30,8 @@ $KeywordRegistry.get = { OfferStatus: "OfferStatus", OrganisationType: "OrganisationType", PersonGender: "PersonGender", + TaskStatus: "TaskStatus", + TaskType: "TaskType", "null": null }; @@ -422,25 +424,6 @@ KeywordUtils.getResolvedTitleSqlPart = function(pContainerName, pDbFieldName, pL ,_createKeywordEntry("3", translate.text("{$TASK_PRIORITY_HIGH}", locale), null, {defaultAvatarRepresentation: "VAADIN:EXCLAMATION"}) ]); break; - case "TASK.TYPE": - //even this keyword may look like the same as the "ACTIVITY.CATEGORY" keyword: - //these are *not* categories since task-categories are reservated for future implementation - //the TASK.TYPE is more like an type of source for example - valueContainer = _createKeywordEntriesContainer([ - _createKeywordEntry("0", translate.text("Visit", locale)) - ,_createKeywordEntry("1", translate.text("E-Mail", locale)) - ,_createKeywordEntry("2", translate.text("Phone", locale)) - ,_createKeywordEntry("3", translate.text("Online-Meeting", locale)) - ]); - break; - case "TASK.STATUS": - valueContainer = _createKeywordEntriesContainer([ - _createKeywordEntry("0", translate.text("new", locale)) - ,_createKeywordEntry("1", translate.text("in process", locale)) - ,_createKeywordEntry("2", translate.text("waiting", locale)) - ,_createKeywordEntry("3", translate.text("ended", locale)) - ]); - break; default: throw new Error(translate.withArguments("[%0]the given keyword \"%1\" has no match with the possible keywordlist", [ arguments.callee.name, keywordType -- GitLab