コード例 #1
0
        public async Task <TodoTask> AddTaskAsync(
            TodoTaskForm form,
            CancellationToken ct)
        {
            var categoryEntity = await _dbContext.Categories.FirstOrDefaultAsync(x => x.Id == form.CategoryId);

            if (categoryEntity == null)
            {
                throw new ArgumentException("Given category doesn't exist.");
            }

            var newTask = new TodoTaskEntity
            {
                Id         = new Guid(),
                Name       = form.Name,
                IsDone     = false,
                CategoryId = form.CategoryId,
                CreatedAt  = DateTimeOffset.UtcNow
            };

            _dbContext.Tasks.Add(newTask);

            var result = await _dbContext.SaveChangesAsync(ct);

            newTask.Category = categoryEntity;

            if (result >= 1)
            {
                return(Mapper.Map <TodoTask>(newTask));
            }
            return(null);
        }
コード例 #2
0
        private void buttonEdytuj_Click(object sender, EventArgs e)
        {
            //sprzawdzenie czy zaznaczono zadanie
            if (listViewZadania.SelectedItems.Count == 0)
            {
                //wypisujemy komentarz ze nie wybrano
                MessageBox.Show("Nie wybrano zadania", "Informacja", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                string zaznaczoneZadanieId = listViewZadania.SelectedItems[0].SubItems[0].Text;

                //pobiertamy konkretne zadanie z listy
                TodoTask task = todoTaskManager.ZnajdzZadanie(int.Parse(zaznaczoneZadanieId));

                TodoTaskForm editForm = new TodoTaskForm(task);

                //otwieramy formularz jako okno dialogowe
                editForm.ShowDialog();
                //zamkniecie okna , sprawdzamy czy zapisano
                if (editForm.CzyZapisano)
                {
                    // aktualizujemy zadania w pliku
                    todoTaskManager.AktualizujZadaniaUzytkownika(zalogowany.Id);
                    listViewZadania.SelectedItems[0].SubItems[1].Text = task.Title;
                    listViewZadania.SelectedItems[0].SubItems[2].Text = task.isFinished ? "✓" : "✕";
                }
            }
        }
コード例 #3
0
        public async Task <IActionResult> AddTaskAsync(
            [FromBody] TodoTaskForm form,
            CancellationToken ct)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(new ApiError(ModelState)));
            }

            var task = await _repository.AddTaskAsync(form, ct);

            return(Ok(task));
        }
コード例 #4
0
        public async Task OnTaskCreate(TodoTaskForm TodoTaskForm)
        {
            if (!string.IsNullOrEmpty(TodoTaskForm.Name) && !string.IsNullOrEmpty(TodoTaskForm.CategoryId))
            {
                var result = await _tasksService.CreateTask(TodoTaskForm);

                if (result.Response != null)
                {
                    Tasks.Add(result.Response);
                    Tasks = Tasks.OrderBy(x => x.IsDone).ToList();
                }
                if (result.Error != null)
                {
                    Error = result.Error;
                }
                StateHasChanged();
            }
        }
コード例 #5
0
        private void buttonDodaj_Click(object sender, EventArgs e)
        {
            //wyznaczanmy id dla nowego zadania
            int id = todoTaskManager.ObliczNastepneId();

            //tworzymy obiekt z id, bez tytulu i opisu
            TodoTask task = new TodoTask(id, zalogowany.Id, "", "");

            //tworzymy formulasz z dodawaniem
            TodoTaskForm addForm = new TodoTaskForm(task);

            //otwieramy formularz jako okno dialogowe
            addForm.ShowDialog();
            //zamkniecie okna , sprawdzamy czy zapisano
            if (addForm.CzyZapisano)
            {
                //dodajemy do managera i do listview
                todoTaskManager.DodajZadanie(task);
                DodajZadanieDoListy(task);
            }
        }
コード例 #6
0
 public async Task <ApiObjectResponse <TodoTask> > CreateTask(TodoTaskForm form)
 {
     return(await _httpClient.ApiPostAsync <TodoTask>("tasks", form));
 }