From 94625ba74bc2c7973edf127fa94fedcab192c83d Mon Sep 17 00:00:00 2001 From: "s.pongratz" <s.pongratz@adito.de> Date: Thu, 9 Jul 2020 17:44:47 +0200 Subject: [PATCH] =?UTF-8?q?#1060544-VergabeBerechtigungen=20Actions=20hinz?= =?UTF-8?q?ugef=C3=BCgt=20mit=20Auslese?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PermissionCalendar_entity.aod | 22 +++++++++++++ .../onActionProcess.js | 9 ++++++ .../onActionProcess.js | 4 +-- .../mandatoryProcess.js | 2 +- .../stateProcess.js | 8 ++--- .../valueProcess.js | 0 .../permissiondealer_type/valueProcess.js | 13 ++++++-- .../mandatoryProcess.js | 2 +- .../stateProcess.js | 11 +++---- .../displayValueProcess.js | 6 ++++ .../mandatoryProcess.js | 9 ++++++ .../onValueChange.js | 9 ++++++ .../stateProcess.js | 13 ++++++++ .../permissionprocurer_type/valueProcess.js | 15 ++++++--- .../displayValueProcess.js | 11 +++---- .../mandatoryProcess.js | 9 ++++++ .../stateProcess.js | 13 ++++++++ .../permissioncalendardb/conditionProcess.js | 3 +- .../_____LANGUAGE_EXTRA.aod | 6 ++++ .../_____LANGUAGE_de/_____LANGUAGE_de.aod | 9 ++++++ .../_____LANGUAGE_en/_____LANGUAGE_en.aod | 6 ++++ .../PermissionCalendar/PermissionCalendar.aod | 4 --- .../PermissionCalendarEditReverse_view.aod | 31 ------------------- .../PermissionCalendarEdit_view.aod | 8 +++++ .../PermissionCalendarFilterReverse_view.aod | 3 +- process/PermissionCalendar_lib/process.js | 1 + 26 files changed, 160 insertions(+), 67 deletions(-) create mode 100644 entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewdepartmentpermissionprocureraction/onActionProcess.js rename entity/PermissionCalendar_entity/entityfields/{permissiondealer_user_rowid => permissiondealer_rowid}/valueProcess.js (100%) create mode 100644 entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/displayValueProcess.js create mode 100644 entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/mandatoryProcess.js create mode 100644 entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/onValueChange.js create mode 100644 entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/stateProcess.js create mode 100644 entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/mandatoryProcess.js create mode 100644 entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/stateProcess.js delete mode 100644 neonView/PermissionCalendarEditReverse_view/PermissionCalendarEditReverse_view.aod diff --git a/entity/PermissionCalendar_entity/PermissionCalendar_entity.aod b/entity/PermissionCalendar_entity/PermissionCalendar_entity.aod index ffffa204d1..6fabd72427 100644 --- a/entity/PermissionCalendar_entity/PermissionCalendar_entity.aod +++ b/entity/PermissionCalendar_entity/PermissionCalendar_entity.aod @@ -173,6 +173,7 @@ <entityField> <name>permissionDealer_rowId</name> <title>Permission Dealer</title> + <valueProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissiondealer_rowid/valueProcess.js</valueProcess> <displayValueProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissiondealer_rowid/displayValueProcess.js</displayValueProcess> </entityField> <entityField> @@ -202,6 +203,8 @@ <name>permissionProcurer_User_RowId</name> <title>Permission Procurer User</title> <consumer>User</consumer> + <mandatoryProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/mandatoryProcess.js</mandatoryProcess> + <stateProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/stateProcess.js</stateProcess> <displayValueProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/displayValueProcess.js</displayValueProcess> <onValueChange>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/onValueChange.js</onValueChange> </entityField> @@ -214,8 +217,27 @@ <onActionProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewuserpermissionprocureraction/onActionProcess.js</onActionProcess> <iconId>VAADIN:USER</iconId> </entityActionField> + <entityActionField> + <name>addNewDepartmentPermissionProcurerAction</name> + <title>Grant new Department Permission</title> + <onActionProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewdepartmentpermissionprocureraction/onActionProcess.js</onActionProcess> + <iconId>VAADIN:GROUP</iconId> + </entityActionField> </children> </entityActionGroup> + <entityField> + <name>permissionProcurer_Department_RowId</name> + <title>Permission Procurer Department</title> + <consumer>Departments</consumer> + <mandatoryProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/mandatoryProcess.js</mandatoryProcess> + <stateProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/stateProcess.js</stateProcess> + <displayValueProcess>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/displayValueProcess.js</displayValueProcess> + <onValueChange>%aditoprj%/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/onValueChange.js</onValueChange> + </entityField> + <entityParameter> + <name>PermissionProcurerType_param</name> + <expose v="true" /> + </entityParameter> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewdepartmentpermissionprocureraction/onActionProcess.js b/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewdepartmentpermissionprocureraction/onActionProcess.js new file mode 100644 index 0000000000..1d2df49b67 --- /dev/null +++ b/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewdepartmentpermissionprocureraction/onActionProcess.js @@ -0,0 +1,9 @@ +import("KeywordRegistry_basic"); +import("PermissionCalendar_lib"); +import("system.vars"); +import("system.neon"); + +var params = {}; +params["PermissionProcurerType_param"] = $KeywordRegistry.permissionCalendarType$department(); +params["PermissionDealer_param"] = vars.get("$param.PermissionDealer_param"); +neon.openContext("PermissionCalendar", null, null, neon.OPERATINGSTATE_NEW, params); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewuserpermissionprocureraction/onActionProcess.js b/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewuserpermissionprocureraction/onActionProcess.js index b19d4ef7af..f2036f9dd0 100644 --- a/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewuserpermissionprocureraction/onActionProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/addactionsreverse/children/addnewuserpermissionprocureraction/onActionProcess.js @@ -4,6 +4,6 @@ import("system.vars"); import("system.neon"); var params = {}; -params["PermissionDealerType_param"] = $KeywordRegistry.permissionCalendarType$user(); +params["PermissionProcurerType_param"] = $KeywordRegistry.permissionCalendarType$user(); params["PermissionDealer_param"] = vars.get("$param.PermissionDealer_param"); -neon.openContext("PermissionCalendar", "PermissionCalendarEditReverse_view", null, neon.OPERATINGSTATE_NEW, params); \ No newline at end of file +neon.openContext("PermissionCalendar", null, null, neon.OPERATINGSTATE_NEW, params); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/mandatoryProcess.js b/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/mandatoryProcess.js index b0dd49473c..ce5b287666 100644 --- a/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/mandatoryProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/mandatoryProcess.js @@ -3,7 +3,7 @@ import("system.vars"); import("system.result"); import("PermissionCalendar_lib"); -if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$department()) +if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$department()&& vars.getString("$param.PermissionProcurer_param")) result.string(true); else result.string(false); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/stateProcess.js b/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/stateProcess.js index 9d47dab7c4..3d2ee67a3d 100644 --- a/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/stateProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/permissiondealer_department_rowid/stateProcess.js @@ -4,10 +4,10 @@ import("system.result"); import("PermissionCalendar_lib"); import("system.neon"); -if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$department()) +if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$department()&& vars.getString("$param.PermissionProcurer_param")) if(vars.getString("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) - result.string("READONLY") + result.string(neon.COMPONENTSTATE_READONLY) else - result.string("EDITABLE"); + result.string(neon.COMPONENTSTATE_EDITABLE); else - result.string("INVISIBLE"); \ No newline at end of file + result.string(neon.COMPONENTSTATE_INVISIBLE); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/valueProcess.js b/entity/PermissionCalendar_entity/entityfields/permissiondealer_rowid/valueProcess.js similarity index 100% rename from entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/valueProcess.js rename to entity/PermissionCalendar_entity/entityfields/permissiondealer_rowid/valueProcess.js diff --git a/entity/PermissionCalendar_entity/entityfields/permissiondealer_type/valueProcess.js b/entity/PermissionCalendar_entity/entityfields/permissiondealer_type/valueProcess.js index c02d458db6..de18eafdc4 100644 --- a/entity/PermissionCalendar_entity/entityfields/permissiondealer_type/valueProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/permissiondealer_type/valueProcess.js @@ -1,8 +1,15 @@ +import("system.neon"); +import("PermissionCalendar_lib"); import("system.result"); import("system.vars"); -let permissionDealerType = vars.get("$param.PermissionDealerType_param"); +let permissionProcurerType = vars.get("$param.PermissionDealerType_param"); -if (vars.get("$this.value") == null && permissionDealerType) - result.string(permissionDealerType); \ No newline at end of file +if(vars.get("$this.value") == null && vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +{ + if (permissionProcurerType) + result.string(permissionProcurerType); + else + result.string(PermissionCalendar.getObjectType(vars.get("$param.PermissionDealer_param"))); +} \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/mandatoryProcess.js b/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/mandatoryProcess.js index 20c989da57..e21c5a274d 100644 --- a/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/mandatoryProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/mandatoryProcess.js @@ -3,7 +3,7 @@ import("system.vars"); import("system.result"); import("PermissionCalendar_lib"); -if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$user()) +if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$user() && vars.getString("$param.PermissionProcurer_param")) result.string(true); else result.string(false); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/stateProcess.js b/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/stateProcess.js index d1da690a3e..e17b225d17 100644 --- a/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/stateProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/permissiondealer_user_rowid/stateProcess.js @@ -4,13 +4,10 @@ import("system.result"); import("PermissionCalendar_lib"); import("system.neon"); -if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$user()) +if(vars.getString("$field.PERMISSIONDEALER_TYPE") == $KeywordRegistry.permissionCalendarType$user() && vars.getString("$param.PermissionProcurer_param")) if(vars.getString("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) - result.string("READONLY"); + result.string(neon.COMPONENTSTATE_READONLY) else - if (vars.getString("$param.PermissionDealer_param")) - result.string("READONLY"); - else - result.string("EDITABLE"); + result.string(neon.COMPONENTSTATE_EDITABLE); else - result.string("INVISIBLE"); \ No newline at end of file + result.string(neon.COMPONENTSTATE_INVISIBLE); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/displayValueProcess.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/displayValueProcess.js new file mode 100644 index 0000000000..d5a26f0a31 --- /dev/null +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/displayValueProcess.js @@ -0,0 +1,6 @@ +import("system.vars"); +import("system.result"); + +let display = vars.get("$field.PERMISSIONPROCURER_ROWID.displayValue"); +if(display != "undefined") + result.string(vars.get("$field.PERMISSIONPROCURER_ROWID.displayValue")); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/mandatoryProcess.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/mandatoryProcess.js new file mode 100644 index 0000000000..6736c4a5ec --- /dev/null +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/mandatoryProcess.js @@ -0,0 +1,9 @@ +import("KeywordRegistry_basic"); +import("system.vars"); +import("system.result"); +import("PermissionCalendar_lib"); + +if(vars.getString("$field.PERMISSIONPROCURER_TYPE") == $KeywordRegistry.permissionCalendarType$department() && vars.getString("$param.PermissionDealer_param")) + result.string(true); +else + result.string(false); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/onValueChange.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/onValueChange.js new file mode 100644 index 0000000000..a10a281ce5 --- /dev/null +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/onValueChange.js @@ -0,0 +1,9 @@ +import("KeywordRegistry_basic"); +import("system.neon"); +import("system.vars"); + +if (vars.get("$this.value") != null && vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +{ + vars.set("$field.PERMISSIONPROCURER_ROWID", vars.get("$this.value")); + vars.set("$field.PERMISSIONPROCURER_TYPE", $KeywordRegistry.permissionCalendarType$department()); +} \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/stateProcess.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/stateProcess.js new file mode 100644 index 0000000000..69ad9d69c7 --- /dev/null +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_department_rowid/stateProcess.js @@ -0,0 +1,13 @@ +import("KeywordRegistry_basic"); +import("system.vars"); +import("system.result"); +import("PermissionCalendar_lib"); +import("system.neon"); + +if(vars.getString("$field.PERMISSIONPROCURER_TYPE") == $KeywordRegistry.permissionCalendarType$department() && vars.getString("$param.PermissionDealer_param")) + if(vars.getString("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) + result.string(neon.COMPONENTSTATE_READONLY) + else + result.string(neon.COMPONENTSTATE_EDITABLE); +else + result.string(neon.COMPONENTSTATE_INVISIBLE); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_type/valueProcess.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_type/valueProcess.js index 2cb573dc51..7d609bbc47 100644 --- a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_type/valueProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_type/valueProcess.js @@ -1,8 +1,15 @@ +import("system.neon"); import("PermissionCalendar_lib"); -import("Employee_lib"); import("system.result"); -import("system.neon"); import("system.vars"); -if(vars.get("$this.value") == null && vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$param.PermissionProcurer_param")) - result.string(PermissionCalendar.getObjectType(vars.get("$param.PermissionProcurer_param"))); \ No newline at end of file + +let permissionProcurerType = vars.get("$param.PermissionProcurerType_param"); + +if(vars.get("$this.value") == null && vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +{ + if (permissionProcurerType) + result.string(permissionProcurerType); + else + result.string(PermissionCalendar.getObjectType(vars.get("$param.PermissionProcurer_param"))); +} \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/displayValueProcess.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/displayValueProcess.js index 4aed107595..d5a26f0a31 100644 --- a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/displayValueProcess.js +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/displayValueProcess.js @@ -1,9 +1,6 @@ -import("KeywordRegistry_basic"); -import("system.result"); import("system.vars"); -import("PermissionCalendar_lib"); - -let permissionProcurerUserDisplay = PermissionCalendar.getNameDisplay(vars.getString("$this.value"), $KeywordRegistry.permissionCalendarType$user()); +import("system.result"); -if (permissionProcurerUserDisplay != "undefined") - result.string(permissionProcurerUserDisplay); +let display = vars.get("$field.PERMISSIONPROCURER_ROWID.displayValue"); +if(display != "undefined") + result.string(vars.get("$field.PERMISSIONPROCURER_ROWID.displayValue")); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/mandatoryProcess.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/mandatoryProcess.js new file mode 100644 index 0000000000..c958afbcaa --- /dev/null +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/mandatoryProcess.js @@ -0,0 +1,9 @@ +import("KeywordRegistry_basic"); +import("system.vars"); +import("system.result"); +import("PermissionCalendar_lib"); + +if(vars.getString("$field.PERMISSIONPROCURER_TYPE") == $KeywordRegistry.permissionCalendarType$user() && vars.getString("$param.PermissionDealer_param")) + result.string(true); +else + result.string(false); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/stateProcess.js b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/stateProcess.js new file mode 100644 index 0000000000..1af2036a8c --- /dev/null +++ b/entity/PermissionCalendar_entity/entityfields/permissionprocurer_user_rowid/stateProcess.js @@ -0,0 +1,13 @@ +import("KeywordRegistry_basic"); +import("system.vars"); +import("system.result"); +import("PermissionCalendar_lib"); +import("system.neon"); + +if(vars.getString("$field.PERMISSIONPROCURER_TYPE") == $KeywordRegistry.permissionCalendarType$user() && vars.getString("$param.PermissionDealer_param")) + if(vars.getString("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) + result.string(neon.COMPONENTSTATE_READONLY) + else + result.string(neon.COMPONENTSTATE_EDITABLE); +else + result.string(neon.COMPONENTSTATE_INVISIBLE); \ No newline at end of file diff --git a/entity/PermissionCalendar_entity/recordcontainers/permissioncalendardb/conditionProcess.js b/entity/PermissionCalendar_entity/recordcontainers/permissioncalendardb/conditionProcess.js index 80d6ae15b8..82af1af206 100644 --- a/entity/PermissionCalendar_entity/recordcontainers/permissioncalendardb/conditionProcess.js +++ b/entity/PermissionCalendar_entity/recordcontainers/permissioncalendardb/conditionProcess.js @@ -9,7 +9,8 @@ let permissionDealer = vars.getString("$param.PermissionDealer_param"); var cond = new SqlBuilder(); if (permissionProcurer) { - cond.whereIfSet("AB_PERMISSIONCALENDAR.PERMISSIONPROCURER_ROWID", EmployeeUtils.sliceUserId(permissionProcurer)); + cond.whereIfSet("AB_PERMISSIONCALENDAR.PERMISSIONPROCURER_ROWID", EmployeeUtils.sliceUserId(permissionProcurer)) + .orIfSet("AB_PERMISSIONCALENDAR.PERMISSIONPROCURER_ROWID", PermissionCalendar.getAllParents(permissionProcurer) , SqlBuilder.IN()); } else if (permissionDealer) { diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod index 63ba21d8ce..754ed5d700 100644 --- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod +++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod @@ -6851,6 +6851,12 @@ <entry> <key>Workflow Model</key> </entry> + <entry> + <key>Permission Procurer Department</key> + </entry> + <entry> + <key>Grant new Department Permission</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 23532c5d74..093846f329 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -8771,6 +8771,7 @@ Bitte Datumseingabe prüfen</value> </entry> <entry> <key>Permission Procurer User</key> + <value>Rechteempfänger Benutzer</value> </entry> <entry> <key>Grant new User Permission</key> @@ -8779,6 +8780,14 @@ Bitte Datumseingabe prüfen</value> <entry> <key>Workflow Model</key> </entry> + <entry> + <key>Permission Procurer Department</key> + <value>Rechteempfänger Abteilung</value> + </entry> + <entry> + <key>Grant new Department Permission</key> + <value>Neue Abteilungs-Berechtigung vergeben</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 48dca7bfd8..a2eaa32042 100644 --- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod +++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod @@ -6917,6 +6917,12 @@ <entry> <key>Workflow Model</key> </entry> + <entry> + <key>Permission Procurer Department</key> + </entry> + <entry> + <key>Grant new Department Permission</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> diff --git a/neonContext/PermissionCalendar/PermissionCalendar.aod b/neonContext/PermissionCalendar/PermissionCalendar.aod index 2a143ec693..01c68cf39a 100644 --- a/neonContext/PermissionCalendar/PermissionCalendar.aod +++ b/neonContext/PermissionCalendar/PermissionCalendar.aod @@ -27,9 +27,5 @@ <name>e0b5c183-3f5c-48ad-ba6c-60ae1a0c3b85</name> <view>PermissionCalendarFilterDrawer_view</view> </neonViewReference> - <neonViewReference> - <name>dd1363e0-d7ba-44d3-b587-e243b760d9e4</name> - <view>PermissionCalendarEditReverse_view</view> - </neonViewReference> </references> </neonContext> diff --git a/neonView/PermissionCalendarEditReverse_view/PermissionCalendarEditReverse_view.aod b/neonView/PermissionCalendarEditReverse_view/PermissionCalendarEditReverse_view.aod deleted file mode 100644 index 3fca170746..0000000000 --- a/neonView/PermissionCalendarEditReverse_view/PermissionCalendarEditReverse_view.aod +++ /dev/null @@ -1,31 +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>PermissionCalendarEditReverse_view</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <layout> - <noneLayout> - <name>layout</name> - </noneLayout> - </layout> - <children> - <genericViewTemplate> - <name>PermissionCalendarEditReverseGeneric</name> - <editMode v="true" /> - <entityField>#ENTITY</entityField> - <fields> - <entityFieldLink> - <name>c40a7708-1983-4848-a93c-92b873104095</name> - <entityField>PERMISSION</entityField> - </entityFieldLink> - <entityFieldLink> - <name>8da9a2ae-f338-4342-b762-125e972d4980</name> - <entityField>permissionProcurer_User_RowId</entityField> - </entityFieldLink> - <entityFieldLink> - <name>7ce1d83a-9d5c-4c36-81a8-2e832448eaaf</name> - <entityField>PERMISSIONDEALER_USER_ROWID</entityField> - </entityFieldLink> - </fields> - </genericViewTemplate> - </children> -</neonView> diff --git a/neonView/PermissionCalendarEdit_view/PermissionCalendarEdit_view.aod b/neonView/PermissionCalendarEdit_view/PermissionCalendarEdit_view.aod index 9e557d4f2e..60c76072d2 100644 --- a/neonView/PermissionCalendarEdit_view/PermissionCalendarEdit_view.aod +++ b/neonView/PermissionCalendarEdit_view/PermissionCalendarEdit_view.aod @@ -27,6 +27,14 @@ <name>bf110421-8305-47c4-8bab-d859b14c7bd4</name> <entityField>PERMISSIONDEALER_USER_ROWID</entityField> </entityFieldLink> + <entityFieldLink> + <name>687b28e4-ea71-40d9-92b4-c771c5c04132</name> + <entityField>permissionProcurer_Department_RowId</entityField> + </entityFieldLink> + <entityFieldLink> + <name>413799e6-1f74-43c9-a947-6b5423b75aa2</name> + <entityField>permissionProcurer_User_RowId</entityField> + </entityFieldLink> </fields> </genericViewTemplate> </children> diff --git a/neonView/PermissionCalendarFilterReverse_view/PermissionCalendarFilterReverse_view.aod b/neonView/PermissionCalendarFilterReverse_view/PermissionCalendarFilterReverse_view.aod index 41f27fe542..e3ac3b974a 100644 --- a/neonView/PermissionCalendarFilterReverse_view/PermissionCalendarFilterReverse_view.aod +++ b/neonView/PermissionCalendarFilterReverse_view/PermissionCalendarFilterReverse_view.aod @@ -16,8 +16,7 @@ <favoriteActionGroup1>AddActionsReverse</favoriteActionGroup1> <entityField>#ENTITY</entityField> <isCreatable v="false" /> - <isDeletable v="false" /> - <isEditable v="false" /> + <isEditable v="true" /> <title></title> <columns> <neonTableColumn> diff --git a/process/PermissionCalendar_lib/process.js b/process/PermissionCalendar_lib/process.js index 453eced128..25a29b8bd5 100644 --- a/process/PermissionCalendar_lib/process.js +++ b/process/PermissionCalendar_lib/process.js @@ -415,6 +415,7 @@ PermissionCalendar.getPermissions = function(pCurrentUser) .select("AB_PERMISSIONCALENDARID, PERMISSIONDEALER_ROWID, PERMISSIONDEALER_TYPE, PERMISSIONPROCURER_ROWID, PERMISSION") .from("AB_PERMISSIONCALENDAR") .where("AB_PERMISSIONCALENDAR.PERMISSIONPROCURER_ROWID", pCurrentUser) + .orIfSet("AB_PERMISSIONCALENDAR.PERMISSIONPROCURER_ROWID", PermissionCalendar.getAllParents(EmployeeUtils.prefixUserId(pCurrentUser)) , SqlBuilder.IN()) .orderBy("PERMISSIONDEALER_ROWID ASC") .table(); }; -- GitLab