Ejemplo n.º 1
0
        public static void UpdateShares(int taskId, List<Share> shares)
        {
            //Share a task with a user or group
            TdlrContext db = new TdlrContext();
            Task task = db.Tasks.Find(taskId);

            // Maintain that the task is shared with the owner
            AadObject user = task.SharedWith.Where(u => u.AadObjectID == task.Creator).FirstOrDefault();
            task.SharedWith = new List<AadObject>();
            task.SharedWith.Add(user);

            foreach (Share share in shares)
            {
                AadObject aadObject = db.AadObjects.Find(share.objectID);
                if (aadObject != null)
                {
                    aadObject.DisplayName = share.displayName;
                }
                else
                {
                    aadObject = new AadObject
                    {
                        AadObjectID = share.objectID,
                        DisplayName = share.displayName,
                    };
                }
                task.SharedWith.Add(aadObject);
            }
            db.SaveChanges();
        }
Ejemplo n.º 2
0
        public static Task AddTask(string taskText, string userObjectId, string userName)
        {
            // Add a new task to the db
            TdlrContext db = new TdlrContext();
            Task newTask = new Task
            {
                Status = "NotStarted",
                TaskText = taskText,
                Creator = userObjectId,
                SharedWith = new List<AadObject>(),
                CreatorName = userName,
            };

            // Get the AadObject representing from the user if it exists
            AadObject user = db.AadObjects.Find(userObjectId);
            if (user != null)
            {
                // Update the user's display name in case it has changed
                user.DisplayName = userName;
            }
            else
            {
                user = new AadObject
                {
                    AadObjectID = userObjectId,
                    DisplayName = userName,
                };
            }

            newTask.SharedWith.Add(user);
            db.Tasks.Add(newTask);
            db.SaveChanges();

            return newTask;
        }
Ejemplo n.º 3
0
 public static Task GetTask(int taskId)
 {
     // Get a specific Task from the db.
     TdlrContext db = new TdlrContext();
     Task task = db.Tasks.Find(taskId);
     var captureSharedWith = task.SharedWith;
     return task;
 }
Ejemplo n.º 4
0
 public static void DeleteTask(int taskId)
 {
     //Delete a task in the db
     TdlrContext db = new TdlrContext();
     Task task = db.Tasks.Find(taskId);
     db.Tasks.Remove(task);
     db.SaveChanges();
 }
Ejemplo n.º 5
0
 public static List<Task> GetAllTasks(List<string> objectIds)
 {
     // Get all tasks that the user has created or has been authorized to view.
     TdlrContext db = new TdlrContext();
     return db.Tasks.Where(
         t => t.SharedWith.Any(
             a => objectIds.Contains(a.AadObjectID)))
             .ToList();
 }
 public static void ClearUsersForTenant(string tenantId)
 {
     TdlrContext db = new TdlrContext();
     List<User> existingUsers = db.Users.Where(u => u.TenantId == tenantId).ToList();
     foreach (User user in existingUsers)
     {
         db.Users.Remove(user);
     }
     db.SaveChanges();
 }
 public static void SaveUsersForTenant(string tenantId, List<User> users)
 {
     TdlrContext db = new TdlrContext();
     List<User> existingUsers = db.Users.Where(u => u.TenantId == tenantId).AsNoTracking().ToList();
     foreach (User user in users)
     {
         User existingUser = existingUsers.Where(u => u.ObjectId == user.ObjectId).FirstOrDefault();
         if (existingUser != null)
         {
             db.Users.Attach(user);
             db.Entry(user).State = EntityState.Modified;
         }
         else
         {
             db.Users.Add(user);
         }
     }
     db.SaveChanges();
 }
Ejemplo n.º 8
0
        public static Task AddTask(string taskText, string userObjectId, string userName)
        {
            // Add a new task to the db
            TdlrContext db      = new TdlrContext();
            Task        newTask = new Task
            {
                Status      = "NotStarted",
                TaskText    = taskText,
                Creator     = userObjectId,
                SharedWith  = new List <AadObject>(),
                CreatorName = userName,
            };

            // Get the AadObject representing from the user if it exists
            AadObject user = db.AadObjects.Find(userObjectId);

            if (user != null)
            {
                // Update the user's display name in case it has changed
                user.DisplayName = userName;
            }
            else
            {
                user = new AadObject
                {
                    AadObjectID = userObjectId,
                    DisplayName = userName,
                };
            }

            newTask.SharedWith.Add(user);
            db.Tasks.Add(newTask);
            db.SaveChanges();

            return(newTask);
        }
Ejemplo n.º 9
0
 public static Task UpdateTask(int taskId, string status)
 {
     // Update an existing task in the db
     TdlrContext db = new TdlrContext();
     Task task = db.Tasks.Find(taskId);
     var captureSharedWith = task.SharedWith;
     if (task == null)
         throw new Exception("Task Not Found in DB");
     task.Status = status;
     db.SaveChanges();
     return task;
 }
 public static List<User> GetUsersForTenant(string tenantId)
 {
     TdlrContext db = new TdlrContext();
     List<User> users = db.Users.Where(u => u.TenantId == tenantId).AsNoTracking().ToList();
     return users ?? new List<User>();
 }