feat: Implement merge person functionality with associated request and repository methods

This commit is contained in:
2025-11-15 17:46:36 +01:00
parent 8a735c7c26
commit b80c4e0895
6 changed files with 91 additions and 14 deletions

View File

@@ -99,6 +99,7 @@ pub trait FaceRegionRepository: Send + Sync {
async fn find_by_id(&self, face_region_id: Uuid) -> CoreResult<Option<FaceRegion>>;
async fn update_person_id(&self, face_region_id: Uuid, person_id: Uuid) -> CoreResult<()>;
async fn delete(&self, face_region_id: Uuid) -> CoreResult<()>;
async fn reassign_person(&self, old_person_id: Uuid, new_person_id: Uuid) -> CoreResult<()>;
}
#[async_trait]

View File

@@ -106,6 +106,13 @@ pub trait PersonService: Send + Sync {
target_user_id: Uuid,
owner_id: Uuid,
) -> CoreResult<()>;
async fn merge_people(
&self,
target_person_id: Uuid,
source_person_id: Uuid,
user_id: Uuid,
) -> CoreResult<()>;
}
#[async_trait]