Ejemplo n.º 1
0
        /// <summary>
        /// Добавить задачу
        /// </summary>
        /// <param name="model"></param>
        public void AddTask(TaskExtModel model)
        {
            Tasks.Add(model);

            /// Ленивая реализация - по-хорошему нужен отдельный event
            TasksUpdated?.Invoke(this, EventArgs.Empty);
        }
        public async Task AddTask(TaskModel model)
        {
            ListTasks.Add(model);
            TasksUpdated?.Invoke(this, null);

            var newModel = new TaskVm();

            newModel.Id           = model.Id;
            newModel.AssignedToId = model.Member;
            newModel.IsComplete   = model.IsDone;
            newModel.Subject      = model.Text;

            var result = await Create(newModel.ToCreateTaskCommand());

            if (result != null)
            {
                var updatedList = (await GetAllTasks()).Payload;

                if (updatedList != null)
                {
                    tasks = updatedList;
                    TasksChanged?.Invoke(this, null);
                    return;
                }
                UpdateTaskFailed?.Invoke(this, "The creation was successful, but we can no longer get an updated list of members from the server.");
            }

            UpdateTaskFailed?.Invoke(this, "Unable to create record.");
        }
        public async Task ToggleTask(Guid id)
        {
            foreach (var taskModel in Tasks)
            {
                if (taskModel.Id == id)
                {
                    taskModel.IsDone = !taskModel.IsDone;

                    var result = await Update(taskModel.ToUpdateTaskCommand());

                    Console.WriteLine(JsonSerializer.Serialize(result));

                    if (result != null)
                    {
                        var updatedList = (await GetAllTasks()).Payload;

                        if (updatedList != null)
                        {
                            tasks = updatedList;
                            TasksUpdated?.Invoke(this, null);
                            return;
                        }
                        UpdateTaskFailed?.Invoke(this, "The save was successful, but we can no longer get an updated list of members from the server.");
                    }

                    UpdateTaskFailed?.Invoke(this, "Unable to save changes.");
                }
            }
        }
Ejemplo n.º 4
0
        private void OnTextBufferChanged(object sender, TextContentChangedEventArgs e)
        {
            if (_settings.SyntaxCheckEnabled && e.Changes.Count > 0)
            {
                var change = e.ToTextChange();
                _errorTags.ReflectTextChange(change.Start, change.OldLength, change.NewLength,
                                             trivialChange: !_document.EditorTree.IsReady);

                if (_errorTags.RemovedTags.Count > 0 && TagsChanged != null)
                {
                    var start = int.MaxValue;
                    var end   = int.MinValue;

                    foreach (var errorTag in _errorTags.RemovedTags)
                    {
                        start = Math.Min(start, errorTag.Start);
                        end   = Math.Max(end, errorTag.End);
                    }

                    // RemovedTags haven't had their positions updated, verify their
                    //   values won't break the SnapshotSpan creation
                    var snapshot = _textBuffer.CurrentSnapshot;
                    start = Math.Min(start, snapshot.Length);
                    end   = Math.Min(end, snapshot.Length);

                    TagsChanged(this, new SnapshotSpanEventArgs(
                                    new SnapshotSpan(snapshot, start, end - start)));
                }

                TasksUpdated?.Invoke(this, EventArgs.Empty);
            }
        }
Ejemplo n.º 5
0
        public async Task ToggleTask(Guid id)
        {
            var taskVm = Tasks.FirstOrDefault(x => x.Id == id);

            if (taskVm == null)
            {
                throw new ArgumentNullException("Task was not choosen.");
            }
            var result = await Complete(taskVm.ToCompleteTaskCommand());

            if (result != null && result.Succees)
            {
                foreach (var taskModel in Tasks)
                {
                    if (taskModel.Id == id)
                    {
                        taskModel.IsComplete = true;
                    }
                }
                TasksUpdated?.Invoke(this, null);
            }
            else
            {
                CompleteTaskFailed.Invoke(this, "Unable to complete task.");
            }
        }
Ejemplo n.º 6
0
        private void OnTextBufferChanged(object sender, TextContentChangedEventArgs e)
        {
            if (REditorSettings.SyntaxCheck && e.Changes.Count > 0)
            {
                var changes = TextUtility.ConvertToRelative(e);
                foreach (var change in changes)
                {
                    _errorTags.ReflectTextChange(change.Start, change.OldLength, change.NewLength,
                                                 trivialChange: !_document.EditorTree.IsReady);
                }

                if ((_errorTags.RemovedTags.Count > 0) && (TagsChanged != null))
                {
                    int start = Int32.MaxValue;
                    int end   = Int32.MinValue;

                    foreach (var errorTag in _errorTags.RemovedTags)
                    {
                        start = Math.Min(start, errorTag.Start);
                        end   = Math.Max(end, errorTag.End);
                    }

                    // RemovedTags haven't had their positions updated, verify their
                    //   values won't break the SnapshotSpan creation
                    ITextSnapshot snapshot = _textBuffer.CurrentSnapshot;
                    start = Math.Min(start, snapshot.Length);
                    end   = Math.Min(end, snapshot.Length);

                    TagsChanged(this, new SnapshotSpanEventArgs(
                                    new SnapshotSpan(snapshot, start, end - start)));
                }

                TasksUpdated?.Invoke(this, EventArgs.Empty);
            }
        }
Ejemplo n.º 7
0
        public async Task AssignTaskToMember(Guid taskId, Guid memberId)
        {
            await _httpClient.PutJsonAsync($"tasks/{taskId}/assign-to/{memberId}", null);

            await LoadData();

            TasksUpdated?.Invoke(this, EventArgs.Empty);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Удалить модель
        /// </summary>
        /// <param name="model"></param>
        public void DeleteTask(TaskExtModel model)
        {
            Tasks.Remove(model);

            /// Ленивая реализация - по-хорошему нужен отдельный event
            TasksUpdated?.Invoke(this, EventArgs.Empty);

            TaskProvider.Delete(model.Id);
        }
        public async void ToggleTask(Guid id)
        {
            var taskModel = Tasks.First(x => x.Id == id);

            taskModel.IsComplete = !taskModel.IsComplete;

            await Update(taskModel.ToUpdateTaskCommand());

            TasksUpdated?.Invoke(this, null);
        }
Ejemplo n.º 10
0
        public async Task AddTask(CreateTaskVm model)
        {
            var result = await Create(model.ToCreateTaskCommand());

            if (result != null)
            {
                Loadtasks();
            }

            TasksUpdated?.Invoke(this, null);
        }
Ejemplo n.º 11
0
 /// <summary>
 /// Method to set the selected task details when user selects a particular task from UI
 /// </summary>
 /// <param name="id"></param>
 public void SelectTask(Guid id)
 {
     if (tasks.All(taskVm => taskVm.Id != id))
     {
         return;
     }
     {
         SelectedTask = tasks.SingleOrDefault(taskVm => taskVm.Id == id);
         TasksUpdated?.Invoke(this, null);
     }
 }
Ejemplo n.º 12
0
        public async Task AssignTask(TaskVm model)
        {
            var result = await Assign(model.ToAssignMemberCommand());

            if (result != null && result.Succeed)
            {
                Loadtasks();
            }

            TasksUpdated?.Invoke(this, null);
        }
Ejemplo n.º 13
0
        public async Task ToggleTask(Guid id)
        {
            var result = await Toggle(id);

            if (result != null)
            {
                Loadtasks();
            }

            TasksUpdated?.Invoke(this, null);
        }
Ejemplo n.º 14
0
        public void UpdateTasks(IEnumerable <Task> tasks)
        {
            var newTasks = tasks.Except(_tasks).ToList();

            if (!newTasks.Any())
            {
                return;
            }
            var e = new TasksUpdated(Id, newTasks.ToList());

            Publish(e);
        }
        private async void LoadTasks()
        {
            var updatedList = (await GetAllTasks()).Payload;

            if (updatedList != null)
            {
                Tasks = updatedList;
                TasksUpdated?.Invoke(this, null);
                return;
            }
            CreateTaskFailed?.Invoke(this, "We didn't get the list of the tasks.");
        }
        private async Task RefreshTask()
        {
            var updatedTasks = (await GetAllTasks()).Payload;

            if (updatedTasks != null)
            {
                Tasks = updatedTasks.ToList();
                TasksUpdated?.Invoke(this, null);
                return;
            }
            TaskFailed?.Invoke(this, "Error while refreshing task list.");
        }
Ejemplo n.º 17
0
        public void ToggleTask(Guid id)
        {
            foreach (var taskModel in Tasks)
            {
                if (taskModel.Id == id)
                {
                    taskModel.IsComplete = !taskModel.IsComplete;
                }
            }

            TasksUpdated?.Invoke(this, null);
        }
        /// <summary>
        /// Loads the tasks.
        /// </summary>
        private async void LoadTasks()
        {
            var tasks = (await GetAllTasks()).Payload;

            if (tasks != null)
            {
                Tasks = tasks;
                TasksUpdated?.Invoke(this, null);
                return;
            }
            CreateTaskFailed?.Invoke(this, "Load tasks operation failed");
        }
Ejemplo n.º 19
0
        public async Task CreateTask(TaskModel model)
        {
            await _httpClient.PostJsonAsync("tasks",
                                            new CreateTaskCommand
            {
                Subject = model.Text
            });

            await LoadData();

            TasksUpdated?.Invoke(this, EventArgs.Empty);
        }
Ejemplo n.º 20
0
        private async void LoadTasks()
        {
            var updatedList = (await GetAllTasks()).Payload;

            if (updatedList != null)
            {
                Tasks = updatedList?.ToList();
                TasksUpdated?.Invoke(this, null);
                return;
            }
            CreateTaskFailed?.Invoke(this, "The creation was successful, but we can no longer get an updated list of tasks from the server.");
        }
Ejemplo n.º 21
0
        public async System.Threading.Tasks.Task ToggleTask(Guid id)
        {
            foreach (var taskModel in Tasks)
            {
                if (taskModel.Id == id)
                {
                    taskModel.IsComplete = !taskModel.IsComplete;
                    await UpdateTask(taskModel);
                }
            }

            TasksUpdated?.Invoke(this, null);
        }
Ejemplo n.º 22
0
 public async Task ToggleTaskAsync(Guid id)
 {
     foreach (var taskModel in Tasks)
     {
         if (taskModel.Id != id)
         {
             continue;
         }
         taskModel.IsComplete = !taskModel.IsComplete;
         await UpdateTask(taskModel);
     }
     TasksUpdated?.Invoke(this, null);
 }
Ejemplo n.º 23
0
        public void DropTask(Guid memberId, Guid taskId)
        {
            foreach (var taskModel in Tasks)
            {
                if (taskModel.Id == taskId)
                {
                    taskModel.AssignedToId = memberId;

                    var result = Update(taskModel.ToUpdateTaskCommand());
                }
            }

            TasksUpdated?.Invoke(this, null);
        }
Ejemplo n.º 24
0
        /// <summary>
        /// Toggle task completion status on check box click
        /// </summary>
        /// <param name="model"></param>

        public void ToggleTask(TaskVm model)
        {
            foreach (var taskModel in Tasks)
            {
                if (taskModel.Id == model.Id)
                {
                    model.IsComplete = !model.IsComplete;
                    UpdateTask(model);
                    taskModel.IsComplete = !taskModel.IsComplete;
                }
            }

            TasksUpdated?.Invoke(this, null);
        }
        public async Task CompleteTask(Guid id)
        {
            var completeTask = Tasks.FirstOrDefault(x => x.Id == id);

            completeTask.IsComplete = true;
            var result = await Update(completeTask.ToUpdateTaskCommand());

            if (result != null)
            {
                await RefreshTask();
            }
            TaskFailed?.Invoke(this, "Unable to complete task");
            TasksUpdated?.Invoke(this, null);
        }
Ejemplo n.º 26
0
        public async void AddTask(TaskVm model)
        {
            var result = await Create(model.ToCreateTaskCommand());

            if (result != null)
            {
                var updatedList = (await GetAllTasks()).Payload.ToList();

                if (updatedList != null)
                {
                    Tasks = updatedList;
                    TasksUpdated?.Invoke(this, null);
                }
            }
        }
Ejemplo n.º 27
0
        public async Task ToggleTask(Guid id)
        {
            var taskVm = _tasks.SingleOrDefault(task => task.Id == id);
            var result = await Complete(taskVm.ToCompleteTaskCommand());

            if (result?.Succeed ?? false)
            {
                taskVm.IsComplete = true;
                TasksUpdated?.Invoke(this, null);
            }
            else
            {
                CompleteTaskFailed.Invoke(this, "Unable to complete task.");
            }
        }
 public async void AssignTask(Guid taskId, Guid memberId)
 {
     foreach (var taskModel in ListTasks)
     {
         if (taskModel.Id == taskId)
         {
             taskModel.Member = memberId;
             TaskVm model = new TaskVm();
             model.AssignedToId = memberId;
             model.Id           = taskModel.Id;
             model.IsComplete   = taskModel.IsDone;
             model.Subject      = taskModel.Text;
             await UpdateTask(model);
         }
     }
     TasksUpdated?.Invoke(this, null);
 }
Ejemplo n.º 29
0
        /// <summary>
        /// Update task
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>

        public async Task UpdateTask(TaskVm model)
        {
            var result = await Update(model.ToUpdateTaskCommand());

            Console.WriteLine(JsonSerializer.Serialize(result));

            if (result != null)
            {
                var updatedList = (await GetAllMembers()).Payload;

                if (updatedList != null)
                {
                    tasks = updatedList;
                    TasksUpdated?.Invoke(this, null);
                    return;
                }
            }
        }
        public async Task AddTask(TaskVm model)
        {
            var result = await Create(model.ToCreateTaskCommand());

            if (result != null)
            {
                var updatedList = (await GetAllTasks()).Payload;

                if (updatedList != null)
                {
                    _tasks = updatedList;
                    TasksUpdated?.Invoke(this, null);
                    return;
                }
                UpdateTaskFailed?.Invoke(this, "The creation was successful, but we can no longer get an updated list of tasks from the server.");
            }
            UpdateTaskFailed?.Invoke(this, "Unable to create record.");
        }