check Approval List & setApprovalFlag

main
Said Gedik 2023-05-24 11:11:56 +02:00
parent 993f2e4f6d
commit 4ecaea20f8
1 changed files with 16 additions and 1 deletions

View File

@ -135,7 +135,11 @@ public class Change {
change.setChangeImplementerPersonId(getValueStringByID(entry, "ChangeImplementerPersonId"));
change.setPackageType(getValueStringByID(entry, "PackageType"));
change.setContract(getValueStringByID(entry, "Contract"));
try {
change.setApprovalFlag(inApprovalList(api.getUser(), getValueStringByID(entry, "ChangerNr")));
} catch (ARException e) {
e.printStackTrace();
}
change.setImplementerEdit(
Optional.ofNullable(entry.get(queryChange.getFieldId("ChangeCoordinator")))
.map(Object::toString)
@ -149,6 +153,17 @@ public class Change {
return new ChangeResponse(entriesSize, changes);
}
public boolean inApprovalList(String user, String changeNr) throws ARException {
var queryApprovalList = new Query.QueryBuilder("ASF:OverviewConsole_TicketsJoinAPDetailSignature")
.addFieldId("Approvers", 13207).build();
var approversOI = api.queryFieldsById("\'Ticketnumber\' = \"" + changeNr + "\"",
queryApprovalList.getFieldIds(), queryApprovalList.getFormName(), null, 0, 0);
String approvers = approversOI.get(0).get(queryApprovalList.getFieldId("Approvers")).toString();
return approvers.contains(user);
}
/**
* Returns the {@link Value} of an entry based on the provided description.
*