Added some helper functions to make removing files and folders in a Snapshot object easier.
This commit is contained in:
+27
-2
@@ -24,13 +24,18 @@ namespace DataOrganizer
|
||||
|
||||
ConnectionString = $"Data Source={DatabasePath}";
|
||||
|
||||
if (!Directory.Exists(new FileInfo(DatabasePath).Directory.FullName))
|
||||
if (!File.Exists(DatabasePath))
|
||||
{
|
||||
Directory.CreateDirectory(new FileInfo(DatabasePath).Directory.FullName);
|
||||
CreateDatabase();
|
||||
}
|
||||
}
|
||||
|
||||
public void DeleteDatabase()
|
||||
{
|
||||
if (File.Exists(DatabasePath)) File.Delete(DatabasePath);
|
||||
}
|
||||
|
||||
private void CreateDatabase()
|
||||
{
|
||||
//TODO: this is tmp
|
||||
@@ -345,6 +350,26 @@ namespace DataOrganizer
|
||||
}
|
||||
}
|
||||
|
||||
public string GetRootPathById(int id)
|
||||
{
|
||||
var query = @"SELECT path FROM folder_root WHERE root_id = @ID";
|
||||
|
||||
using (var connection = new SqliteConnection(ConnectionString))
|
||||
{
|
||||
using (var command = new SqliteCommand(query, connection))
|
||||
{
|
||||
command.Parameters.AddWithValue("ID", id);
|
||||
connection.Open();
|
||||
|
||||
var reader = command.ExecuteReader();
|
||||
|
||||
reader.Read();
|
||||
|
||||
return reader["path"].ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool UpdateNamingPatterById(int id, string newPattern)
|
||||
{
|
||||
var query = @"UPDATE main.naming_pattern SET regex = @pattern WHERE pattern_id = @ID";
|
||||
@@ -417,7 +442,7 @@ namespace DataOrganizer
|
||||
{
|
||||
foreach (var file in files)
|
||||
{
|
||||
command.Parameters.AddWithValue("FullPath", file.PathNoRoot.Remove(0, rootLength));
|
||||
command.Parameters.AddWithValue("FullPath", file.PathNoRoot.Remove(0, rootLength + 1)); //Remove the root and the trailing slash that the root folder would have.
|
||||
command.Parameters.AddWithValue("Name", file.Name);
|
||||
command.Parameters.AddWithValue("Size", file.Size);
|
||||
command.Parameters.AddWithValue("DateCreated", file.CreationDate);
|
||||
|
||||
Reference in New Issue
Block a user