implemented approve, reject and cancel flags
parent
e875688aab
commit
48f94b3353
|
|
@ -142,9 +142,14 @@ public class Change {
|
|||
.isPresent());
|
||||
try {
|
||||
var inApproval = inApprovalList(api.getUser(), getValueStringByID(entry, "ChangeNr"));
|
||||
var flag = Flag(inApproval, getValue(entry, "State").getIntValue());
|
||||
change.setFlagApprove(flag);
|
||||
change.setFlagReject(flag);
|
||||
|
||||
var approveAndRejectFlag = approveAndReject(inApproval, getValue(entry, "State").getIntValue());
|
||||
change.setFlagApprove(approveAndRejectFlag);
|
||||
change.setFlagReject(approveAndRejectFlag);
|
||||
|
||||
var cancelFlag = cancel(getValueStringByID(entry, "SupportGroupId"), getValue(entry, "State").getIntValue());
|
||||
change.setFlagCancel(cancelFlag);
|
||||
|
||||
} catch (ARException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
|
@ -166,11 +171,21 @@ public class Change {
|
|||
return approvers != null ? approvers.contains(user) : false;
|
||||
}
|
||||
|
||||
public boolean Flag(boolean approval, int status) {
|
||||
public boolean approveAndReject(boolean approval, int status) {
|
||||
boolean approvableStatus = (status == 1 || status == 10);
|
||||
return approval && approvableStatus;
|
||||
}
|
||||
|
||||
public boolean cancel(String supportGroupId, int status) throws ARException {
|
||||
var queryRoles = new Query.QueryBuilder("CTM:SupportGroupFuncRoleLookUp").addFieldId("Role", 1000000014).build();
|
||||
var role = api.queryFieldsById("\'Support Group ID\' = \"" + supportGroupId + "\"", queryRoles.getFieldIds(), queryRoles.getFormName(), null, 0, 0)
|
||||
.get(0).get(queryRoles.getFieldId("Role")).toString();
|
||||
|
||||
boolean approvableStatus = status == 1;
|
||||
boolean isChangeManager = role.equals("Change Manager");
|
||||
return approvableStatus && isChangeManager;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns the {@link Value} of an entry based on the provided description.
|
||||
|
|
|
|||
Loading…
Reference in New Issue