удаление учетной записи с сервера

This commit is contained in:
2025-02-19 14:34:42 +03:00
parent 8215388bc6
commit 7a9c70f396
6 changed files with 43 additions and 8 deletions

4
.idea/workspace.xml generated
View File

@@ -7,13 +7,11 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment=""> <list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/PublishUserAccount.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DeleteUserAccount.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/ComponentsServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/ComponentsServer.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/ComponentsServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/ComponentsServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/UserAccount/UI/UserAccountsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/UserAccount/UI/UserAccountsForm.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/UserAccount/UI/UserAccountsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/UserAccount/UI/UserAccountsForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/UserAccount/UserAccount.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/UserAccount/UserAccount.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/PublishServerObject.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/PublishServerObject.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />

View File

@@ -131,6 +131,9 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
if (object instanceof BugReport) { if (object instanceof BugReport) {
BugReport bugReport = (BugReport) object; BugReport bugReport = (BugReport) object;
if (!bugReport.project_version.isEmpty()) Utils_.forceDeleteWithCheck(bugReport.getArchiveFile()); if (!bugReport.project_version.isEmpty()) Utils_.forceDeleteWithCheck(bugReport.getArchiveFile());
}else if (object instanceof UserAccount){
UserAccount account = (UserAccount) object;
Utils_.forceDeleteWithCheck(account.getServerKeyFile());
} }
} }
@Override @Override
@@ -349,7 +352,6 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
void PublishUserAccount() throws Exception { void PublishUserAccount() throws Exception {
DBObject dbObject = (DBObject) request.object; DBObject dbObject = (DBObject) request.object;
response.object = (Serializable) credentials_db.InsertS(dbObject).getPK(); response.object = (Serializable) credentials_db.InsertS(dbObject).getPK();
//--
credentials_db.userAccounts.get(response.object).generateKey(); credentials_db.userAccounts.get(response.object).generateKey();
} }
void EditUserAccount() throws Exception { void EditUserAccount() throws Exception {
@@ -357,7 +359,8 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
credentials_db.UpdateWithCheck(new_object); credentials_db.UpdateWithCheck(new_object);
} }
void DeleteUserAccount() throws Exception { void DeleteUserAccount() throws Exception {
Pair<Class, Object> to_delete = (Pair<Class, Object>) request.object;
afterDeleteAction(credentials_db.DeleteByPK(to_delete.getKey(), to_delete.getValue()));
} }
//-- //--
@Override @Override
@@ -422,6 +425,9 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
case DVMConvertProject: case DVMConvertProject:
DVMConvertProject(); DVMConvertProject();
break; break;
case DeleteUserAccount:
DeleteUserAccount();
break;
default: default:
throw new RepositoryRefuseException("Неподдерживаемый код: " + code); throw new RepositoryRefuseException("Неподдерживаемый код: " + code);
} }

View File

@@ -51,7 +51,8 @@ public class UserAccountsForm extends DataSetControlForm<UserAccount> {
protected DataMenuBar createMenuBar() { protected DataMenuBar createMenuBar() {
return new DataMenuBar(dataSource.getPluralDescription(), PassCode.SynchronizeCredentials, return new DataMenuBar(dataSource.getPluralDescription(), PassCode.SynchronizeCredentials,
PassCode.PublishUserAccount, PassCode.PublishUserAccount,
PassCode.EditUserAccount); PassCode.EditUserAccount,
PassCode.DeleteUserAccount);
} }
@Override @Override
protected DBObjectDialog getDialog() { protected DBObjectDialog getDialog() {

View File

@@ -0,0 +1,24 @@
package _VisualDVM.Passes.All;
import Common.Database.Database;
import _VisualDVM.ComponentsServer.ComponentsServer;
import _VisualDVM.ComponentsServer.UserAccount.UserAccount;
import _VisualDVM.Global;
import _VisualDVM.Passes.Server.DeleteServerObject;
import _VisualDVM.Repository.Server.SafeServerExchangeUnit;
import _VisualDVM.Repository.Server.ServerCode;
import _VisualDVM.ServerObjectsCache.VisualCaches;
import javafx.util.Pair;
public class DeleteUserAccount extends DeleteServerObject<ComponentsServer, UserAccount> {
public DeleteUserAccount() {
super(Global.componentsServer, UserAccount.class);
}
@Override
protected Database getDb() {
return server.credentials_db;
}
@Override
protected void ServerAction() throws Exception {
Command(new SafeServerExchangeUnit(ServerCode.DeleteUserAccount, "",
new Pair<>(target.getClass(), target.getPK())));
}
}

View File

@@ -357,7 +357,8 @@ public enum PassCode implements PassCode_ {
ConfirmEmail, ConfirmEmail,
SynchronizeCredentials, SynchronizeCredentials,
PublishUserAccount, PublishUserAccount,
EditUserAccount EditUserAccount,
DeleteUserAccount
; ;
//-- //--
@Override @Override
@@ -367,6 +368,8 @@ public enum PassCode implements PassCode_ {
return "Добавление учётной записи"; return "Добавление учётной записи";
case EditUserAccount: case EditUserAccount:
return "Редактирование учётной записи"; return "Редактирование учётной записи";
case DeleteUserAccount:
return "Удаление учётной записи";
case SynchronizeCredentials: case SynchronizeCredentials:
return "Синхронизация учётных записей"; return "Синхронизация учётных записей";
case ConfirmEmail: case ConfirmEmail:

View File

@@ -66,9 +66,12 @@ public enum ServerCode {
GetUserAccountByKey, GetUserAccountByKey,
GetUserAccountByEmail, GetUserAccountByEmail,
EditUserAccount, EditUserAccount,
PublishUserAccount; PublishUserAccount,
DeleteUserAccount;
public String getDescription(){ public String getDescription(){
switch (this){ switch (this){
case DeleteUserAccount:
return "Удаление учётной записи на сервере";
case PublishUserAccount: case PublishUserAccount:
return "Создание учётной записи на сервере"; return "Создание учётной записи на сервере";
case EditUserAccount: case EditUserAccount: