reset to sysdef after deletion of preset

main
Said Gedik 2023-10-16 14:12:00 +02:00
parent 6e36e42b95
commit 7057328198
1 changed files with 31 additions and 16 deletions

View File

@ -61,11 +61,13 @@ public class Presets {
PresetsGetResponse response = new PresetsGetResponse(); PresetsGetResponse response = new PresetsGetResponse();
// SYSTEMDEFAULT // SYSTEMDEFAULT
var sysdef = api.queryFieldsById("\'364000001\'==\"Systemdefault\"", defQuery.getFieldIds(), formDefault, null, 0, 0).get(0); var sysdef = api.queryFieldsById("\'364000001\'==\"Systemdefault\"", defQuery.getFieldIds(),
formDefault, null, 0, 0).get(0);
String sysdefGUID = sysdef.get(defQuery.getFieldId("InstanceId")).toString(); String sysdefGUID = sysdef.get(defQuery.getFieldId("InstanceId")).toString();
// CHECK IF USER HAS PREFERENCES // CHECK IF USER HAS PREFERENCES
var preference = api.queryFieldsById("\'2\'==\""+ api.getUser() +"\"", prefQuery.getFieldIds(), formUserPref, null, 0, 0); var preference = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", prefQuery.getFieldIds(),
formUserPref, null, 0, 0);
if (preference != null && !preference.isEmpty()) { if (preference != null && !preference.isEmpty()) {
// CHECK IF PREFERENCE HAS GUID // CHECK IF PREFERENCE HAS GUID
@ -73,37 +75,40 @@ public class Presets {
if (guid.toString() == null) { if (guid.toString() == null) {
// IF GUID IS NULL PUT SYSTEM DEFAULT INSIDE // IF GUID IS NULL PUT SYSTEM DEFAULT INSIDE
System.out.println("GEHT REIN"); System.out.println("GEHT REIN");
var queryPreferenceNewValue = new Query.QueryBuilder(formUserPref).addFieldValue("GUID", 364000001, new Value(sysdefGUID)).build(); var queryPreferenceNewValue = new Query.QueryBuilder(formUserPref)
var pref = api.queryFieldsById("\'2\'==\""+ api.getUser() +"\"", queryPreferenceNewValue.getFieldIds(), formUserPref, null, 0, 0); .addFieldValue("GUID", 364000001, new Value(sysdefGUID)).build();
var pref = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"",
queryPreferenceNewValue.getFieldIds(), formUserPref, null, 0, 0);
api.modifyEntry(pref.get(0).getEntryId(), queryPreferenceNewValue); api.modifyEntry(pref.get(0).getEntryId(), queryPreferenceNewValue);
} }
} else { } else {
// IF USER HAS NO PREFERENCES CREATE NEW ENTRY WITH PREFERENCES AND SYSDEF GUID // IF USER HAS NO PREFERENCES CREATE NEW ENTRY WITH PREFERENCES AND SYSDEF GUID
createUserPreference(sysdefGUID); createUserPreference(sysdefGUID);
} }
preference = api.queryFieldsById("\'2\'==\""+ api.getUser() +"\"", prefQuery.getFieldIds(), formUserPref, null, 0, 0); preference = api.queryFieldsById("\'2\'==\"" + api.getUser() + "\"", prefQuery.getFieldIds(),
formUserPref, null, 0, 0);
// INIT ALL PRESETS // INIT ALL PRESETS
getAll(); getAll();
response.setPresets(this.presets); response.setPresets(this.presets);
response.setSelectedPreset(preference.get(0).get(prefQuery.getFieldId("GUID")).toString()); response.setSelectedPreset(preference.get(0).get(prefQuery.getFieldId("GUID")).toString());
response.setUserPreferences( response.setUserPreferences(
new UserPreferences(preference.get(0).get(prefQuery.getFieldId("Details")).toString(), new UserPreferences(preference.get(0).get(prefQuery.getFieldId("Details")).toString(),
preference.get(0).get(prefQuery.getFieldId("View")).toString(), preference.get(0).get(prefQuery.getFieldId("View")).toString(),
preference.get(0).get(prefQuery.getFieldId("Language")).toString())); preference.get(0).get(prefQuery.getFieldId("Language")).toString()));
return response; return response;
} }
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); api.createEntry(savePreference);
} }
@ -120,7 +125,7 @@ public class Presets {
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();
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);
@ -141,7 +146,6 @@ public class Presets {
} }
public void renamePreset(RenamePresetRequest request) throws ARException { public void renamePreset(RenamePresetRequest request) throws ARException {
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();
var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"", var preset = api.queryFieldsById("\'179\'==\"" + request.getId() + "\"",
@ -157,8 +161,10 @@ public class Presets {
.addFieldValue("Language", 364000004, new Value(request.getLanguage())) .addFieldValue("Language", 364000004, new Value(request.getLanguage()))
.build(); .build();
var preferences = api.queryFieldsById("\'2\'==\""+ api.getUser() +"\"", queryUserPreferences.getFieldIds(), var preferences = api
formUserPref, null, 0, 0).get(0); .queryFieldsById("\'2\'==\"" + api.getUser() + "\"", queryUserPreferences.getFieldIds(),
formUserPref, null, 0, 0)
.get(0);
// bei falschen input parameter // bei falschen input parameter
if (preferences.isEmpty() || preferences == null) if (preferences.isEmpty() || preferences == null)
@ -189,6 +195,15 @@ public class Presets {
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()); api.deleteEntry(formDefault, entries.getEntryId());
// SYSTEMDEFAULT
var sysdef = api.queryFieldsById("\'364000001\'==\"Systemdefault\"", defQuery.getFieldIds(), formDefault, null, 0, 0).get(0);
String sysdefGUID = sysdef.get(defQuery.getFieldId("InstanceId")).toString();
// reset selected preset
SelectPresetRequest spr = new SelectPresetRequest();
spr.setGuid(sysdefGUID);
selectPreset(spr);
} }
public List<Preset> getAll() throws NotFoundError, ARException { public List<Preset> getAll() throws NotFoundError, ARException {