changed return types for using entry id's interceptor

main
Said Gedik 2024-07-08 17:43:47 +02:00
parent d3ece6f4e9
commit e9f8780ca3
5 changed files with 79 additions and 66 deletions

View File

@ -287,8 +287,9 @@ public class KalenderRestController {
String formName = (request.getState() == 0) ? "ASF:WI_TAS_Paket" : "CHG:Infrastructure Change"; String formName = (request.getState() == 0) ? "ASF:WI_TAS_Paket" : "CHG:Infrastructure Change";
httpRequest.setAttribute("formName", formName); httpRequest.setAttribute("formName", formName);
change.modifyTimestamp(request); var response = change.modifyTimestamp(request);
httpRequest.setAttribute("listOfFieldValues", change.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", change.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return request; return request;
} }
@ -314,6 +315,7 @@ public class KalenderRestController {
String response = stateChange.createStateChange(request); String response = stateChange.createStateChange(request);
httpRequest.setAttribute("listOfFieldValues", stateChange.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", stateChange.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return ResponseEntity.ok(response); return ResponseEntity.ok(response);
} }
@ -336,6 +338,7 @@ public class KalenderRestController {
var response = implementer.update(request); var response = implementer.update(request);
httpRequest.setAttribute("listOfFieldValues", implementer.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", implementer.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return ResponseEntity.ok(response); return ResponseEntity.ok(response);
} }
@ -359,6 +362,7 @@ public class KalenderRestController {
var response = approval.update(request); var response = approval.update(request);
httpRequest.setAttribute("listOfFieldValues", approval.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", approval.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return ResponseEntity.ok(response); return ResponseEntity.ok(response);
} }
@ -387,8 +391,9 @@ public class KalenderRestController {
httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions"); httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions");
Presets presets = new Presets(javaAPI); Presets presets = new Presets(javaAPI);
presets.savePreset(request); var response = presets.savePreset(request);
httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return presets.getAll(); return presets.getAll();
} }
@ -425,8 +430,9 @@ public class KalenderRestController {
httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions"); httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions");
Presets presets = new Presets(javaAPI); Presets presets = new Presets(javaAPI);
presets.updatePreset(request); var response = presets.updatePreset(request);
httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return presets.getAll(); return presets.getAll();
} }
@ -440,8 +446,9 @@ public class KalenderRestController {
httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions"); httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions");
Presets presets = new Presets(javaAPI); Presets presets = new Presets(javaAPI);
presets.deletePreset(request); var response = presets.deletePreset(request);
httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return presets.getAll(); return presets.getAll();
} }
@ -455,8 +462,9 @@ public class KalenderRestController {
httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions"); httpRequest.setAttribute("formName", "ASF:CHG_CAL_FilterDefinitions");
Presets presets = new Presets(javaAPI); Presets presets = new Presets(javaAPI);
presets.renamePreset(request); var response = presets.renamePreset(request);
httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues()); httpRequest.setAttribute("listOfFieldValues", presets.getListOfFieldValues());
httpRequest.setAttribute("entryId", response);
return presets.getAll(); return presets.getAll();
} }
@ -470,7 +478,8 @@ public class KalenderRestController {
httpRequest.setAttribute("formName", "ASF:CHG_CAL_UserPreferences"); httpRequest.setAttribute("formName", "ASF:CHG_CAL_UserPreferences");
Presets presets = new Presets(javaAPI); Presets presets = new Presets(javaAPI);
presets.editUserPreferences(request); var response = presets.editUserPreferences(request);
httpRequest.setAttribute("entryId", response);
} }
@CrossOrigin("*") @CrossOrigin("*")

View File

@ -134,7 +134,8 @@ public class RemedyJavaAPI {
return lastStatus.toString(); return lastStatus.toString();
} }
return "Entry created successfully. ID: " + entryIdOut; // return "Entry created successfully. ID: " + entryIdOut;
return entryIdOut;
} }
public String deleteEntry(String formName, String entryId) throws ARException { public String deleteEntry(String formName, String entryId) throws ARException {
@ -163,7 +164,7 @@ public class RemedyJavaAPI {
* @param updates the updates * @param updates the updates
* @throws ARException when an ARException occurs * @throws ARException when an ARException occurs
*/ */
public void modifyEntry(String entryId, Query updates) throws ARException { public String modifyEntry(String entryId, Query updates) throws ARException {
var values = updates.getFieldValues(); var values = updates.getFieldValues();
var entry = server.getEntry(updates.getFormName(), entryId, updates.getFieldIds()); var entry = server.getEntry(updates.getFormName(), entryId, updates.getFieldIds());
@ -171,6 +172,7 @@ public class RemedyJavaAPI {
entry.put(value.getFieldId(), value.getValue()); entry.put(value.getFieldId(), value.getValue());
}); });
server.setEntry(updates.getFormName(), entryId, entry, null, 0); server.setEntry(updates.getFormName(), entryId, entry, null, 0);
return entryId;
} }
/** /**

View File

@ -50,7 +50,8 @@ public class RequestInterceptor implements HandlerInterceptor {
long transactionId = System.currentTimeMillis(); long transactionId = System.currentTimeMillis();
Object requestBody = request.getAttribute("requestBody"); Object requestBody = request.getAttribute("requestBody");
String formName = getValidatedField((String) request.getAttribute("formName"), "Default Form"); String formName = getValidatedField((String) request.getAttribute("formName"), "");
String entryId = getValidatedField((String) request.getAttribute("entryId"), "");
int status = (ex == null) ? 3 : 2; int status = (ex == null) ? 3 : 2;
List<String> listOfFieldValues = getFieldValues(request); List<String> listOfFieldValues = getFieldValues(request);
@ -64,30 +65,30 @@ public class RequestInterceptor implements HandlerInterceptor {
entry = buildQueryEntry(transactionId, "Date change", formName, body.getChangeNr(), getAssignedTo(), status, body.getResourceId(), fieldValueJson); entry = buildQueryEntry(transactionId, "Date change", formName, body.getChangeNr(), getAssignedTo(), status, body.getResourceId(), fieldValueJson);
} else if (requestBody instanceof StateChangeRequest) { } else if (requestBody instanceof StateChangeRequest) {
StateChangeRequest body = (StateChangeRequest) requestBody; StateChangeRequest body = (StateChangeRequest) requestBody;
entry = buildQueryEntry(transactionId, "State transition", formName, body.getChangeNr(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "State transition", formName, body.getChangeNr(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof ImplementerUpdateRequest) { } else if (requestBody instanceof ImplementerUpdateRequest) {
ImplementerUpdateRequest body = (ImplementerUpdateRequest) requestBody; ImplementerUpdateRequest body = (ImplementerUpdateRequest) requestBody;
entry = buildQueryEntry(transactionId, "Implementer Update", formName, body.getPkgId(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Implementer Update", formName, body.getPkgId(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof ApprovalUpdateRequest) { } else if (requestBody instanceof ApprovalUpdateRequest) {
ApprovalUpdateRequest body = (ApprovalUpdateRequest) requestBody; ApprovalUpdateRequest body = (ApprovalUpdateRequest) requestBody;
entry = buildQueryEntry(transactionId, "Approval Update", formName, body.getChangeNr(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Approval Update", formName, body.getChangeNr(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof Preset) { } else if (requestBody instanceof Preset) {
Preset body = (Preset) requestBody; Preset body = (Preset) requestBody;
entry = buildQueryEntry(transactionId, "Save Preset", formName, body.getId(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Save Preset", formName, body.getId(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof SelectPresetRequest) { } else if (requestBody instanceof SelectPresetRequest) {
SelectPresetRequest body = (SelectPresetRequest) requestBody; SelectPresetRequest body = (SelectPresetRequest) requestBody;
entry = buildQueryEntry(transactionId, "Select Preset", formName, body.getGuid(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Select Preset", formName, body.getGuid(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof UpdatePresetRequest) { } else if (requestBody instanceof UpdatePresetRequest) {
UpdatePresetRequest body = (UpdatePresetRequest) requestBody; UpdatePresetRequest body = (UpdatePresetRequest) requestBody;
entry = buildQueryEntry(transactionId, "Update Preset", formName, body.getId(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Update Preset", formName, body.getId(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof DeletePresetRequest) { } else if (requestBody instanceof DeletePresetRequest) {
DeletePresetRequest body = (DeletePresetRequest) requestBody; DeletePresetRequest body = (DeletePresetRequest) requestBody;
entry = buildQueryEntry(transactionId, "Delete Preset", formName, body.getId(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Delete Preset", formName, body.getId(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof RenamePresetRequest) { } else if (requestBody instanceof RenamePresetRequest) {
RenamePresetRequest body = (RenamePresetRequest) requestBody; RenamePresetRequest body = (RenamePresetRequest) requestBody;
entry = buildQueryEntry(transactionId, "Rename Preset", formName, body.getId(), getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Rename Preset", formName, body.getId(), getAssignedTo(), status, entryId, fieldValueJson);
} else if (requestBody instanceof EditUserPreferencesRequest) { } else if (requestBody instanceof EditUserPreferencesRequest) {
entry = buildQueryEntry(transactionId, "Edit User Preferences", formName, "", getAssignedTo(), status, "?", fieldValueJson); entry = buildQueryEntry(transactionId, "Edit User Preferences", formName, "", getAssignedTo(), status, entryId, fieldValueJson);
} }
if (entry != null) { if (entry != null) {

View File

@ -317,7 +317,7 @@ public class Change {
* @throws ARException if an error occurs during the modification process * @throws ARException if an error occurs during the modification process
* @throws ValidationError * @throws ValidationError
*/ */
public void modifyTimestamp(ChangeUpdateRequest request) throws ARException, ValidationError { public String modifyTimestamp(ChangeUpdateRequest request) throws ARException, ValidationError {
// Clear the list before processing a new request // Clear the list before processing a new request
listOfFieldValues.clear(); listOfFieldValues.clear();
@ -331,8 +331,8 @@ public class Change {
if (state == 0) { if (state == 0) {
Query query = new Query.QueryBuilder("ASF:WI_TAS_Paket") Query query = new Query.QueryBuilder("ASF:WI_TAS_Paket")
.addFieldValue("d2", 1000000350, new Value(ts)).build(); .addFieldValue("d2", 1000000350, new Value(ts)).build();
collectFieldValues(query); // Collect field values collectFieldValues(query); // Collect field values
api.modifyEntry(entryId, query); return api.modifyEntry(entryId, query);
} else { } else {
Query queryInfrastructureChange = new Query.QueryBuilder("CHG:Infrastructure Change") Query queryInfrastructureChange = new Query.QueryBuilder("CHG:Infrastructure Change")
.addFieldValue("d2", 1000000350, new Value(ts)).build(); .addFieldValue("d2", 1000000350, new Value(ts)).build();
@ -342,7 +342,7 @@ public class Change {
queryInfrastructureChange.getFieldIds(), queryInfrastructureChange.getFieldIds(),
queryInfrastructureChange.getFormName(), null, 0, 0); queryInfrastructureChange.getFormName(), null, 0, 0);
api.modifyEntry(change.get(0).getEntryId(), queryInfrastructureChange); return api.modifyEntry(change.get(0).getEntryId(), queryInfrastructureChange);
} }
} }

View File

@ -117,58 +117,58 @@ public class Presets {
public void createUserPreference(String guid) throws ARException { public void createUserPreference(String guid) throws ARException {
var savePreference = new Query.QueryBuilder(formUserPref) var savePreference = new Query.QueryBuilder(formUserPref)
.addFieldValue("GUID", 364000001, new Value(guid)) .addFieldValue("GUID", 364000001, new Value(guid))
.addFieldValue("Details", 364000002, new Value(1)) .addFieldValue("Details", 364000002, new Value(1))
.addFieldValue("View", 364000003, new Value(1)) .addFieldValue("View", 364000003, new Value(1))
.addFieldValue("Language", 364000004, new Value("DE")) .addFieldValue("Language", 364000004, new Value("DE"))
.build(); .build();
api.createEntry(savePreference);
}
public void savePreset(Preset request) throws ARException, NotFoundError { api.createEntry(savePreference);
}
public String savePreset(Preset request) throws ARException, NotFoundError {
listOfFieldValues.clear(); listOfFieldValues.clear();
var saveQuery = new Query.QueryBuilder(formDefault) var saveQuery = new Query.QueryBuilder(formDefault)
.addFieldValue("FilterPresetName", 364000001, new Value(request.getName())) .addFieldValue("FilterPresetName", 364000001, new Value(request.getName()))
.addFieldValue("FilterPresetDefinition", 364000002, new Value(request.getDefinition())) .addFieldValue("FilterPresetDefinition", 364000002, new Value(request.getDefinition()))
.build(); .build();
collectFieldValues(saveQuery); // Collect field values collectFieldValues(saveQuery); // Collect field values
api.createEntry(saveQuery); return api.createEntry(saveQuery);
} }
public boolean selectPreset(SelectPresetRequest guid) throws ARException { public boolean selectPreset(SelectPresetRequest guid) throws ARException {
listOfFieldValues.clear(); listOfFieldValues.clear();
var queryP = new Query.QueryBuilder(formUserPref) var queryP = new Query.QueryBuilder(formUserPref)
.addFieldValue("GUID", 364000001, new Value(guid.getGuid())).build(); .addFieldValue("GUID", 364000001, new Value(guid.getGuid())).build();
collectFieldValues(queryP); // Collect field values collectFieldValues(queryP); // Collect field values
var pref = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", queryP.getFieldIds(), formUserPref, var pref = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", queryP.getFieldIds(), formUserPref,
null, 0, null, 0,
0); 0);
if (pref.isEmpty() || pref == null) if (pref.isEmpty() || pref == null)
return false; return false;
api.modifyEntry(pref.get(0).getEntryId(), queryP); api.modifyEntry(pref.get(0).getEntryId(), queryP);
return true; return true;
} }
public void updatePreset(UpdatePresetRequest request) throws ARException { public String updatePreset(UpdatePresetRequest request) throws ARException {
listOfFieldValues.clear(); listOfFieldValues.clear();
var queryPresets = new Query.QueryBuilder(formDefault) var queryPresets = new Query.QueryBuilder(formDefault)
.addFieldValue("Definition", 364000002, new Value(request.getDefinition())).build(); .addFieldValue("Definition", 364000002, new Value(request.getDefinition())).build();
collectFieldValues(queryPresets); // Collect field values
var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"",
queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0);
api.modifyEntry(preset.getEntryId(), queryPresets);
}
public void renamePreset(RenamePresetRequest request) throws ARException { collectFieldValues(queryPresets); // Collect field values
var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"",
queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0);
return api.modifyEntry(preset.getEntryId(), queryPresets);
}
public String renamePreset(RenamePresetRequest request) throws ARException {
listOfFieldValues.clear(); listOfFieldValues.clear();
var queryPresets = new Query.QueryBuilder(formDefault) var queryPresets = new Query.QueryBuilder(formDefault)
.addFieldValue("Name", 364000001, new Value(request.getNewName())).build(); .addFieldValue("Name", 364000001, new Value(request.getNewName())).build();
@ -176,10 +176,10 @@ public class Presets {
queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0); queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0);
collectFieldValues(queryPresets); collectFieldValues(queryPresets);
api.modifyEntry(preset.getEntryId(), queryPresets); return api.modifyEntry(preset.getEntryId(), queryPresets);
} }
public void editUserPreferences(EditUserPreferencesRequest request) throws ARException { public String editUserPreferences(EditUserPreferencesRequest request) throws ARException {
listOfFieldValues.clear(); listOfFieldValues.clear();
var queryUserPreferences = new Query.QueryBuilder(formUserPref) var queryUserPreferences = new Query.QueryBuilder(formUserPref)
.addFieldValue("Details", 364000002, new Value(request.getDetails())) .addFieldValue("Details", 364000002, new Value(request.getDetails()))
@ -187,15 +187,14 @@ public class Presets {
.addFieldValue("Language", 364000004, new Value(request.getLanguage())) .addFieldValue("Language", 364000004, new Value(request.getLanguage()))
.build(); .build();
collectFieldValues(queryUserPreferences); collectFieldValues(queryUserPreferences);
var preferences = api var preferences = api
.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", queryUserPreferences.getFieldIds(), .queryFieldsById("\'2\'==\"" + api.getUser() + "\"", queryUserPreferences.getFieldIds(),
formUserPref, null, 0, 0) formUserPref, null, 0, 0)
.get(0); .get(0);
api.modifyEntry(preferences.getEntryId(), queryUserPreferences); return api.modifyEntry(preferences.getEntryId(), queryUserPreferences);
} }
public void allPresets() throws ARException, NotFoundError { public void allPresets() throws ARException, NotFoundError {
@ -219,10 +218,10 @@ public class Presets {
} }
} }
public void deletePreset(DeletePresetRequest request) throws ARException { public String deletePreset(DeletePresetRequest request) throws ARException {
var entries = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"", null, formDefault, null, 0, 0) var entries = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"", null, formDefault, null, 0, 0)
.get(0); .get(0);
api.deleteEntry(formDefault, entries.getEntryId()); var entryid = api.deleteEntry(formDefault, entries.getEntryId());
// SYSTEMDEFAULT // SYSTEMDEFAULT
var sysdef = api.queryFieldsById("\'364000001\'==\"Systemdefault\"", defQuery.getFieldIds(), var sysdef = api.queryFieldsById("\'364000001\'==\"Systemdefault\"", defQuery.getFieldIds(),
@ -233,13 +232,15 @@ public class Presets {
SelectPresetRequest spr = new SelectPresetRequest(); SelectPresetRequest spr = new SelectPresetRequest();
spr.setGuid(sysdefGUID); spr.setGuid(sysdefGUID);
selectPreset(spr); selectPreset(spr);
return entryid;
} }
private void collectFieldValues(Query query) { private void collectFieldValues(Query query) {
for (var entry : query.getFieldValues()) { for (var entry : query.getFieldValues()) {
listOfFieldValues.add(entry.getFieldId() + "\": \"" + entry.getValue()); listOfFieldValues.add(entry.getFieldId() + "\": \"" + entry.getValue());
} }
} }
public List<Preset> getAll() throws NotFoundError, ARException { public List<Preset> getAll() throws NotFoundError, ARException {
allPresets(); allPresets();