deletePreset
parent
29a2b7eba5
commit
6d05ff577c
|
|
@ -36,6 +36,7 @@ import com.nttdata.calender.packageType.PackageType;
|
|||
import com.nttdata.calender.planTimes.CalendarWeek;
|
||||
import com.nttdata.calender.planTimes.PlanTimes;
|
||||
import com.nttdata.calender.planTimes.PlanTimesRequest;
|
||||
import com.nttdata.calender.presets.DeletePresetRequest;
|
||||
import com.nttdata.calender.presets.EditUserPreferencesRequest;
|
||||
import com.nttdata.calender.presets.Preset;
|
||||
import com.nttdata.calender.presets.Presets;
|
||||
|
|
@ -339,6 +340,14 @@ public class KalenderRestController {
|
|||
return presets.getAll();
|
||||
}
|
||||
|
||||
@CrossOrigin("*")
|
||||
@PostMapping("api/deletePreset")
|
||||
@ResponseBody
|
||||
public Object deletePreset(@RequestBody DeletePresetRequest request) throws ARException, NotFoundError {
|
||||
Presets presets = new Presets(javaAPI);
|
||||
presets.deletePreset(request);
|
||||
return presets.getAll();
|
||||
}
|
||||
|
||||
@CrossOrigin
|
||||
@PostMapping("api/renamePreset")
|
||||
|
|
|
|||
|
|
@ -136,6 +136,25 @@ public class RemedyJavaAPI {
|
|||
return "Entry created successfully. ID: " + entryIdOut;
|
||||
}
|
||||
|
||||
public String deleteEntry(String formName, String entryId) throws ARException {
|
||||
// Specify 0 for the deleteOption as mentioned in the documentation
|
||||
int deleteOption = 0;
|
||||
|
||||
// Attempt to delete the entry
|
||||
server.deleteEntry(formName, entryId, deleteOption);
|
||||
|
||||
// Check for any status or warnings after the deletion
|
||||
var lastStatus = server.getLastStatus();
|
||||
if (!lastStatus.isEmpty()) {
|
||||
applicationLogger.warn("Warning after deleting entry: " + lastStatus);
|
||||
return "Warning: " + lastStatus.toString();
|
||||
}
|
||||
|
||||
applicationLogger.info("Entry with ID " + entryId + " deleted successfully from form " + formName);
|
||||
return "Entry deleted successfully. ID: " + entryId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Takes an entry ID and a {@link Query} object with values and updates the
|
||||
* selected entry with the values provided in the query.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,14 @@
|
|||
package com.nttdata.calender.presets;
|
||||
|
||||
public class DeletePresetRequest {
|
||||
private String id;
|
||||
|
||||
public String getId() {
|
||||
return this.id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -12,152 +12,162 @@ import com.nttdata.calender.api.RemedyJavaAPI;
|
|||
import com.nttdata.calender.errorhandling.ErrorTypes.NotFoundError;
|
||||
|
||||
public class Presets {
|
||||
private final static String formName = "ASF:CHG_CAL_UserPreferencesJoinFilterDefinitions";
|
||||
private final static String formDefault = "ASF:CHG_CAL_FilterDefinitions";
|
||||
private final static String formUserPref = "ASF:CHG_CAL_UserPreferences";
|
||||
private Query query;
|
||||
private Query defQuery;
|
||||
private Query prefQuery;
|
||||
private RemedyJavaAPI api;
|
||||
private List<Preset> presets;
|
||||
private final static String formName = "ASF:CHG_CAL_UserPreferencesJoinFilterDefinitions";
|
||||
private final static String formDefault = "ASF:CHG_CAL_FilterDefinitions";
|
||||
private final static String formUserPref = "ASF:CHG_CAL_UserPreferences";
|
||||
private Query query;
|
||||
private Query defQuery;
|
||||
private Query prefQuery;
|
||||
private RemedyJavaAPI api;
|
||||
private List<Preset> presets;
|
||||
|
||||
@Autowired
|
||||
public Presets(RemedyJavaAPI api) throws ARException, NotFoundError {
|
||||
this.api = api;
|
||||
@Autowired
|
||||
public Presets(RemedyJavaAPI api) throws ARException, NotFoundError {
|
||||
this.api = api;
|
||||
|
||||
this.query = new Query.QueryBuilder(formName)
|
||||
.addFieldId("RequestId", 6)
|
||||
.addFieldId("InstanceId", 179)
|
||||
.addFieldId("Status", 7)
|
||||
.addFieldId("GUID", 364000001) // current active preset
|
||||
.addFieldId("Details", 364000002)
|
||||
.addFieldId("View", 364000003)
|
||||
.addFieldId("Language", 364000004)
|
||||
.addFieldId("Submitter", 2)
|
||||
.addFieldId("Name", 364200001)
|
||||
.addFieldId("Definition", 364200002)
|
||||
.build();
|
||||
this.query = new Query.QueryBuilder(formName)
|
||||
.addFieldId("RequestId", 6)
|
||||
.addFieldId("InstanceId", 179)
|
||||
.addFieldId("Status", 7)
|
||||
.addFieldId("GUID", 364000001) // current active preset
|
||||
.addFieldId("Details", 364000002)
|
||||
.addFieldId("View", 364000003)
|
||||
.addFieldId("Language", 364000004)
|
||||
.addFieldId("Submitter", 2)
|
||||
.addFieldId("Name", 364200001)
|
||||
.addFieldId("Definition", 364200002)
|
||||
.build();
|
||||
|
||||
this.defQuery = new Query.QueryBuilder(formDefault)
|
||||
.addFieldId("Name", 364000001)
|
||||
.addFieldId("Definition", 364000002)
|
||||
.addFieldId("isSystemDefault", 364000004)
|
||||
.addFieldId("isGlobal", 364000003)
|
||||
.addFieldId("InstanceId", 179)
|
||||
.build();
|
||||
this.defQuery = new Query.QueryBuilder(formDefault)
|
||||
.addFieldId("Name", 364000001)
|
||||
.addFieldId("Definition", 364000002)
|
||||
.addFieldId("isSystemDefault", 364000004)
|
||||
.addFieldId("isGlobal", 364000003)
|
||||
.addFieldId("InstanceId", 179)
|
||||
.build();
|
||||
|
||||
this.prefQuery = new Query.QueryBuilder(formUserPref)
|
||||
.addFieldId("GUID", 364000001)
|
||||
.addFieldId("Details", 364000002)
|
||||
.addFieldId("View", 364000003)
|
||||
.addFieldId("Language", 364000004)
|
||||
.build();
|
||||
this.prefQuery = new Query.QueryBuilder(formUserPref)
|
||||
.addFieldId("GUID", 364000001)
|
||||
.addFieldId("Details", 364000002)
|
||||
.addFieldId("View", 364000003)
|
||||
.addFieldId("Language", 364000004)
|
||||
.build();
|
||||
|
||||
this.presets = new ArrayList<>();
|
||||
api.impersonateUser("ext_StanzPa");
|
||||
}
|
||||
|
||||
public Object initPresets() throws ARException, NotFoundError {
|
||||
List<Entry> entries = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", query.getFieldIds(), formName,
|
||||
null,
|
||||
0, 0);
|
||||
PresetsGetResponse response = new PresetsGetResponse();
|
||||
|
||||
if (entries.isEmpty() || entries == null) {
|
||||
var sysdef = api.queryFieldsById("\'364000001\'==\"Systemdefault\"", defQuery.getFieldIds(),
|
||||
formDefault, null, 0, 0).get(0);
|
||||
return new Preset(sysdef.get(defQuery.getFieldId("InstanceId")).toString(),
|
||||
sysdef.get(defQuery.getFieldId("Name")).toString(),
|
||||
sysdef.get(defQuery.getFieldId("Definition")).toString(), "Admin");
|
||||
} else {
|
||||
allPresets();
|
||||
response.setPresets(presets);
|
||||
response.setSelectedPreset(entries.get(0).get(query.getFieldId("GUID")).toString());
|
||||
response.setUserPreferences(new UserPreferences(entries.get(0).get(query.getFieldId("Details")).toString(),
|
||||
entries.get(0).get(query.getFieldId("View")).toString(),
|
||||
entries.get(0).get(query.getFieldId("Language")).toString()));
|
||||
this.presets = new ArrayList<>();
|
||||
api.impersonateUser("ext_StanzPa");
|
||||
}
|
||||
return response;
|
||||
|
||||
}
|
||||
public Object initPresets() throws ARException, NotFoundError {
|
||||
List<Entry> entries = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", query.getFieldIds(),
|
||||
formName,
|
||||
null,
|
||||
0, 0);
|
||||
PresetsGetResponse response = new PresetsGetResponse();
|
||||
|
||||
public void savePreset(Preset request) throws ARException, NotFoundError {
|
||||
var saveQuery = new Query.QueryBuilder(formDefault)
|
||||
.addFieldValue("FilterPresetName", 364000001, new Value(request.getName()))
|
||||
.addFieldValue("FilterPresetDefinition", 364000002, new Value(request.getDefinition()))
|
||||
.build();
|
||||
if (entries.isEmpty() || entries == null) {
|
||||
var sysdef = api.queryFieldsById("\'364000001\'==\"Systemdefault\"", defQuery.getFieldIds(),
|
||||
formDefault, null, 0, 0).get(0);
|
||||
return new Preset(sysdef.get(defQuery.getFieldId("InstanceId")).toString(),
|
||||
sysdef.get(defQuery.getFieldId("Name")).toString(),
|
||||
sysdef.get(defQuery.getFieldId("Definition")).toString(), "Admin");
|
||||
} else {
|
||||
allPresets();
|
||||
response.setPresets(presets);
|
||||
response.setSelectedPreset(entries.get(0).get(query.getFieldId("GUID")).toString());
|
||||
response.setUserPreferences(
|
||||
new UserPreferences(entries.get(0).get(query.getFieldId("Details")).toString(),
|
||||
entries.get(0).get(query.getFieldId("View")).toString(),
|
||||
entries.get(0).get(query.getFieldId("Language")).toString()));
|
||||
}
|
||||
return response;
|
||||
|
||||
api.createEntry(saveQuery);
|
||||
}
|
||||
}
|
||||
|
||||
public boolean selectPreset(SelectPresetRequest guid) throws ARException {
|
||||
var queryP = new Query.QueryBuilder(formUserPref)
|
||||
.addFieldValue("GUID", 364000001, new Value(guid.getGuid())).build();
|
||||
public void savePreset(Preset request) throws ARException, NotFoundError {
|
||||
var saveQuery = new Query.QueryBuilder(formDefault)
|
||||
.addFieldValue("FilterPresetName", 364000001, new Value(request.getName()))
|
||||
.addFieldValue("FilterPresetDefinition", 364000002, new Value(request.getDefinition()))
|
||||
.build();
|
||||
|
||||
var pref = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", queryP.getFieldIds(), formUserPref, null, 0,
|
||||
0);
|
||||
api.createEntry(saveQuery);
|
||||
}
|
||||
|
||||
if (pref.isEmpty() || pref == null)
|
||||
return false;
|
||||
public boolean selectPreset(SelectPresetRequest guid) throws ARException {
|
||||
var queryP = new Query.QueryBuilder(formUserPref)
|
||||
.addFieldValue("GUID", 364000001, new Value(guid.getGuid())).build();
|
||||
|
||||
api.modifyEntry(pref.get(0).getEntryId(), queryP);
|
||||
return true;
|
||||
}
|
||||
var pref = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", queryP.getFieldIds(), formUserPref,
|
||||
null, 0,
|
||||
0);
|
||||
|
||||
public void updatePreset(UpdatePresetRequest request) throws ARException {
|
||||
var queryPresets = new Query.QueryBuilder(formDefault)
|
||||
.addFieldValue("Definition", 364000002, new Value(request.getDefinition())).build();
|
||||
var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"",
|
||||
queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0);
|
||||
if (pref.isEmpty() || pref == null)
|
||||
return false;
|
||||
|
||||
api.modifyEntry(preset.getEntryId(), queryPresets);
|
||||
}
|
||||
api.modifyEntry(pref.get(0).getEntryId(), queryP);
|
||||
return true;
|
||||
}
|
||||
|
||||
public void renamePreset(RenamePresetRequest request) throws ARException {
|
||||
public void updatePreset(UpdatePresetRequest request) throws ARException {
|
||||
var queryPresets = new Query.QueryBuilder(formDefault)
|
||||
.addFieldValue("Definition", 364000002, new Value(request.getDefinition())).build();
|
||||
var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"",
|
||||
queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0);
|
||||
|
||||
var queryPresets = new Query.QueryBuilder(formDefault)
|
||||
.addFieldValue("Name", 364000001, new Value(request.getNewName())).build();
|
||||
var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"",
|
||||
queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0);
|
||||
api.modifyEntry(preset.getEntryId(), queryPresets);
|
||||
}
|
||||
|
||||
api.modifyEntry(preset.getEntryId(), queryPresets);
|
||||
}
|
||||
public void renamePreset(RenamePresetRequest request) throws ARException {
|
||||
|
||||
public String editUserPreferences(EditUserPreferencesRequest request) throws ARException {
|
||||
var queryUserPreferences = new Query.QueryBuilder(formUserPref)
|
||||
.addFieldValue("Details", 364000002, new Value(request.getDetails()))
|
||||
.addFieldValue("View", 364000003, new Value(request.getView()))
|
||||
.addFieldValue("Language", 364000004, new Value(request.getLanguage()))
|
||||
.build();
|
||||
var queryPresets = new Query.QueryBuilder(formDefault)
|
||||
.addFieldValue("Name", 364000001, new Value(request.getNewName())).build();
|
||||
var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"",
|
||||
queryPresets.getFieldIds(), formDefault, null, 0, 0).get(0);
|
||||
|
||||
var preferences = api.queryFieldsById("\'2\'==\"ext_GedikSa\"", queryUserPreferences.getFieldIds(),
|
||||
formUserPref, null, 0, 0).get(0);
|
||||
api.modifyEntry(preset.getEntryId(), queryPresets);
|
||||
}
|
||||
|
||||
public String editUserPreferences(EditUserPreferencesRequest request) throws ARException {
|
||||
var queryUserPreferences = new Query.QueryBuilder(formUserPref)
|
||||
.addFieldValue("Details", 364000002, new Value(request.getDetails()))
|
||||
.addFieldValue("View", 364000003, new Value(request.getView()))
|
||||
.addFieldValue("Language", 364000004, new Value(request.getLanguage()))
|
||||
.build();
|
||||
|
||||
var preferences = api.queryFieldsById("\'2\'==\"ext_GedikSa\"", queryUserPreferences.getFieldIds(),
|
||||
formUserPref, null, 0, 0).get(0);
|
||||
|
||||
// bei falschen input parameter
|
||||
if (preferences.isEmpty() || preferences == null)
|
||||
return "Error";
|
||||
api.modifyEntry(preferences.getEntryId(), queryUserPreferences);
|
||||
return "Success";
|
||||
}
|
||||
|
||||
public void allPresets() throws ARException, NotFoundError {
|
||||
var entries = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", query.getFieldIds(), formName, null, 0,
|
||||
0);
|
||||
|
||||
if (entries.isEmpty() || entries == null) {
|
||||
throw new NotFoundError("No presets found in this context");
|
||||
} else {
|
||||
for (var v : entries) {
|
||||
presets.add(new Preset(v.get(query.getFieldId("InstanceId")).toString(),
|
||||
v.get(query.getFieldId("Name")).toString(), v.get(query.getFieldId("Definition")).toString(),
|
||||
""));
|
||||
}
|
||||
if (preferences.isEmpty() || preferences == null)
|
||||
return "Error";
|
||||
api.modifyEntry(preferences.getEntryId(), queryUserPreferences);
|
||||
return "Success";
|
||||
}
|
||||
}
|
||||
|
||||
public List<Preset> getAll() throws NotFoundError, ARException {
|
||||
allPresets();
|
||||
return this.presets;
|
||||
}
|
||||
public void allPresets() throws ARException, NotFoundError {
|
||||
var entries = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", query.getFieldIds(), formName,
|
||||
null, 0,
|
||||
0);
|
||||
|
||||
if (entries.isEmpty() || entries == null) {
|
||||
throw new NotFoundError("No presets found in this context");
|
||||
} else {
|
||||
for (var v : entries) {
|
||||
presets.add(new Preset(v.get(query.getFieldId("InstanceId")).toString(),
|
||||
v.get(query.getFieldId("Name")).toString(),
|
||||
v.get(query.getFieldId("Definition")).toString(),
|
||||
""));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void deletePreset(DeletePresetRequest request) throws ARException {
|
||||
var entries = api.queryFieldsById("\'179\'==\""+ request.getId() + "\"", null, formDefault, null, 0, 0).get(0);
|
||||
api.deleteEntry(formDefault, entries.getEntryId());
|
||||
}
|
||||
|
||||
public List<Preset> getAll() throws NotFoundError, ARException {
|
||||
allPresets();
|
||||
return this.presets;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue