Skip to content
Snippets Groups Projects
Commit 2c904714 authored by Andreas Schindlbeck's avatar Andreas Schindlbeck
Browse files

#1063997 Favorites: Boilerplate code to Favorite_lib

parent 14dc4258
No related branches found
No related tags found
No related merge requests found
import("system.tools");
import("Favorites_lib");
import("system.result");
import("Sql_lib");
import("system.logging");
import("system.vars");
import("system.favorite");
var favoFilterCond = newWhere();
var sysAlias = favorite.getFavoritesAlias();
var rowIds = FavoritesUtil.getRowIdsOfFavoriteGroup();
var value = vars.get("$local.rawvalue");
var operator = vars.get("$local.operator") //noch zu implementieren
for(i = 0; i < rowIds.length; i++)
{
var orga_id = new SqlBuilder().select("CONTACT.PERSON_ID")
.from("CONTACT")
.where(newWhere("CONTACT.CONTACTID", rowIds[i]))
.arrayColumn();
logging.log("cond2" + value + operator);
if(value && operator)
{
var filterCond = newWhere("ASYS_RECORDGROUP.TITLE", value, null, null, sysAlias); //Operators fehlen noch
filterCond.and(newWhere("ASYS_RECORDGROUP.USER_ID", tools.getCurrentUser()["name"], null, null, sysAlias));
var rowIds = new SqlBuilder(sysAlias).selectDistinct("ASYS_RECORD.ROW_ID")
.from("ASYS_RECORD")
.join("ASYS_RECORDGROUP", "ASYS_RECORD.RECORDGROUP_ID = ASYS_RECORDGROUP.ID")
.where(filterCond)
.arrayColumn();
logging.log("rowIds " + JSON.stringify(rowIds));
for(i = 0; i < rowIds.length; i++)
{
var orga_id = new SqlBuilder().select("CONTACT.ORGANISATION_ID")
.from("CONTACT")
.where(newWhere("CONTACT.CONTACTID", rowIds[i]))
.arrayColumn();
if(orga_id.length > 0)
favoFilterCond.or("ORGANISATION.ORGANISATIONID", orga_id[0], SqlBuilder.EQUAL());
}
if(orga_id.length > 0)
favoFilterCond.or("PERSON.PERSONID", orga_id[0], SqlBuilder.EQUAL());
}
result.string(favoFilterCond.toString());
\ No newline at end of file
import("system.favorite");
import("system.tools");
import("system.result");
import("Sql_lib");
import("system.logging");
import("system.favorite");
import("Favorites_lib");
var allTypes = [];
var alias = favorite.getFavoritesAlias();
result.object(FavoritesUtil.getUserNotificationGroups());
var filterCond = newWhere("ASYS_RECORDGROUP.USER_ID", tools.getCurrentUser()["name"], null, null, alias);
var groupNames = (new SqlBuilder(alias)).selectDistinct("ASYS_RECORDGROUP.TITLE")
.from("ASYS_RECORDGROUP")
.where(filterCond)
.arrayColumn();
groupNames.forEach(element => {
if(element.equals("Default"))
allTypes.push([element, translate.text(element)]);
else
allTypes.push([element, element]);
});
result.object(Array.from(allTypes));
\ No newline at end of file
import("system.tools");
import("Favorites_lib");
import("system.result");
import("Sql_lib");
import("system.logging");
import("system.vars");
import("system.favorite");
var favoFilterCond = newWhere();
var sysAlias = favorite.getFavoritesAlias();
var rowIds = FavoritesUtil.getRowIdsOfFavoriteGroup();
var value = vars.get("$local.rawvalue");
var operator = vars.get("$local.operator") //noch zu implementieren
for(i = 0; i < rowIds.length; i++)
{
var person_id = new SqlBuilder().select("CONTACT.PERSON_ID")
.from("CONTACT")
.where(newWhere("CONTACT.CONTACTID", rowIds[i]))
.arrayColumn();
logging.log("cond2" + value + operator);
if(value && operator)
{
var filterCond = newWhere("ASYS_RECORDGROUP.TITLE", value, null, null, sysAlias); //Operators fehlen noch
filterCond.and(newWhere("ASYS_RECORDGROUP.USER_ID", tools.getCurrentUser()["name"], null, null, sysAlias));
var rowIds = new SqlBuilder(sysAlias).selectDistinct("ASYS_RECORD.ROW_ID")
.from("ASYS_RECORD")
.join("ASYS_RECORDGROUP", "ASYS_RECORD.RECORDGROUP_ID = ASYS_RECORDGROUP.ID")
.where(filterCond)
.arrayColumn();
logging.log("rowIds " + JSON.stringify(rowIds));
for(i = 0; i < rowIds.length; i++)
{
var orga_id = new SqlBuilder().select("CONTACT.PERSON_ID")
.from("CONTACT")
.where(newWhere("CONTACT.CONTACTID", rowIds[i]))
.arrayColumn();
if(orga_id.length > 0)
favoFilterCond.or("PERSon.PERSONID", orga_id[0], SqlBuilder.EQUAL());
}
if(person_id.length > 0)
favoFilterCond.or("PERSON.PERSONID", person_id[0], SqlBuilder.EQUAL());
}
result.string(favoFilterCond.toString());
\ No newline at end of file
import("system.favorite");
import("system.tools");
import("system.result");
import("Sql_lib");
import("system.logging");
import("system.favorite");
import("Favorites_lib");
var allTypes = [];
var alias = favorite.getFavoritesAlias();
var filterCond = newWhere("ASYS_RECORDGROUP.USER_ID", tools.getCurrentUser()["name"], null, null, alias);
var groupNames = (new SqlBuilder(alias)).selectDistinct("ASYS_RECORDGROUP.TITLE")
.from("ASYS_RECORDGROUP")
.where(filterCond)
.arrayColumn();
groupNames.forEach(element => {
if(element.equals("Default"))
allTypes.push([element, translate.text(element)]);
else
allTypes.push([element, element]);
});
result.object(Array.from(allTypes));
\ No newline at end of file
result.object(FavoritesUtil.getUserNotificationGroups());
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<process xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.2.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/process/1.2.1">
<name>Favorites_lib</name>
<majorModelMode>DISTRIBUTED</majorModelMode>
<process>%aditoprj%/process/Favorites_lib/process.js</process>
<variants>
<element>LIBRARY</element>
</variants>
</process>
import("system.translate");
import("system.vars");
import("system.favorite");
import("system.tools");
import("system.result");
import("Sql_lib");
function FavoritesUtil(){}
FavoritesUtil.getUserNotificationGroups = function()
{
var allTypes = [];
var alias = favorite.getFavoritesAlias();
var filterCond = newWhere("ASYS_RECORDGROUP.USER_ID", tools.getCurrentUser()["name"], null, null, alias);
var groupNames = (new SqlBuilder(alias)).selectDistinct("ASYS_RECORDGROUP.TITLE")
.from("ASYS_RECORDGROUP")
.where(filterCond)
.arrayColumn();
for(var i = 0; i < groupNames.length; i++)
{
if(groupNames[i].equals("Default"))
allTypes.push([groupNames[i], translate.text(groupNames[i])]);
else
allTypes.push([groupNames[i], groupNames[i]]);
}
return Array.from(allTypes);
}
FavoritesUtil.getRowIdsOfFavoriteGroup = function()
{
var sysAlias = favorite.getFavoritesAlias();
var value = vars.get("$local.rawvalue");
var operator = vars.get("$local.operator") //noch zu implementieren
if(value && operator)
{
var filterCond = newWhere("ASYS_RECORDGROUP.TITLE", value, null, null, sysAlias); //Operators fehlen noch
filterCond.and(newWhere("ASYS_RECORDGROUP.USER_ID", tools.getCurrentUser()["name"], null, null, sysAlias));
var rowIds = new SqlBuilder(sysAlias).selectDistinct("ASYS_RECORD.ROW_ID")
.from("ASYS_RECORD")
.join("ASYS_RECORDGROUP", "ASYS_RECORD.RECORDGROUP_ID = ASYS_RECORDGROUP.ID")
.where(filterCond)
.arrayColumn();
return rowIds;
}
return null;
}
\ 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