public bool EditTask([FromBody] TaskManager.Models.Task task)
        {
            var user = _userBll.GetUser(task.Email);

            task.UserId = user.UserId;
            return(_taskBll.EditTask(_mapper.TaskToTaskDto(task)));
        }
예제 #2
0
        public async Task EndActiveTask()
        {
            await new ActiveTaskHelper().EndActiveTask(this.Task);
            await Repository.Instance.FetchAll();

            this.Task = null;
        }
예제 #3
0
        public async Task <bool> IsUserHaveActiveTask(string userId)
        {
            var task = await new ActiveTaskHelper().IsUserHaveActiveTask(userId);

            if (task != null)
            {
                this.Task = task;
                return(true);
            }

            return(false);
        }
예제 #4
0
        public IActionResult PostTask([FromBody] TaskManager.Models.Task task)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.BadRequest(this.ModelState));
            }

            this.taskService.Add(task);
            this.notificationService.SendNotification($"Dodano task - {task.Name}");

            return(this.Ok(task));
        }
 public async Task <ActionResult <TaskManager.Models.Task> > AddNewTask([FromBody] TaskManager.Models.Task task)
 {
     try
     {
         var user = _userBll.GetUser(task.Email);
         task.UserId = user.UserId;
         var newTask = _taskBll.AddNewTask(_mapper.TaskToTaskDto(task));
         var result  = _mapper.TaskDtoToTask(newTask);
         return(CreatedAtAction(nameof(AddNewTask), new { email = user.Email }, result));
     }
     catch (Exception e)
     {
         _logger.Error("Exception Thrown", e);
         throw;
     }
 }
        public async Task <ValidationResult> AddTaskToDatabase(AddNewTaskViewModel vm)
        {
            var validationResult = NewTaskForm.IsValid(vm);

            if (validationResult.IsValid)
            {
                int?storyPoints = null;

                try
                {
                    if (vm.TaskNameTextBox.Contains(","))
                    {
                        var substring = vm.TaskNameTextBox.Substring(vm.TaskNameTextBox.IndexOf(",") + 1);
                        storyPoints        = Convert.ToInt32(substring.Replace(" ", string.Empty));
                        vm.TaskNameTextBox = vm.TaskNameTextBox.Substring(0, vm.TaskNameTextBox.IndexOf(","));
                    }
                }
                catch (FormatException)
                {
                    validationResult.Message = "SP podajemy po przecinku jako liczba!";
                    validationResult.IsValid = false;

                    return(validationResult);
                }

                var newTask = new TaskManager.Models.Task
                {
                    Name        = vm.TaskNameTextBox,
                    Description = vm.DescriptionTextBox,
                    Priority    = vm.Priority,
                    ProjectId   = Repository.Instance.Projects.Single(p => p.Name == vm.SelectedProjectsList).Id,
                    StoryPoints = storyPoints
                };

                var httpDataService  = new HttpDataService();
                var taskFromResponse = await httpDataService.Post(newTask);

                await Repository.Instance.FetchUpdates();

                validationResult.Message = "Task dodano pomyślnie!";
            }

            return(validationResult);
        }
예제 #7
0
        public IActionResult PutTask([FromRoute] int id, [FromBody] TaskManager.Models.Task task)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.BadRequest(this.ModelState));
            }

            var taskToEdit = this.taskService.GetItem(id);

            if (id != task.Id || taskToEdit == null)
            {
                return(this.NotFound());
            }

            this.taskService.Edit(task);
            this.notificationService.SendNotification($"Zedytowano task - {task.Name}");

            return(this.Ok(task));
        }
예제 #8
0
 public void AttachTask(TaskManager.Models.Task task) => this.Task = task;
예제 #9
0
 public async Task <TaskManager.Models.Task> EndActiveTask(TaskManager.Models.Task task)
 => await new HttpDataService().Put(task, "End", task.Id.ToString(), task.ApplicationUserId.ToString());