update character

This commit is contained in:
2023-12-25 16:59:25 +01:00
parent 9894ba735e
commit 73660076e5
10 changed files with 204 additions and 103 deletions
+27 -1
View File
@@ -38,7 +38,7 @@ public class CharacterController(
{
return BadRequest(ex.Message);
}
var id = await persistenceService.StoreNewCharacter(model);
var id = await persistenceService.StoreNewCharacter(model, isPublic);
return id;
}
@@ -54,6 +54,32 @@ public class CharacterController(
return dbModelToDtoService.Convert(entity);
}
[HttpPost("{id:guid}")]
public async Task<ActionResult<Guid>> UpdateCharacter([FromRoute] Guid id, [FromBody] CharacterDto dto, bool isPublic = true)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
var errors = validationService.Validate(dto);
if (errors != null)
{
return BadRequest(errors);
}
var original = await persistenceService.GetCharacterById(id, tracking: true);
if (original is null)
{
return NotFound();
}
dtoToDbModelService.Update(original, dto);
await persistenceService.UpdateCharacter(original, isPublic);
return id;
}
[HttpGet]
[Authorize]
public async Task<List<CharacterListItemDto>> GetAllCharacters()