/// <inheritdoc cref="IDeduplicationManager.FindSimilarRecordsFromStored"/> public DuplicatesCollection FindSimilarRecordsFromStored(FindSimilarRecordsFromStoredRequest request) { var entityRules = request.SchemaName == request.SourceSchemaName ? _duplicatesRuleManager.GetDuplicatesRules(request.SchemaName) : _duplicatesRuleManager.GetDuplicatesRules(request.SourceSchemaName, request.SchemaName); var searchSimilarRecordsRequest = _findSimilarRecordsRequestBuilder.BuildRequest(request); return(FindSimilarRecords(entityRules.ToList(), searchSimilarRecordsRequest)); }
public string FindSimilarRecordsFromStored( FindSimilarRecordsFromStoredRequest findSimilarRecordsFromStoredRequest) { var result = string.Empty; try { var duplicates = DeduplicationManager.FindSimilarRecordsFromStored( findSimilarRecordsFromStoredRequest); result = JsonConvert.SerializeObject(duplicates); } catch (Exception ex) { _log.Error("There is error during searching similar records", ex); } return(result); }
/// <inheritdoc cref="IFindSimilarRecordsRequestBuilder.BuildRequest(FindSimilarRecordsFromStoredRequest)"/> public FindDuplicatesRequest BuildRequest(FindSimilarRecordsFromStoredRequest findSimilarRecordsFromStoredRequest) { var filters = GetDuplicatesRuleFilters(findSimilarRecordsFromStoredRequest.SchemaName, findSimilarRecordsFromStoredRequest.SourceSchemaName); var sourceColumnUids = GetColumnUIds(filters); var sourceEntity = GetSourceEntity(findSimilarRecordsFromStoredRequest.SourceId, findSimilarRecordsFromStoredRequest.SourceSchemaName, sourceColumnUids); var requestModel = GetRequestModel(sourceEntity, filters); var result = new FindDuplicatesRequest { SchemaName = findSimilarRecordsFromStoredRequest.SchemaName, Columns = new List <string> { "Id" }, Model = requestModel }; return(result); }
public FindDuplicatesRequest BuildRequest(UserConnection userConnection, FindSimilarRecordsFromStoredRequest findSimilarRecordsFromStoredRequest) { return(BuildRequest(findSimilarRecordsFromStoredRequest)); }