Manuel Tauber 2024-02-27 12:59:59 +01:00
parent 120a07fbf4
commit 72795bbfa9
2 changed files with 31 additions and 1 deletions

View File

@ -42,6 +42,7 @@ public class Change {
this.queryChange = new Query.QueryBuilder(formName)
.addFieldId("ChangeNr", 1000000182)
.addFieldId("SupportGroup", 1000000015)
.addFieldId("ManagerGroup", 1000003229)
.addFieldId("State", 7)
.addFieldId("ResourceName", 1000000000)
.addFieldId("D1", 1000000349)
@ -78,7 +79,7 @@ public class Change {
* @throws ValidationError if there is an invalid filter or qualification
*/
public ChangeResponse get(ChangeRequest request) throws ARException, NotFoundError, ValidationError {
api.impersonateUser("ext_StanzPa");
// api.impersonateUser("ext_StanzPa");
var peopleFullName = processPeopleInfo(request);

View File

@ -109,9 +109,37 @@ public class Filter {
}
var inner_qualifier = "";
// if (column.equals("SupportGroup")) {
// qualifier = "(" + "'1000000015' = \""+criterias[0]+"\" OR '1000003229' = \""+criterias[0]+"\")";
// // }
// if(column.equals("SupportGroup")) {
// String supportGroupColumn = "1000000015"; // api.getFieldDatabaseName(query.getFormName(), query.getFieldId("SupportGroup"));
// String coordGroupColumn = "1000003229"; //api.getFieldDatabaseName(query.getFormName(), query.getFieldId("ManagerGroup"));
// for (int j = 0; j < criterias.length; j++) {
// var criteria = criterias[j];
// if (j > 0) {
// qualifier += " AND ";
// }
// var orCondition = String.format("('%s' = \"%s\" OR '%s' = \"%s\")", supportGroupColumn, criteria, coordGroupColumn, criteria);
// qualifier += orCondition;
// }
// }
if (column.equals("D2")) {
var dateQualifier = constructDateQualifier(current_filter, column, query, api);
qualifier = "(" + dateQualifier + ")";
}else if(column.equals("SupportGroup")){
String supportGroupColumn = "1000000015"; // api.getFieldDatabaseName(query.getFormName(), query.getFieldId("SupportGroup"));
String coordGroupColumn = "1000003229"; //api.getFieldDatabaseName(query.getFormName(), query.getFieldId("ManagerGroup"));
for (int j = 0; j < criterias.length; j++) {
var criteria = criterias[j];
if (j > 0) {
qualifier += " OR ";
}
var orCondition = String.format("('%s' = \"%s\" OR '%s' = \"%s\")", supportGroupColumn, criteria, coordGroupColumn, criteria);
qualifier += orCondition;
}
} else {
if(column.equals("ASF_WI_HighestIntervall") ){
Integer crit = Integer.parseInt(current_filter.getCriteria()[0]);
@ -159,6 +187,7 @@ public class Filter {
}
}
System.out.println("\n"+qualifier+"\n");
return qualifier;
}