Esempio n. 1
0
        public ActionResult <TodoTaskReadDto> UpdateTodoTask(int id, TodoTaskUpdateDto request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            // ambil data existing by id
            TodoTaskModel oldData = _todoTaskService.GetTodoTaskById(id);

            if (oldData == null)
            {
                return(NotFound(new
                {
                    success = false,
                    message = "No Data"
                }));
            }

            // mapping tanpa deklarasi tipe, guna mapping perubahan
            _mapper.Map(request, oldData);
            _todoTaskService.UpdateTodoTask(oldData); // do nothing

            if (_todoTaskService.SaveChanges())
            {
                return(Created(nameof(UpdateTodoTask), new
                {
                    success = true,
                    message = "Data updated"
                }));
            }
            return(BadRequest());
        }