Beispiel #1
0
        public async Task <IActionResult> DeleteEntryAsync([FromBody] EntryModel model)
        {
            var validator  = _validatorFactory.Create(typeof(EntryValidator));
            var validation = await validator.ValidateAsync(model);

            if (!validation.IsValid)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, validation.Errors.FirstOrDefault().ErrorMessage));
            }

            var entry = await _entryService.GetByIdAsync(model.Id);

            if (null == entry)
            {
                return(StatusCode(StatusCodes.Status404NotFound, TXT.Response.ResourceFound403));
            }

            var modelEntry = _mapper.Map <EntryModel, Entry>(model);
            int result     = await _entryService.DeleteAsync(modelEntry);

            if (result == 0)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, TXT.Response.InternalError));
            }

            return(StatusCode(StatusCodes.Status204NoContent));
        }