From 65ba26c8e951d1768e46ecbcfa23f3e60eee7ee0 Mon Sep 17 00:00:00 2001 From: dsg03695 <dsg03695@N170.hama.de> Date: Fri, 16 Oct 2020 13:33:18 +0200 Subject: [PATCH] Ticket #1066036: DATE_EDIT, DATE_NEW, USER_NEW, USER_EDIT added to DistrictContact, views were adapted, 'Reviewed' state were disabled during the manual process, and correct connections were created via consumer/provider --- .../alter_districtContact_1066036.xml | 13 +++++ .../basic/2020.2.0/Districts/changelog.xml | 1 + aliasDefinition/Data_alias/Data_alias.aod | 56 +++++++++++++++++++ .../DistrictContact_entity.aod | 25 +++++---- .../excludedcontactids_param/valueProcess.js | 8 --- .../valueProcess.js | 10 ++++ .../status/displayValueProcess.js | 11 ---- .../status.displayvalue/expression.js | 6 ++ .../DistrictResponsible_entity.aod | 6 ++ .../Organisation_entity.aod | 6 ++ entity/Person_entity/Person_entity.aod | 12 ---- .../DistrictResponsible.aod | 5 ++ .../DistrictContactFilter_view.aod | 4 ++ .../DistrictResponsibleLookup_view.aod | 30 ++++++++++ process/KeywordRegistry_basic/process.js | 1 + 15 files changed, 151 insertions(+), 43 deletions(-) create mode 100644 .liquibase/Data_alias/basic/2020.2.0/Districts/alter_districtContact_1066036.xml delete mode 100644 entity/DistrictContact_entity/entityfields/advisers/children/excludedcontactids_param/valueProcess.js create mode 100644 entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js delete mode 100644 entity/DistrictContact_entity/entityfields/status/displayValueProcess.js create mode 100644 entity/DistrictContact_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js create mode 100644 neonView/DistrictResponsibleLookup_view/DistrictResponsibleLookup_view.aod diff --git a/.liquibase/Data_alias/basic/2020.2.0/Districts/alter_districtContact_1066036.xml b/.liquibase/Data_alias/basic/2020.2.0/Districts/alter_districtContact_1066036.xml new file mode 100644 index 0000000000..b389c64e72 --- /dev/null +++ b/.liquibase/Data_alias/basic/2020.2.0/Districts/alter_districtContact_1066036.xml @@ -0,0 +1,13 @@ +<?xml version="1.1" encoding="UTF-8" standalone="no"?> +<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd"> + <changeSet author="Pierre Suchacek" id="9aace074-1b61-4577-ad27-bee6a498134c"> + <addColumn tableName="DISTRICTCONTACT"> + <column name="USER_NEW" type="NVARCHAR(50)" /> + <column name="USER_EDIT" type="NVARCHAR(50)" /> + <column name="DATE_NEW" type="DATETIME" /> + <column name="DATE_EDIT" type="DATETIME" /> + </addColumn> + </changeSet> +</databaseChangeLog> \ No newline at end of file diff --git a/.liquibase/Data_alias/basic/2020.2.0/Districts/changelog.xml b/.liquibase/Data_alias/basic/2020.2.0/Districts/changelog.xml index d8ccdd4c8a..76bc7b7962 100644 --- a/.liquibase/Data_alias/basic/2020.2.0/Districts/changelog.xml +++ b/.liquibase/Data_alias/basic/2020.2.0/Districts/changelog.xml @@ -11,4 +11,5 @@ <include relativeToChangelogFile="true" file="insert_KeywordsAdviserRoles.xml"/> <include relativeToChangelogFile="true" file="update_ContactResponsible_consistent.xml"/> <include relativeToChangelogFile="true" file="alter_district_1066187.xml"/> + <include relativeToChangelogFile="true" file="alter_districtContact_1066036.xml"/> </databaseChangeLog> diff --git a/aliasDefinition/Data_alias/Data_alias.aod b/aliasDefinition/Data_alias/Data_alias.aod index 0673fab665..b9c1f90e12 100644 --- a/aliasDefinition/Data_alias/Data_alias.aod +++ b/aliasDefinition/Data_alias/Data_alias.aod @@ -15924,6 +15924,62 @@ <title></title> <description></description> </entityFieldDb> + <entityFieldDb> + <name>DATE_EDIT</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="93" /> + <size v="19" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>USER_EDIT</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="12" /> + <size v="50" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>DATE_NEW</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="93" /> + <size v="19" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>USER_NEW</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="12" /> + <size v="50" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> </entityFields> </entityDb> </entities> diff --git a/entity/DistrictContact_entity/DistrictContact_entity.aod b/entity/DistrictContact_entity/DistrictContact_entity.aod index 0a8b606d3e..477c91f73a 100644 --- a/entity/DistrictContact_entity/DistrictContact_entity.aod +++ b/entity/DistrictContact_entity/DistrictContact_entity.aod @@ -26,7 +26,7 @@ </entityProvider> <entityField> <name>CONTACT_ID</name> - <title>Contact</title> + <title>Company</title> <consumer>Persons</consumer> <groupable v="true" /> <linkedContext>Person</linkedContext> @@ -62,7 +62,6 @@ <consumer>KeywordContactStates</consumer> <groupable v="true" /> <valueProcess>%aditoprj%/entity/DistrictContact_entity/entityfields/status/valueProcess.js</valueProcess> - <displayValueProcess>%aditoprj%/entity/DistrictContact_entity/entityfields/status/displayValueProcess.js</displayValueProcess> </entityField> <entityField> <name>VALID_FROM</name> @@ -102,6 +101,10 @@ <name>ContainerName_param</name> <valueProcess>%aditoprj%/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/containername_param/valueProcess.js</valueProcess> </entityParameter> + <entityParameter> + <name>ExcludedKeyIdsSubquery_param</name> + <valueProcess>%aditoprj%/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js</valueProcess> + </entityParameter> </children> </entityConsumer> <entityConsumer> @@ -136,8 +139,8 @@ <name>Persons</name> <dependency> <name>dependency</name> - <entityName>Person_entity</entityName> - <fieldName>Contacts</fieldName> + <entityName>Organisation_entity</entityName> + <fieldName>Organisations</fieldName> </dependency> <children> <entityParameter> @@ -150,15 +153,9 @@ <name>Advisers</name> <dependency> <name>dependency</name> - <entityName>Person_entity</entityName> - <fieldName>Contacts</fieldName> + <entityName>DistrictResponsible_entity</entityName> + <fieldName>DistrictResponsibles</fieldName> </dependency> - <children> - <entityParameter> - <name>ExcludedContactIds_param</name> - <valueProcess>%aditoprj%/entity/DistrictContact_entity/entityfields/advisers/children/excludedcontactids_param/valueProcess.js</valueProcess> - </entityParameter> - </children> </entityConsumer> <entityConsumer> <name>Districts</name> @@ -258,6 +255,10 @@ <name>DISTRICT_ID.displayValue</name> <expression>%aditoprj%/entity/DistrictContact_entity/recordcontainers/db/recordfieldmappings/district_id.displayvalue/expression.js</expression> </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>STATUS.displayValue</name> + <expression>%aditoprj%/entity/DistrictContact_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js</expression> + </dbRecordFieldMapping> </recordFieldMappings> </dbRecordContainer> </recordContainers> diff --git a/entity/DistrictContact_entity/entityfields/advisers/children/excludedcontactids_param/valueProcess.js b/entity/DistrictContact_entity/entityfields/advisers/children/excludedcontactids_param/valueProcess.js deleted file mode 100644 index aab936bb3b..0000000000 --- a/entity/DistrictContact_entity/entityfields/advisers/children/excludedcontactids_param/valueProcess.js +++ /dev/null @@ -1,8 +0,0 @@ -//import("system.result"); -//import("system.db"); -//import("Sql_lib"); -// -//result.object(newSelect("ADVISER_CONTACT_ID") -// .from("DISTRICTCONTACT") -// .where("DISTRICTCONTACT.DISTRICT_ID", "$field.DISTRICT_ID") -// .arrayColumn(true)); \ No newline at end of file diff --git a/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js b/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js new file mode 100644 index 0000000000..105fc4cc77 --- /dev/null +++ b/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js @@ -0,0 +1,10 @@ +import("system.result"); +import("KeywordRegistry_basic"); +import("Sql_lib"); + +var cond = newSelect("AB_KEYWORD_ENTRY.KEYID") +.from("AB_KEYWORD_ENTRY") +.where("AB_KEYWORD_ENTRY.CONTAINER", $KeywordRegistry.contactStatus()) +.and("AB_KEYWORD_ENTRY.KEYID", $KeywordRegistry.contactStatus$reviewed(), SqlBuilder.LIKE()); + +result.string(cond.toString()); \ No newline at end of file diff --git a/entity/DistrictContact_entity/entityfields/status/displayValueProcess.js b/entity/DistrictContact_entity/entityfields/status/displayValueProcess.js deleted file mode 100644 index f2373da2bb..0000000000 --- a/entity/DistrictContact_entity/entityfields/status/displayValueProcess.js +++ /dev/null @@ -1,11 +0,0 @@ -import("system.result"); -import("system.vars"); -import("KeywordRegistry_basic"); -import("Keyword_lib"); - -var key = vars.get("$field.STATUS"); -if (key) -{ - var res = KeywordUtils.getViewValue($KeywordRegistry.contactStatus(), key); - result.string(res); -} \ No newline at end of file diff --git a/entity/DistrictContact_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js b/entity/DistrictContact_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js new file mode 100644 index 0000000000..22b1e68d72 --- /dev/null +++ b/entity/DistrictContact_entity/recordcontainers/db/recordfieldmappings/status.displayvalue/expression.js @@ -0,0 +1,6 @@ +import("KeywordRegistry_basic"); +import("system.result"); +import("Keyword_lib"); + +var sql = KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.contactStatus(), "DISTRICTCONTACT.STATUS"); +result.string(sql); \ No newline at end of file diff --git a/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod b/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod index 2b2c789377..747c218d53 100644 --- a/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod +++ b/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod @@ -68,6 +68,12 @@ <fieldName>DistrictResponsibleUIDs</fieldName> <isConsumer v="false" /> </entityDependency> + <entityDependency> + <name>7c71a3ee-2b48-4d21-ae66-b53b9a1ff28c</name> + <entityName>DistrictContact_entity</entityName> + <fieldName>Advisers</fieldName> + <isConsumer v="false" /> + </entityDependency> </dependencies> <children> <entityParameter> diff --git a/entity/Organisation_entity/Organisation_entity.aod b/entity/Organisation_entity/Organisation_entity.aod index 18afded566..472f0c52c5 100644 --- a/entity/Organisation_entity/Organisation_entity.aod +++ b/entity/Organisation_entity/Organisation_entity.aod @@ -151,6 +151,12 @@ <fieldName>Organisations</fieldName> <isConsumer v="false" /> </entityDependency> + <entityDependency> + <name>b64b29e6-59c5-4250-9bc7-b08c85976e7e</name> + <entityName>DistrictContact_entity</entityName> + <fieldName>Persons</fieldName> + <isConsumer v="false" /> + </entityDependency> </dependencies> <children> <entityParameter> diff --git a/entity/Person_entity/Person_entity.aod b/entity/Person_entity/Person_entity.aod index 1da8d17dc1..93b1185272 100644 --- a/entity/Person_entity/Person_entity.aod +++ b/entity/Person_entity/Person_entity.aod @@ -725,18 +725,6 @@ <fieldName>Persons</fieldName> <isConsumer v="false" /> </entityDependency> - <entityDependency> - <name>46a8c52b-ffa4-4ff4-8fff-73f951e9e1aa</name> - <entityName>DistrictContact_entity</entityName> - <fieldName>Persons</fieldName> - <isConsumer v="false" /> - </entityDependency> - <entityDependency> - <name>bb94fe7a-09d0-4809-aeaf-b06e1eff82af</name> - <entityName>DistrictContact_entity</entityName> - <fieldName>Advisers</fieldName> - <isConsumer v="false" /> - </entityDependency> </dependencies> <children> <entityParameter> diff --git a/neonContext/DistrictResponsible/DistrictResponsible.aod b/neonContext/DistrictResponsible/DistrictResponsible.aod index ac58a2451f..1a7fdf7c9c 100644 --- a/neonContext/DistrictResponsible/DistrictResponsible.aod +++ b/neonContext/DistrictResponsible/DistrictResponsible.aod @@ -7,6 +7,7 @@ <filterView>DistrictResponsibleFilter_view</filterView> <editView>DistrictResponsibleEdit_view</editView> <previewView>DistrictResponsiblePreviewList_view</previewView> + <lookupView>DistrictResponsibleLookup_view</lookupView> <devices> <element>MOBILE</element> <element>TABLET</element> @@ -34,5 +35,9 @@ <name>bf0655aa-60e7-47b8-a3e7-eb7ba8b37cac</name> <view>DistrictResponsibleEdit_view</view> </neonViewReference> + <neonViewReference> + <name>30960bbf-184a-4e4e-8058-983d4c150d89</name> + <view>DistrictResponsibleLookup_view</view> + </neonViewReference> </references> </neonContext> diff --git a/neonView/DistrictContactFilter_view/DistrictContactFilter_view.aod b/neonView/DistrictContactFilter_view/DistrictContactFilter_view.aod index 6d7fac9514..681c4fb4db 100644 --- a/neonView/DistrictContactFilter_view/DistrictContactFilter_view.aod +++ b/neonView/DistrictContactFilter_view/DistrictContactFilter_view.aod @@ -21,6 +21,10 @@ <name>b2b3fd8c-2d93-4059-b4e4-24ca24874018</name> <entityField>CONTACT_ID</entityField> </neonTableColumn> + <neonTableColumn> + <name>a5b6ac69-712c-45e1-97ff-cf1101da4b95</name> + <entityField>ADVISER_CONTACT_ID</entityField> + </neonTableColumn> <neonTableColumn> <name>06c6fc84-5025-4bb2-906a-3de1bbeafbdd</name> <entityField>ADVISER_ROLE</entityField> diff --git a/neonView/DistrictResponsibleLookup_view/DistrictResponsibleLookup_view.aod b/neonView/DistrictResponsibleLookup_view/DistrictResponsibleLookup_view.aod new file mode 100644 index 0000000000..20ab3ef6c6 --- /dev/null +++ b/neonView/DistrictResponsibleLookup_view/DistrictResponsibleLookup_view.aod @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.6" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.6"> + <name>DistrictResponsibleLookup_view</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <noneLayout> + <name>layout</name> + </noneLayout> + </layout> + <children> + <tableViewTemplate> + <name>ResponsibleLookup</name> + <entityField>#ENTITY</entityField> + <columns> + <neonTableColumn> + <name>b1180c08-6e1f-459f-868f-2842d034806f</name> + <entityField>#ICON</entityField> + </neonTableColumn> + <neonTableColumn> + <name>e5b2fbc0-174d-4d0e-88d1-a798e65cd773</name> + <entityField>EMPLOYEE_CONTACT_ID</entityField> + </neonTableColumn> + <neonTableColumn> + <name>db77b7a3-80bf-4dc7-9691-8d6aa7422756</name> + <entityField>ADVISER_ROLE</entityField> + </neonTableColumn> + </columns> + </tableViewTemplate> + </children> +</neonView> diff --git a/process/KeywordRegistry_basic/process.js b/process/KeywordRegistry_basic/process.js index ba80197cd0..f0f7bc74dc 100644 --- a/process/KeywordRegistry_basic/process.js +++ b/process/KeywordRegistry_basic/process.js @@ -41,6 +41,7 @@ $KeywordRegistry.activityDirection$internal = function(){return "x";}; $KeywordRegistry.contactStatus = function(){return "ContactStatus";}; $KeywordRegistry.contactStatus$active = function(){return "CONTACTSTATACTIVE";}; $KeywordRegistry.contactStatus$inactive = function(){return "CONTACTSTATINACTIVE";}; +$KeywordRegistry.contactStatus$reviewed = function(){return "CONTACTSTATREVIEW";}; $KeywordRegistry.currency = function(){return "Currency";}; $KeywordRegistry.currency$eur = function(){return "EUR";}; -- GitLab