Add merge UI

This commit is contained in:
Amelia 2025-05-07 17:41:10 +02:00
parent 29e2879153
commit 6ec7e80a43
No known key found for this signature in database
GPG key ID: D6D0ECE365407EAA
13 changed files with 275 additions and 40 deletions

View file

@ -2,6 +2,7 @@
using System.Linq;
using System.Threading.Tasks;
using API.Data;
using API.Data.Repositories;
using API.DTOs;
using API.Entities.Enums;
using API.Extensions;
@ -186,16 +187,16 @@ public class PersonController : BaseApiController
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("merge")]
public async Task<ActionResult> MergePersons(PersonMergeDto dto)
public async Task<ActionResult<PersonDto>> MergePersons(PersonMergeDto dto)
{
var dst = await _unitOfWork.PersonRepository.GetPersonById(dto.DestId);
var dst = await _unitOfWork.PersonRepository.GetPersonById(dto.DestId, PersonIncludes.All);
if (dst == null) return BadRequest();
var src = await _unitOfWork.PersonRepository.GetPersonById(dto.SrcId);
var src = await _unitOfWork.PersonRepository.GetPersonById(dto.SrcId, PersonIncludes.All);
if (src == null) return BadRequest();
await _personService.MergePeopleAsync(dst, src);
return Ok();
return Ok(_mapper.Map<PersonDto>(dst));
}
[HttpGet("alias/{personId}/{alias}")]