aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOgnjen Cirkovic <ciraboxkg@gmail.com>2022-04-19 17:32:04 +0200
committerOgnjen Cirkovic <ciraboxkg@gmail.com>2022-04-19 17:32:04 +0200
commit0af2ddb9f7fbdb48b043ae030709eac8def794bb (patch)
treee343550dc358a66452efba034b4b267f987276f1
parent054d567cef92cae42cd75f56c55e16febdac658c (diff)
Promenjeno brisanje temp fajlova i dodato brisanje za tempKorisnika.
-rw-r--r--backend/api/api/Models/User.cs3
-rw-r--r--backend/api/api/Services/AuthService.cs9
-rw-r--r--backend/api/api/Services/IAuthService.cs1
-rw-r--r--backend/api/api/Services/TempRemovalService.cs69
4 files changed, 43 insertions, 39 deletions
diff --git a/backend/api/api/Models/User.cs b/backend/api/api/Models/User.cs
index ce289af1..bea467fa 100644
--- a/backend/api/api/Models/User.cs
+++ b/backend/api/api/Models/User.cs
@@ -26,6 +26,7 @@ namespace api.Models
public string photoId { get; set; }
public bool isPermament { get; set; }
-
+ public DateTime dateCreated { get; set; }
+
}
}
diff --git a/backend/api/api/Services/AuthService.cs b/backend/api/api/Services/AuthService.cs
index b734fa7a..7fd0c59f 100644
--- a/backend/api/api/Services/AuthService.cs
+++ b/backend/api/api/Services/AuthService.cs
@@ -38,6 +38,7 @@ namespace api.Services
u.LastName = user.lastName;
u.photoId = "1";
u.isPermament = true;
+ u.dateCreated= DateTime.Now.ToUniversalTime();
if (_users.Find(user => user.Username == u.Username).FirstOrDefault() != null)
return "Username Already Exists";
if (_users.Find(user => user.Email == u.Email).FirstOrDefault() != null)
@@ -46,13 +47,6 @@ namespace api.Services
_users.InsertOne(u);
return "User added";
}
- public void RegisterGuest()
- {
- User u=new User();
- u._id = "";
- _users.InsertOne(u);
- _jwt.GenGuestToken(u._id);
- }
public string RenewToken(string header)
{
@@ -70,6 +64,7 @@ namespace api.Services
{
User u = new User();
u._id = "";
+ u.dateCreated = DateTime.Now.ToUniversalTime();
_users.InsertOne(u);
return _jwt.GenGuestToken(u._id);
diff --git a/backend/api/api/Services/IAuthService.cs b/backend/api/api/Services/IAuthService.cs
index 4ed9a761..9a109208 100644
--- a/backend/api/api/Services/IAuthService.cs
+++ b/backend/api/api/Services/IAuthService.cs
@@ -8,6 +8,5 @@ namespace api.Services
string Register(RegisterRequest user);
string RenewToken(string token);
public string GuestToken();
- public void RegisterGuest();
}
} \ No newline at end of file
diff --git a/backend/api/api/Services/TempRemovalService.cs b/backend/api/api/Services/TempRemovalService.cs
index 302ca974..9e6b7f96 100644
--- a/backend/api/api/Services/TempRemovalService.cs
+++ b/backend/api/api/Services/TempRemovalService.cs
@@ -10,6 +10,8 @@ namespace api.Services
private readonly IMongoCollection<Model> _model;
private readonly IMongoCollection<Dataset> _dataset;
private readonly IMongoCollection<Experiment> _experiment;
+ private readonly IMongoCollection<User> _user;
+ private readonly IMongoCollection<Predictor> _predictor;
public TempRemovalService(IUserStoreDatabaseSettings settings, IMongoClient mongoClient)
{
@@ -18,43 +20,42 @@ namespace api.Services
_model= database.GetCollection<Model>(settings.ModelCollectionName);
_dataset = database.GetCollection<Dataset>(settings.DatasetCollectionName);
_experiment= database.GetCollection<Experiment>(settings.ExperimentCollectionName);
+ _user = database.GetCollection<User>(settings.CollectionName);
+ _predictor = database.GetCollection<Predictor>(settings.PredictorCollectionName);
+
}
- public void DeleteTemps()
+ public void DeleteTemps()
{
- List<FileModel> files = _file.Find(file => file.uploaderId == "").ToList();
- foreach (var file in files)
+ List<User> tempUsers=_user.Find(u=>u.isPermament==false).ToList();
+ foreach (User user in tempUsers)
{
- if ((DateTime.Now.ToUniversalTime() - file.date).TotalDays >= 1)
+ if ((DateTime.Now.ToUniversalTime() - user.dateCreated).TotalDays < 1)
+ continue;
+ List<Predictor> tempPredictors=_predictor.Find(p=>p.uploaderId==user._id).ToList();
+ List<Model> tempModels=_model.Find(m=>m.uploaderId==user._id).ToList();
+ List<Experiment> tempExperiment = _experiment.Find(e => e.uploaderId == user._id).ToList();
+ List<Dataset> tempDatasets = _dataset.Find(d => d.uploaderId == user._id).ToList();
+ List<FileModel> tempFiles = _file.Find(f => f.uploaderId == user._id).ToList();
+
+
+ foreach (Predictor predictor in tempPredictors)
+ DeletePredictor(predictor._id);
+ foreach(Model model in tempModels)
+ DeleteModel(model._id);
+ foreach(Experiment experiment in tempExperiment)
+ DeleteExperiment(experiment._id);
+ foreach(Dataset dataset in tempDatasets)
+ DeleteDataset(dataset._id);
+ foreach(FileModel file in tempFiles)
{
DeleteFile(file._id);
- List<Dataset> datasets = _dataset.Find(dataset => dataset.fileId == file._id && dataset.uploaderId=="").ToList();
- foreach(var dataset in datasets)
- {
- DeleteDataset(dataset._id);
- List<Experiment> experiments = _experiment.Find(experiment=>experiment.datasetId== dataset._id && experiment.uploaderId=="").ToList();
- foreach(var experiment in experiments)
- {
- DeleteExperiment(experiment._id);
- foreach(var modelId in experiment.ModelIds)
- {
- var delModel=_model.Find(model=> modelId== model._id && model.uploaderId=="").FirstOrDefault();
- if(delModel!= null)
- DeleteModel(delModel._id);
- }
- }
- }
- if (File.Exists(file.path))
+ if(File.Exists(file.path))
File.Delete(file.path);
}
- }
- //Brisanje modela ukoliko gost koristi vec postojeci dataset
- List<Model> models1= _model.Find(model =>model.uploaderId == "").ToList();
- foreach(var model in models1)
- {
- if ((DateTime.Now.ToUniversalTime() - model.dateCreated.ToUniversalTime()).TotalDays >= 1)
- {
- DeleteModel(model._id);
- }
+ DeleteUser(user._id);
+
+
+
}
@@ -79,6 +80,14 @@ namespace api.Services
{
_experiment.DeleteOne(experiment => experiment._id == id);
}
+ public void DeletePredictor(string id)
+ {
+ _predictor.DeleteOne(predictor=> predictor._id == id);
+ }
+ public void DeleteUser(string id)
+ {
+ _user.DeleteOne(user=>user._id == id);
+ }
}