From 9ce437a438e920b0df75bf8cd90df68218d77654 Mon Sep 17 00:00:00 2001 From: etreschenkov Date: Sat, 1 Nov 2025 12:30:43 +0300 Subject: [PATCH] FidIdEnricher: rename and chane payload type --- .../builder/PersonFactoryBuilderV2.java | 26 ++++++------- .../service/indic/PersonService.java | 27 +++++++------- ...idIdEnricherV2.java => FidIdEnricher.java} | 37 ++++++++++--------- 3 files changed, 46 insertions(+), 44 deletions(-) rename src/main/java/ru/nbch/credit_tracker/service/task/impl/dprctd/{FidIdEnricherV2.java => FidIdEnricher.java} (78%) diff --git a/src/main/java/ru/nbch/credit_tracker/builder/PersonFactoryBuilderV2.java b/src/main/java/ru/nbch/credit_tracker/builder/PersonFactoryBuilderV2.java index 9e1940e..55d0768 100644 --- a/src/main/java/ru/nbch/credit_tracker/builder/PersonFactoryBuilderV2.java +++ b/src/main/java/ru/nbch/credit_tracker/builder/PersonFactoryBuilderV2.java @@ -1,15 +1,14 @@ package ru.nbch.credit_tracker.builder; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang3.StringUtils; -import ru.nbch.credit_tracker.model.IdData; -import ru.nbch.credit_tracker.model.NameData; -import ru.nbch.credit_tracker.entities.dto.SubjectProfileForSignal; -import ru.nbch.credit_tracker.entities.external_request.signals.Person; -import ru.nbch.credit_tracker.utils.CTUtil; - import java.time.LocalDate; import java.time.format.DateTimeFormatter; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import ru.nbch.credit_tracker.entities.external_request.signals.Person; +import ru.nbch.credit_tracker.model.IdData; +import ru.nbch.credit_tracker.model.NameData; +import ru.nbch.credit_tracker.model.SubjectProfile; +import ru.nbch.credit_tracker.utils.CTUtil; @Slf4j public class PersonFactoryBuilderV2 { @@ -31,16 +30,17 @@ public class PersonFactoryBuilderV2 { private final static String CONSENT_ISSUE_AUTHORITY = "Кем выдан"; - private SubjectProfileForSignal personData; + private SubjectProfile personData; private Long uid; public static PersonFactoryBuilderV2 builder() { return new PersonFactoryBuilderV2(); } - public PersonFactoryBuilderV2 personData(SubjectProfileForSignal personData) { + public PersonFactoryBuilderV2 personData(SubjectProfile personData) { this.personData = personData; - this.uid = personData.getId(); + //todo откуда брать этот id +// this.uid = personData.getIdentifier(); return this; } @@ -48,8 +48,8 @@ public class PersonFactoryBuilderV2 { if (personData == null) { return null; } - NameData nameData = personData.getNameProfile(); - IdData passportData = personData.getIdProfile(); + NameData nameData = personData.getNameData(); + IdData passportData = personData.getIdData(); Person person = new Person(); person.setS(nameData.getLastName()); person.setN(nameData.getFirstName()); diff --git a/src/main/java/ru/nbch/credit_tracker/service/indic/PersonService.java b/src/main/java/ru/nbch/credit_tracker/service/indic/PersonService.java index 4a70b83..53fa4ca 100644 --- a/src/main/java/ru/nbch/credit_tracker/service/indic/PersonService.java +++ b/src/main/java/ru/nbch/credit_tracker/service/indic/PersonService.java @@ -1,21 +1,20 @@ package ru.nbch.credit_tracker.service.indic; -import lombok.AllArgsConstructor; -import lombok.Getter; -import lombok.Setter; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import ru.nbch.credit_tracker.model.IdData; -import ru.nbch.credit_tracker.entities.dto.SubjectProfileForSignal; -import ru.nbch.credit_tracker.mapper.indic.PersonMapper; - import java.time.LocalDate; import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.Setter; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import ru.nbch.credit_tracker.mapper.indic.PersonMapper; +import ru.nbch.credit_tracker.model.IdData; +import ru.nbch.credit_tracker.model.SubjectProfile; @Slf4j @Service @@ -89,8 +88,8 @@ public class PersonService { return resultMap; } - public void filledPassportsData(List subjectProfiles) { - List fids = subjectProfiles.stream().map(SubjectProfileForSignal::getFid).collect(Collectors.toList()); + public void filledPassportsData(List subjectProfiles) { + List fids = subjectProfiles.stream().map(SubjectProfile::getFid).collect(Collectors.toList()); if (fids.isEmpty()) { return; } @@ -110,8 +109,8 @@ public class PersonService { .idType2(passport.getIdType2()) .fileSinceDate(passport.getFileSinceDate()) .build(); - subjectProfile.setIdProfile(idProfile); - subjectProfile.setFilled(isRequiredPassportDataPresent(passport)); + subjectProfile.setIdData(idProfile); +// subjectProfile.setFilled(isRequiredPassportDataPresent(passport)); } }); } diff --git a/src/main/java/ru/nbch/credit_tracker/service/task/impl/dprctd/FidIdEnricherV2.java b/src/main/java/ru/nbch/credit_tracker/service/task/impl/dprctd/FidIdEnricher.java similarity index 78% rename from src/main/java/ru/nbch/credit_tracker/service/task/impl/dprctd/FidIdEnricherV2.java rename to src/main/java/ru/nbch/credit_tracker/service/task/impl/dprctd/FidIdEnricher.java index 43b92f8..b467862 100644 --- a/src/main/java/ru/nbch/credit_tracker/service/task/impl/dprctd/FidIdEnricherV2.java +++ b/src/main/java/ru/nbch/credit_tracker/service/task/impl/dprctd/FidIdEnricher.java @@ -1,37 +1,40 @@ package ru.nbch.credit_tracker.service.task.impl.dprctd; +import java.io.IOException; +import java.io.OutputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.StandardCopyOption; +import java.nio.file.StandardOpenOption; +import java.util.List; +import java.util.UUID; +import java.util.concurrent.BlockingQueue; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import ru.nbch.credit_tracker.builder.PersonFactoryBuilderV2; import ru.nbch.credit_tracker.config.settings.CreditTrackerSettings; -import ru.nbch.credit_tracker.entities.dto.SubjectProfileForSignal; import ru.nbch.credit_tracker.entities.external_request.signals.Person; import ru.nbch.credit_tracker.model.PartFilePayload; import ru.nbch.credit_tracker.model.SendSignalsPayload; -import ru.nbch.credit_tracker.model.SubjectsProfilePayloadV2; +import ru.nbch.credit_tracker.model.SubjectProfile; +import ru.nbch.credit_tracker.model.impl.SubjectPayload; import ru.nbch.credit_tracker.service.SignalService; import ru.nbch.credit_tracker.service.indic.PersonService; import ru.nbch.credit_tracker.service.task.Handler; import ru.nbch.credit_tracker.service.xml.stax.SignalsStaxXmlWriterV2; -import java.io.IOException; -import java.io.OutputStream; -import java.nio.file.*; -import java.util.List; -import java.util.UUID; -import java.util.concurrent.BlockingQueue; - @Service @Slf4j -public class FidIdEnricherV2 implements Handler { +public class FidIdEnricher implements Handler { private final PersonService personService; private final SignalService signalService; private final CreditTrackerSettings config; private final BlockingQueue mergerQueue; - public FidIdEnricherV2(PersonService personService, - SignalService signalService, - CreditTrackerSettings config, - BlockingQueue mergerQueue) { + public FidIdEnricher(PersonService personService, + SignalService signalService, + CreditTrackerSettings config, + BlockingQueue mergerQueue) { this.personService = personService; this.signalService = signalService; this.config = config; @@ -39,12 +42,12 @@ public class FidIdEnricherV2 implements Handler subjectsProfile = taskPayload.getSubjectProfiles(); + public SendSignalsPayload handle(SubjectPayload taskPayload) { + List subjectsProfile = taskPayload.getSubjects(); log.debug("FidIdEnricher handle by packageId: {}; size: {}", taskPayload.getPackageId(), subjectsProfile.size()); personService.filledPassportsData(subjectsProfile); List personOnProcessing = subjectsProfile.stream() - .filter(SubjectProfileForSignal::isFilled) + .filter(subjectProfile -> subjectProfile.getIdData() != null && subjectProfile.getNameData() != null) .map(subjectProfile -> PersonFactoryBuilderV2.builder().personData(subjectProfile).build()) .toList(); log.debug("personOnProcessing size: {}", personOnProcessing.size());