Diverse Bugfixes, Terminator
This commit is contained in:
@@ -202,7 +202,7 @@ namespace BeWoDatabaseTerminator.MySql
|
||||
|
||||
var command = new MySqlCommand(
|
||||
"INSERT INTO applicationUser(EmployeeOid, Tid, LoginName, Password, Version, UdpUser, InsUser, InsTs, IsActive, Salt, PasswordHash) " +
|
||||
$"VALUES({employeeOid}, 28, 'admin', '{userCredentials.HashedPassword}', 1, 'Max Mustermann', 'Max Mustermann', NOW(), 1, '{userCredentials.Salt}', '{userCredentials.BCryptPassword}')", _Connection);
|
||||
$"VALUES({employeeOid}, 28, 'm1', '{userCredentials.HashedPassword}', 1, 'Max Mustermann', 'Max Mustermann', NOW(), 1, '{userCredentials.Salt}', '{userCredentials.BCryptPassword}')", _Connection);
|
||||
|
||||
command.ExecuteNonQuery();
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@ namespace BeWoDatabaseTerminator
|
||||
private static string _ConnectionStringPort;
|
||||
|
||||
private static string _MultitenancyPath;
|
||||
private static string _BackupConfigFolderPath;
|
||||
private static string _CreateScriptsFolderPath;
|
||||
|
||||
private static string _ServerName;
|
||||
@@ -84,6 +85,7 @@ namespace BeWoDatabaseTerminator
|
||||
|
||||
_ServerName = ConfigurationManager.AppSettings["ServerName"];
|
||||
_MultitenancyPath = ConfigurationManager.AppSettings["MultitenancyPath"];
|
||||
_BackupConfigFolderPath = ConfigurationManager.AppSettings["BackupConfigFolderPath"];
|
||||
_CreateScriptsFolderPath = ConfigurationManager.AppSettings["CreateScriptsFolderPath"];
|
||||
_ConnectionStringServer = ConfigurationManager.AppSettings["ConnectionStringServer"];
|
||||
_ConnectionStringPassword = ConfigurationManager.AppSettings["ConnectionStringPassword"];
|
||||
@@ -143,7 +145,7 @@ namespace BeWoDatabaseTerminator
|
||||
{
|
||||
var contractStatus = contractStatusKeyValuePair.Value;
|
||||
|
||||
if (contractStatus.Tenant == "3614370592")
|
||||
if (contractStatus.Tenant == "5564670353")
|
||||
{
|
||||
|
||||
}
|
||||
@@ -162,7 +164,9 @@ namespace BeWoDatabaseTerminator
|
||||
{
|
||||
FileUtils.WriteLog($"Deaktiviere Datenbank `{contractStatus.Tenant}`.", _LogFilePath);
|
||||
ToggleConfigActivation(contractStatus, false);
|
||||
|
||||
ToggleBackupConfigActivation(contractStatus, false);
|
||||
|
||||
|
||||
}
|
||||
|
||||
if(contractStatus.Delete == 1)
|
||||
@@ -286,7 +290,7 @@ namespace BeWoDatabaseTerminator
|
||||
//connectionString = isExisting ? ExtractConnectionString(configFilePath) : connectionString;
|
||||
|
||||
ToggleConfigActivation(contractStatus, true);
|
||||
|
||||
ToggleBackupConfigActivation(contractStatus, true);
|
||||
//if(!isExisting)
|
||||
//{
|
||||
// RunCreateScripts(tenant, connectionString);
|
||||
@@ -365,6 +369,31 @@ namespace BeWoDatabaseTerminator
|
||||
}
|
||||
}
|
||||
|
||||
private static void ToggleBackupConfigActivation(ContractStatus contractStatus, bool isToBeActivated)
|
||||
{
|
||||
var fileName1 = isToBeActivated ? $"{contractStatus.Tenant}.db2mail.deactivated" : $"{contractStatus.Tenant}.db2mail";
|
||||
var fileName2 = isToBeActivated ? $"{contractStatus.Tenant}.db2mail" : $"{contractStatus.Tenant}.db2mail.deactivated";
|
||||
|
||||
var path1 = Path.Combine(_BackupConfigFolderPath, fileName1);
|
||||
var path2 = Path.Combine(_BackupConfigFolderPath, fileName2);
|
||||
|
||||
if (File.Exists(path1) && !File.Exists(path2))
|
||||
{
|
||||
File.Move(path1, path2);
|
||||
if (File.Exists(path1))
|
||||
{
|
||||
File.Delete(path1);
|
||||
|
||||
}
|
||||
|
||||
FileUtils.WriteLog($"{contractStatus.Tenant}.db2mail {(isToBeActivated == false ? "de" : string.Empty)}aktiviert.", _LogFilePath);
|
||||
}
|
||||
else
|
||||
{
|
||||
FileUtils.WriteLog($"Fehler beim {(isToBeActivated == false ? "Dea" : "A")}ktivieren: {fileName1} existiert nicht oder {fileName2} existiert.", _LogFilePath);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Erzeugt eine neue Datenbank, passt sie dem neuesten Stand an und füllt sie mit Basisdaten.
|
||||
/// </summary>
|
||||
@@ -383,10 +412,11 @@ namespace BeWoDatabaseTerminator
|
||||
Directory.CreateDirectory(_MultitenancyPath);
|
||||
}
|
||||
#endif
|
||||
if (Directory.Exists(_CreateScriptsFolderPath) && Directory.Exists(_MultitenancyPath))
|
||||
if (Directory.Exists(_CreateScriptsFolderPath) && Directory.Exists(_MultitenancyPath) && Directory.Exists(_BackupConfigFolderPath))
|
||||
{
|
||||
FileUtils.GenerateNewConfigFile(Path.Combine(_MultitenancyPath, $"{tenant}.config"), connectionString);
|
||||
|
||||
FileUtils.GenerateNewConfigFile(Path.Combine(_MultitenancyPath, $"{tenant}.config"), connectionString, tenant);
|
||||
FileUtils.GenerateNewDBAdminFile(Path.Combine(_CreateAdminFolderPath, $"{tenant}.db2mail"), connectionString, tenant);
|
||||
|
||||
var createScriptPath = Path.Combine(_CreateScriptsFolderPath, _CreateScriptName);
|
||||
var changesScriptPath = Path.Combine(_CreateScriptsFolderPath, _ChangesScriptName);
|
||||
var insertScriptPath = Path.Combine(_CreateScriptsFolderPath, _InsertScriptName);
|
||||
|
||||
@@ -6,7 +6,7 @@ namespace BeWoDatabaseTerminator.Utils
|
||||
public static class FileUtils
|
||||
{
|
||||
// Wird nach dem Laden der Stati aufgerufen. Enthält also den neuen Status.
|
||||
public static void GenerateNewConfigFile(string pathToConfigFile, string connectionString, bool isDeactivated = false)
|
||||
public static void GenerateNewConfigFile(string pathToConfigFile, string connectionString, string tenant, bool isDeactivated = false)
|
||||
{
|
||||
var config = pathToConfigFile;
|
||||
|
||||
@@ -30,7 +30,7 @@ namespace BeWoDatabaseTerminator.Utils
|
||||
"NHibernate.Driver.MySqlDataDriver\r\n\t\t\t" +
|
||||
"</property>\r\n\t\t\t" +
|
||||
"<property name=\"connection.connection_string\">\r\n\t\t\t\t" +
|
||||
$"{connectionString}\r\n\t\t\t" +
|
||||
$"{connectionString};Initial Catalog={tenant}\r\n\t\t\t" +
|
||||
"</property>\r\n\t\t\t" +
|
||||
"<property name=\"dialect\">\r\n\t\t\t\t" +
|
||||
"NHibernate.Dialect.MySQLDialect\r\n\t\t\t" +
|
||||
@@ -49,6 +49,36 @@ namespace BeWoDatabaseTerminator.Utils
|
||||
File.WriteAllText(config, configText);
|
||||
}
|
||||
|
||||
public static void GenerateNewDBAdminFile(string pathToFile, string tenant, string port, string username, string password, bool isDeactivated = false)
|
||||
{
|
||||
//
|
||||
//Mittelpunkt GbR
|
||||
//cb@ownsoft.de
|
||||
//localhost
|
||||
//2206
|
||||
//5564670353
|
||||
//BeWoUser
|
||||
//BeWoPl@ner!
|
||||
|
||||
var config = pathToFile;
|
||||
|
||||
if (isDeactivated)
|
||||
{
|
||||
config += ".deactivated";
|
||||
}
|
||||
|
||||
var text =
|
||||
$"{tenant}\r\n" +
|
||||
"cb@ownsoft.de\r\n" +
|
||||
"localhost\r\n" +
|
||||
$"{port}\r\n" +
|
||||
$"{tenant}\r\n" +
|
||||
$"{username}\r\n" +
|
||||
$"{password}\r\n";
|
||||
|
||||
File.WriteAllText(pathToFile, text);
|
||||
}
|
||||
|
||||
public static void WriteLog(string message, string logFilePath)
|
||||
{
|
||||
if(string.IsNullOrEmpty(logFilePath) || !Directory.Exists(logFilePath))
|
||||
|
||||
Reference in New Issue
Block a user