From 76c06585c4ca41006cc07b13c3cfb7cea6954b79 Mon Sep 17 00:00:00 2001 From: Daniel Tran <d.tran@adito.de> Date: Fri, 2 Oct 2020 06:22:52 +0000 Subject: [PATCH] #1058762: Display district responsibles in PersonMain_view. --- .../DistrictResponsible_entity.aod | 7 +++++++ .../iconIdProcess.js | 5 +++++ .../expression.js | 10 ++-------- entity/Person_entity/Person_entity.aod | 16 ++++++++++++++++ .../children/orguid_param/valueProcess.js | 8 ++++++++ .../districtresponsibles/stateProcess.js | 9 +++++++++ language/_____LANGUAGE_de/_____LANGUAGE_de.aod | 2 +- neonContext/Organisation/Organisation.aod | 4 ---- .../DistrictResponsibleList_view.aod | 5 +++++ .../OrganisationDistrictResponsibles_view.aod | 18 ------------------ .../OrganisationMain_view.aod | 10 +++++----- neonView/PersonMain_view/PersonMain_view.aod | 5 +++++ 12 files changed, 63 insertions(+), 36 deletions(-) create mode 100644 entity/DistrictResponsible_entity/iconIdProcess.js create mode 100644 entity/Person_entity/entityfields/districtresponsibles/children/orguid_param/valueProcess.js create mode 100644 entity/Person_entity/entityfields/districtresponsibles/stateProcess.js delete mode 100644 neonView/OrganisationDistrictResponsibles_view/OrganisationDistrictResponsibles_view.aod diff --git a/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod b/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod index 539afbb9ac..cc4783ab5b 100644 --- a/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod +++ b/entity/DistrictResponsible_entity/DistrictResponsible_entity.aod @@ -6,6 +6,7 @@ <icon>VAADIN:GLOBE</icon> <title>District Responsible</title> <contentTitleProcess>%aditoprj%/entity/DistrictResponsible_entity/contentTitleProcess.js</contentTitleProcess> + <iconIdProcess>%aditoprj%/entity/DistrictResponsible_entity/iconIdProcess.js</iconIdProcess> <image>VAADIN:GLOBE</image> <recordContainer>db</recordContainer> <entityFields> @@ -164,6 +165,12 @@ <fieldName>DistrictResponsibles</fieldName> <isConsumer v="false" /> </entityDependency> + <entityDependency> + <name>2b3318a3-4925-4aa8-bf6e-bc5489549327</name> + <entityName>Person_entity</entityName> + <fieldName>DistrictResponsibles</fieldName> + <isConsumer v="false" /> + </entityDependency> </dependencies> <children> <entityParameter> diff --git a/entity/DistrictResponsible_entity/iconIdProcess.js b/entity/DistrictResponsible_entity/iconIdProcess.js new file mode 100644 index 0000000000..b60b52f93c --- /dev/null +++ b/entity/DistrictResponsible_entity/iconIdProcess.js @@ -0,0 +1,5 @@ +import("system.vars"); +import("system.result"); + +var res = "TEXT:" + vars.get("$field.EMPLOYEE_CONTACT_ID.displayValue"); +result.string(res); \ No newline at end of file diff --git a/entity/DistrictResponsible_entity/recordcontainers/db/recordfieldmappings/employee_contact_id.displayvalue/expression.js b/entity/DistrictResponsible_entity/recordcontainers/db/recordfieldmappings/employee_contact_id.displayvalue/expression.js index b00816d2ee..ea80128c82 100644 --- a/entity/DistrictResponsible_entity/recordcontainers/db/recordfieldmappings/employee_contact_id.displayvalue/expression.js +++ b/entity/DistrictResponsible_entity/recordcontainers/db/recordfieldmappings/employee_contact_id.displayvalue/expression.js @@ -1,11 +1,5 @@ -import("system.logging"); import("system.result"); import("Contact_lib"); -import("Sql_lib"); - -var contact = Contact.createWithColumnPreset(); -var renderer = new ContactTitleRenderer(contact, ContactTitleRenderer.OPTIONS.NoOption); -var selectExpression = renderer.asSql(); - -result.string(newSelect(selectExpression)); \ No newline at end of file +var res = ContactUtils.getResolvingDisplaySubSql("DISTRICTRESPONSIBLE.EMPLOYEE_CONTACT_ID", false); +result.string(res); \ No newline at end of file diff --git a/entity/Person_entity/Person_entity.aod b/entity/Person_entity/Person_entity.aod index 4bb81b013f..6ae187ece5 100644 --- a/entity/Person_entity/Person_entity.aod +++ b/entity/Person_entity/Person_entity.aod @@ -1365,6 +1365,22 @@ </entityParameter> </children> </entityProvider> + <entityConsumer> + <name>DistrictResponsibles</name> + <state>INVISIBLE</state> + <stateProcess>%aditoprj%/entity/Person_entity/entityfields/districtresponsibles/stateProcess.js</stateProcess> + <dependency> + <name>dependency</name> + <entityName>DistrictResponsible_entity</entityName> + <fieldName>OrganisationResponsibles</fieldName> + </dependency> + <children> + <entityParameter> + <name>OrgUid_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/districtresponsibles/children/orguid_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/Person_entity/entityfields/districtresponsibles/children/orguid_param/valueProcess.js b/entity/Person_entity/entityfields/districtresponsibles/children/orguid_param/valueProcess.js new file mode 100644 index 0000000000..9bae30ceb9 --- /dev/null +++ b/entity/Person_entity/entityfields/districtresponsibles/children/orguid_param/valueProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("system.vars"); + + +if (vars.exists("$field.ORGANISATION_CONTACTID") && vars.get("$field.ORGANISATION_CONTACTID")) +{ + result.string(vars.get("$field.ORGANISATION_CONTACTID")); +} \ No newline at end of file diff --git a/entity/Person_entity/entityfields/districtresponsibles/stateProcess.js b/entity/Person_entity/entityfields/districtresponsibles/stateProcess.js new file mode 100644 index 0000000000..6b51996c15 --- /dev/null +++ b/entity/Person_entity/entityfields/districtresponsibles/stateProcess.js @@ -0,0 +1,9 @@ +import("Employee_lib"); +import("system.result"); +import("system.vars"); +import("system.neon"); + +if (vars.get("$field.ORGANISATION_CONTACTID") && !EmployeeUtils.isUser(vars.get("$field.CONTACTID"))) +{ + result.string(neon.COMPONENTSTATE_EDITABLE); +} \ No newline at end of file diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index 5009df56c3..d275a96f0b 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -9304,7 +9304,7 @@ Bitte Datumseingabe prüfen</value> </entry> <entry> <key>District Responsible</key> - <value>Gebietsverantwortlicher</value> + <value>Gebietsverantwortliche</value> </entry> <entry> <key>Responsibles</key> diff --git a/neonContext/Organisation/Organisation.aod b/neonContext/Organisation/Organisation.aod index 46f4d763f7..87f1786ece 100644 --- a/neonContext/Organisation/Organisation.aod +++ b/neonContext/Organisation/Organisation.aod @@ -67,9 +67,5 @@ <name>0b052872-d6b4-41ac-ad0b-580575893e1b</name> <view>OrganisationLesserNoiseTable_view</view> </neonViewReference> - <neonViewReference> - <name>2193fe84-ff57-4382-8200-5d1d846f455c</name> - <view>OrganisationDistrictResponsibles_view</view> - </neonViewReference> </references> </neonContext> diff --git a/neonView/DistrictResponsibleList_view/DistrictResponsibleList_view.aod b/neonView/DistrictResponsibleList_view/DistrictResponsibleList_view.aod index 2d6c800894..cab52b315c 100644 --- a/neonView/DistrictResponsibleList_view/DistrictResponsibleList_view.aod +++ b/neonView/DistrictResponsibleList_view/DistrictResponsibleList_view.aod @@ -20,7 +20,12 @@ <isCreatable v="false" /> <isDeletable v="false" /> <isEditable v="false" /> + <title>Responsibles</title> <columns> + <neonTableColumn> + <name>785ec0b8-e71d-4766-a03e-f125a465aa58</name> + <entityField>#ICON</entityField> + </neonTableColumn> <neonTableColumn> <name>158f589a-497f-4522-9b43-d7a6155c6818</name> <entityField>DISTRICT_ID</entityField> diff --git a/neonView/OrganisationDistrictResponsibles_view/OrganisationDistrictResponsibles_view.aod b/neonView/OrganisationDistrictResponsibles_view/OrganisationDistrictResponsibles_view.aod deleted file mode 100644 index ab57158edf..0000000000 --- a/neonView/OrganisationDistrictResponsibles_view/OrganisationDistrictResponsibles_view.aod +++ /dev/null @@ -1,18 +0,0 @@ -<?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>OrganisationDistrictResponsibles_view</name> - <title>Responsibles</title> - <majorModelMode>DISTRIBUTED</majorModelMode> - <layout> - <noneLayout> - <name>layout</name> - </noneLayout> - </layout> - <children> - <neonViewReference> - <name>a698babd-271c-4f21-94f7-391f4ad80877</name> - <entityField>DistrictResponsibles</entityField> - <view>DistrictResponsibleList_view</view> - </neonViewReference> - </children> -</neonView> diff --git a/neonView/OrganisationMain_view/OrganisationMain_view.aod b/neonView/OrganisationMain_view/OrganisationMain_view.aod index f02268bc9b..df9be823df 100644 --- a/neonView/OrganisationMain_view/OrganisationMain_view.aod +++ b/neonView/OrganisationMain_view/OrganisationMain_view.aod @@ -55,16 +55,16 @@ <entityField>#ENTITY</entityField> <view>OrganisationAttributeRestriction_view</view> </neonViewReference> + <neonViewReference> + <name>a806bf0f-6214-4aad-872b-74e6f7fd1ee5</name> + <entityField>DistrictResponsibles</entityField> + <view>DistrictResponsibleList_view</view> + </neonViewReference> <neonViewReference> <name>eba90ed2-5e55-4cdb-9e0b-5a09feeb7536</name> <entityField>Documents</entityField> <view>DocumentFilter_view</view> </neonViewReference> - <neonViewReference> - <name>db26269b-32ae-47da-ba22-41e0a5952103</name> - <entityField>#ENTITY</entityField> - <view>OrganisationDistrictResponsibles_view</view> - </neonViewReference> <neonViewReference> <name>0686ad7e-8dc7-4b10-9df2-bf066ae3a310</name> <entityField>LogHistories</entityField> diff --git a/neonView/PersonMain_view/PersonMain_view.aod b/neonView/PersonMain_view/PersonMain_view.aod index 4cc0562f16..7e88568ac7 100644 --- a/neonView/PersonMain_view/PersonMain_view.aod +++ b/neonView/PersonMain_view/PersonMain_view.aod @@ -49,6 +49,11 @@ <entityField>Districts</entityField> <view>DistrictList_view</view> </neonViewReference> + <neonViewReference> + <name>19a5f9ed-228d-4352-9e82-e7aa690648e9</name> + <entityField>DistrictResponsibles</entityField> + <view>DistrictResponsibleList_view</view> + </neonViewReference> <neonViewReference> <name>4b50b784-484f-4cdf-a705-4c356da763fa</name> <entityField>Documents</entityField> -- GitLab