Skip to content
Snippets Groups Projects
Commit 1db6fd70 authored by Sebastian Pongratz's avatar Sebastian Pongratz :ping_pong: Committed by Benjamin Ulrich
Browse files

#1071844 beobachtungsaction

parent bb810331
No related branches found
No related tags found
No related merge requests found
Showing
with 326 additions and 0 deletions
<?xml version="1.0" encoding="UTF-8"?>
<entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.18" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.18">
<name>ObservationMultiple_entity</name>
<majorModelMode>DISTRIBUTED</majorModelMode>
<documentation>%aditoprj%/entity/ObservationMultiple_entity/documentation.adoc</documentation>
<siblings>
<element>Observation_entity</element>
</siblings>
<recordContainer>dataless</recordContainer>
<entityFields>
<entityProvider>
<name>#PROVIDER</name>
</entityProvider>
<entityProvider>
<name>#PROVIDER_AGGREGATES</name>
<useAggregates v="true" />
</entityProvider>
<entityField>
<name>TRIGGEREVENTUPDATE</name>
<title>Update</title>
<contentType>BOOLEAN</contentType>
<groupable v="false" />
<state>EDITABLE</state>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/triggereventupdate/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>TRIGGEREVENTINSERT</name>
<title>Insert</title>
<contentType>BOOLEAN</contentType>
<groupable v="false" />
<state>EDITABLE</state>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/triggereventinsert/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>TRIGGEREVENTDELETE</name>
<title>Delete</title>
<contentType>BOOLEAN</contentType>
<groupable v="false" />
<state>EDITABLE</state>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/triggereventdelete/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>OBJECT_FIELD</name>
<title>Fields</title>
<contentType>TEXT</contentType>
<dropDownProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/object_field/dropDownProcess.js</dropDownProcess>
<selectionMode>MULTI</selectionMode>
<state>EDITABLE</state>
<stateProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/object_field/stateProcess.js</stateProcess>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/object_field/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>NOTIFICATION_PRIO</name>
<title>Priority</title>
<consumer>PrioKeywords</consumer>
<state>EDITABLE</state>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/notification_prio/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/notification_prio/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
<name>includeDependencies</name>
<title>incl. Dependencies</title>
<contentType>BOOLEAN</contentType>
<state>EDITABLE</state>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/includedependencies/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>OBSERVER</name>
<title>Observer</title>
<consumer>Users</consumer>
<groupable v="true" />
<mandatory v="true" />
<state>READONLY</state>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/observer/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/observer/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
<name>OBJECT_TYPE</name>
<title>Object Type</title>
<consumer>Contexts</consumer>
<groupable v="false" />
<mandatory v="true" />
<state>READONLY</state>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/object_type/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/object_type/displayValueProcess.js</displayValueProcess>
</entityField>
<entityActionField>
<name>addObservations</name>
<onActionProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/addobservations/onActionProcess.js</onActionProcess>
<titleProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/addobservations/titleProcess.js</titleProcess>
</entityActionField>
<entityParameter>
<name>Observer_param</name>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/observer_param/valueProcess.js</valueProcess>
<expose v="true" />
</entityParameter>
<entityParameter>
<name>ObjectType_param</name>
<expose v="true" />
<mandatory v="false" />
</entityParameter>
<entityConsumer>
<name>Contexts</name>
<dependency>
<name>dependency</name>
<entityName>Context_entity</entityName>
<fieldName>Exclusive</fieldName>
</dependency>
<children>
<entityParameter>
<name>Blacklist_param</name>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/contexts/children/blacklist_param/valueProcess.js</valueProcess>
</entityParameter>
<entityParameter>
<name>InvertBlacklist_param</name>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/contexts/children/invertblacklist_param/valueProcess.js</valueProcess>
</entityParameter>
</children>
</entityConsumer>
<entityConsumer>
<name>PrioKeywords</name>
<dependency>
<name>dependency</name>
<entityName>KeywordEntry_entity</entityName>
<fieldName>#PROVIDER</fieldName>
</dependency>
<children>
<entityParameter>
<name>ContainerName_param</name>
<valueProcess>%aditoprj%/entity/ObservationMultiple_entity/entityfields/priokeywords/children/containername_param/valueProcess.js</valueProcess>
</entityParameter>
</children>
</entityConsumer>
<entityConsumer>
<name>Users</name>
<dependency>
<name>dependency</name>
<entityName>Employee_entity</entityName>
<fieldName>EmployeesByUserId</fieldName>
</dependency>
</entityConsumer>
<entityParameter>
<name>ObjectIds_param</name>
<expose v="true" />
</entityParameter>
</entityFields>
<recordContainers>
<datalessRecordContainer>
<name>dataless</name>
<alias>Data_alias</alias>
</datalessRecordContainer>
</recordContainers>
</entity>
= ObservationMultible_entity
This entity handling the seriel action to add more than one observation.
This action can´t be done with the Observation_entity, because a entity displays always one dataset.
\ No newline at end of file
import("Sql_lib");
import("system.entities");
import("system.neon");
import("system.vars");
var objectIds = JSON.parse(vars.getString("$param.ObjectIds_param"));
var currentExitsObservations = newSelect("OBSERVATION.OBJECT_ID")
.from("OBSERVATION")
.where("OBSERVATION.OBJECT_TYPE", vars.get("$field.OBJECT_TYPE"))
.and("OBSERVATION.OBSERVER", vars.get("$field.OBSERVER"))
.and("OBSERVATION.TRIGGEREVENTDELETE", vars.get("$field.TRIGGEREVENTDELETE"))
.and("OBSERVATION.TRIGGEREVENTINSERT", vars.get("$field.TRIGGEREVENTINSERT"))
.and("OBSERVATION.TRIGGEREVENTUPDATE", vars.get("$field.TRIGGEREVENTUPDATE"))
.and("OBSERVATION.NOTIFICATION_PRIO", vars.get("$field.NOTIFICATION_PRIO"))
.and("OBSERVATION.OBJECT_ID", objectIds, SqlBuilder.IN()).arrayColumn();
// filter the allredy observed ids
objectIds = objectIds.filter(function (id) {
return !currentExitsObservations.includes(id);
});
var fields = {
"OBJECT_TYPE" : vars.get("$field.OBJECT_TYPE"),
"OBSERVER" : vars.get("$field.OBSERVER"),
"OBJECT_FIELD" : vars.get("$field.OBJECT_FIELD"),
"includeDependencies" : vars.get("$field.includeDependencies") == "1",
"TRIGGEREVENTDELETE" : vars.get("$field.TRIGGEREVENTDELETE") == "1",
"TRIGGEREVENTINSERT" : vars.get("$field.TRIGGEREVENTINSERT") == "1",
"TRIGGEREVENTUPDATE" : vars.get("$field.TRIGGEREVENTUPDATE") == "1",
"NOTIFICATION_PRIO" : vars.get("$field.NOTIFICATION_PRIO")
}
let createRowConfig = entities.createConfigForAddingRows()
.entity("Observation_entity");
objectIds.forEach(function (pObservationId) {
fields.OBJECT_ID = pObservationId;
entities.createRow(createRowConfig.fieldValues(fields));
});
\ No newline at end of file
import("system.result");
import("Sql_lib");
import("system.vars");
import("system.translate");
var objectIds = JSON.parse(vars.getString("$param.ObjectIds_param"));
result.string(translate.withArguments("Add %0 Observations", [objectIds.length]));
\ No newline at end of file
import("Observation_lib");
import("system.vars");
import("system.result");
result.object(Observation.getContextFields(vars.get("$field.OBSERVATION_ID")));
\ No newline at end of file
import("system.result");
result.string(true);
\ No newline at end of file
import("system.vars");
import("system.result");
if (vars.get("$this.value") == null)
{
result.string("1");
}
\ No newline at end of file
import("system.result");
import("system.vars");
import("KeywordRegistry_basic");
import("Keyword_lib");
result.string(KeywordUtils.getViewValue($KeywordRegistry.notificationPriority(), vars.get("$this.value")));
\ No newline at end of file
import("KeywordRegistry_basic");
import("system.result");
import("system.vars");
if (!vars.get("$this.value"))
{
result.string($KeywordRegistry.notificationPriority$normal());
}
\ No newline at end of file
import("system.result");
import("Observation_lib");
import("system.vars");
result.object(Observation.getAllPosibleFields(vars.get("$field.OBJECT_TYPE")));
...@@ -2,7 +2,11 @@ import("system.neon"); ...@@ -2,7 +2,11 @@ import("system.neon");
import("system.vars"); import("system.vars");
import("system.result"); import("system.result");
if (vars.get("$sys.recordstate") != neon.OPERATINGSTATE_EDIT && vars.get("$param.OnlyMyObservations_param") != "true") if (vars.get("$field.OBJECT_TYPE"))
{
result.string(neon.COMPONENTSTATE_EDITABLE); result.string(neon.COMPONENTSTATE_EDITABLE);
}
else else
result.string(neon.COMPONENTSTATE_READONLY); {
\ No newline at end of file result.string(neon.COMPONENTSTATE_INVISIBLE);
}
import("system.vars");
import("Observation_lib");
import("system.result");
import("system.neon");
if (!vars.get("$this.value") && vars.get("$field.OBJECT_TYPE") && (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_EDIT))
{
result.string(Observation.getAllFieldValue(vars.get("$field.OBJECT_TYPE")));
}
\ No newline at end of file
import("system.translate");
import("system.result");
import("system.vars");
import("Context_lib");
let type = vars.get("$field.OBJECT_TYPE");
if (type)
{
result.string(translate.text(ContextUtils.getContextName(type)));
}
\ No newline at end of file
import("system.result");
import("system.neon");
import("system.vars");
if (!vars.get("$this.value") && vars.exists("$param.ObjectType_param") && vars.get("$param.ObjectType_param"))
{
result.string(vars.get("$param.ObjectType_param"));
}
\ No newline at end of file
import("system.result");
import("system.vars");
import("system.tools");
var user = tools.getUserByAttribute(tools.NAME, vars.get("$field.OBSERVER"), tools.PROFILE_DEFAULT);
if (user)
{
result.string((user.params.firstname + " " + user.params.lastname).trim());
}
\ No newline at end of file
import("system.result");
import("system.vars")
if (!vars.get("$this.value") && vars.get("$param.Observer_param"))
{
result.string(vars.get("$param.Observer_param"));
}
\ No newline at end of file
import("Employee_lib");
import("system.result");
result.string( EmployeeUtils.getCurrentUserId());
\ No newline at end of file
import("system.result");
result.string("NotificationPriority");
\ No newline at end of file
import("system.vars");
import("system.result");
if (vars.get("$this.value") == null)
{
result.string("1");
}
\ No newline at end of file
import("system.vars");
import("system.result");
if (vars.get("$this.value") == null)
{
result.string("1");
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment