Beispiel #1
0
        public async Task <ActionResult <StatusResource> > UpdateType(int id, [FromBody] SaveTypeResource saveTypeResource)
        {
            var validator        = new SaveTypeResourceValidator();
            var validationResult = await validator.ValidateAsync(saveTypeResource);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok
            }
            var typeToBeUpdated = await _typeService.GetTypeById(id);

            if (typeToBeUpdated == null)
            {
                return(NotFound());
            }

            var type = _mapper.Map <SaveTypeResource, Type>(saveTypeResource);

            await _typeService.UpdateType(typeToBeUpdated, type);

            var updatedType = await _typeService.GetTypeById(id);

            var updatedTypeResource = _mapper.Map <Type, TypeResource>(updatedType);

            return(Ok(updatedTypeResource));
        }
Beispiel #2
0
        public async Task <ActionResult <TypeResource> > CreateType([FromBody] SaveTypeResource saveTypeResource)
        {
            var validator        = new SaveTypeResourceValidator();
            var validationResult = await validator.ValidateAsync(saveTypeResource);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok
            }
            var typeToCreate = _mapper.Map <SaveTypeResource, Type>(saveTypeResource);

            var newType = await _typeService.CreateType(typeToCreate);

            var type = await _typeService.GetTypeById(newType.Id);

            var typeResource = _mapper.Map <Type, TypeResource>(type);

            return(Ok(typeResource));
        }