public IActionResult Update(Guid id, [FromBody] UpdateReminderItemViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                var target = _storage.Find(id);
                var item   = new ReminderItem(
                    target.Id,
                    model.Title,
                    model.Message,
                    model.DateTimeUtc.GetValueOrDefault(),
                    target.User,
                    model.Status);
                _storage.Update(item);

                return(Ok(new ReminderItemViewModel(item)));
            }
            catch (ArgumentNullException)
            {
                return(BadRequest());
            }
            catch (ArgumentException)
            {
                return(NotFound());
            }
        }
        public IActionResult Update(Guid id, [FromBody] UpdateReminderItemViewModel model)
        {
            if (id == default ||
                model == default)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var existsItem = _storage.FindById(id);

            if (existsItem == default)
            {
                return(NotFound());
            }

            var item = new ReminderItem(
                id,
                model.ContactId,
                model.Message,
                model.DateTimeUtc,
                model.Status);

            _storage.Update(item);

            return(Ok());
        }
        public IActionResult Update(Guid id, [FromBody] UpdateReminderItemViewModel model)
        {
            var existsItem = _storage.FindById(id);
            var item       = new ReminderItem(
                id,
                existsItem.ContactId,
                model.Message,
                DateTimeOffset.FromUnixTimeMilliseconds(model.DateTimeUtc),
                model.Status);

            _storage.Update(item);
            return(Ok());
        }