FidIdEnricher: rename and chane payload type
This commit is contained in:
parent
9cb5a16490
commit
9ce437a438
3 changed files with 46 additions and 44 deletions
|
|
@ -1,15 +1,14 @@
|
||||||
package ru.nbch.credit_tracker.builder;
|
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.LocalDate;
|
||||||
import java.time.format.DateTimeFormatter;
|
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
|
@Slf4j
|
||||||
public class PersonFactoryBuilderV2 {
|
public class PersonFactoryBuilderV2 {
|
||||||
|
|
@ -31,16 +30,17 @@ public class PersonFactoryBuilderV2 {
|
||||||
private final static String CONSENT_ISSUE_AUTHORITY = "Кем выдан";
|
private final static String CONSENT_ISSUE_AUTHORITY = "Кем выдан";
|
||||||
|
|
||||||
|
|
||||||
private SubjectProfileForSignal personData;
|
private SubjectProfile personData;
|
||||||
private Long uid;
|
private Long uid;
|
||||||
|
|
||||||
public static PersonFactoryBuilderV2 builder() {
|
public static PersonFactoryBuilderV2 builder() {
|
||||||
return new PersonFactoryBuilderV2();
|
return new PersonFactoryBuilderV2();
|
||||||
}
|
}
|
||||||
|
|
||||||
public PersonFactoryBuilderV2 personData(SubjectProfileForSignal personData) {
|
public PersonFactoryBuilderV2 personData(SubjectProfile personData) {
|
||||||
this.personData = personData;
|
this.personData = personData;
|
||||||
this.uid = personData.getId();
|
//todo откуда брать этот id
|
||||||
|
// this.uid = personData.getIdentifier();
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -48,8 +48,8 @@ public class PersonFactoryBuilderV2 {
|
||||||
if (personData == null) {
|
if (personData == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
NameData nameData = personData.getNameProfile();
|
NameData nameData = personData.getNameData();
|
||||||
IdData passportData = personData.getIdProfile();
|
IdData passportData = personData.getIdData();
|
||||||
Person person = new Person();
|
Person person = new Person();
|
||||||
person.setS(nameData.getLastName());
|
person.setS(nameData.getLastName());
|
||||||
person.setN(nameData.getFirstName());
|
person.setN(nameData.getFirstName());
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,20 @@
|
||||||
package ru.nbch.credit_tracker.service.indic;
|
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.time.LocalDate;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
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
|
@Slf4j
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -89,8 +88,8 @@ public class PersonService {
|
||||||
return resultMap;
|
return resultMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void filledPassportsData(List<SubjectProfileForSignal> subjectProfiles) {
|
public void filledPassportsData(List<SubjectProfile> subjectProfiles) {
|
||||||
List<Integer> fids = subjectProfiles.stream().map(SubjectProfileForSignal::getFid).collect(Collectors.toList());
|
List<Integer> fids = subjectProfiles.stream().map(SubjectProfile::getFid).collect(Collectors.toList());
|
||||||
if (fids.isEmpty()) {
|
if (fids.isEmpty()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -110,8 +109,8 @@ public class PersonService {
|
||||||
.idType2(passport.getIdType2())
|
.idType2(passport.getIdType2())
|
||||||
.fileSinceDate(passport.getFileSinceDate())
|
.fileSinceDate(passport.getFileSinceDate())
|
||||||
.build();
|
.build();
|
||||||
subjectProfile.setIdProfile(idProfile);
|
subjectProfile.setIdData(idProfile);
|
||||||
subjectProfile.setFilled(isRequiredPassportDataPresent(passport));
|
// subjectProfile.setFilled(isRequiredPassportDataPresent(passport));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,34 +1,37 @@
|
||||||
package ru.nbch.credit_tracker.service.task.impl.dprctd;
|
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 lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import ru.nbch.credit_tracker.builder.PersonFactoryBuilderV2;
|
import ru.nbch.credit_tracker.builder.PersonFactoryBuilderV2;
|
||||||
import ru.nbch.credit_tracker.config.settings.CreditTrackerSettings;
|
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.entities.external_request.signals.Person;
|
||||||
import ru.nbch.credit_tracker.model.PartFilePayload;
|
import ru.nbch.credit_tracker.model.PartFilePayload;
|
||||||
import ru.nbch.credit_tracker.model.SendSignalsPayload;
|
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.SignalService;
|
||||||
import ru.nbch.credit_tracker.service.indic.PersonService;
|
import ru.nbch.credit_tracker.service.indic.PersonService;
|
||||||
import ru.nbch.credit_tracker.service.task.Handler;
|
import ru.nbch.credit_tracker.service.task.Handler;
|
||||||
import ru.nbch.credit_tracker.service.xml.stax.SignalsStaxXmlWriterV2;
|
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
|
@Service
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class FidIdEnricherV2 implements Handler<SubjectsProfilePayloadV2, SendSignalsPayload> {
|
public class FidIdEnricher implements Handler<SubjectPayload, SendSignalsPayload> {
|
||||||
private final PersonService personService;
|
private final PersonService personService;
|
||||||
private final SignalService signalService;
|
private final SignalService signalService;
|
||||||
private final CreditTrackerSettings config;
|
private final CreditTrackerSettings config;
|
||||||
private final BlockingQueue<PartFilePayload> mergerQueue;
|
private final BlockingQueue<PartFilePayload> mergerQueue;
|
||||||
public FidIdEnricherV2(PersonService personService,
|
public FidIdEnricher(PersonService personService,
|
||||||
SignalService signalService,
|
SignalService signalService,
|
||||||
CreditTrackerSettings config,
|
CreditTrackerSettings config,
|
||||||
BlockingQueue<PartFilePayload> mergerQueue) {
|
BlockingQueue<PartFilePayload> mergerQueue) {
|
||||||
|
|
@ -39,12 +42,12 @@ public class FidIdEnricherV2 implements Handler<SubjectsProfilePayloadV2, SendSi
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SendSignalsPayload handle(SubjectsProfilePayloadV2 taskPayload) {
|
public SendSignalsPayload handle(SubjectPayload taskPayload) {
|
||||||
List<SubjectProfileForSignal> subjectsProfile = taskPayload.getSubjectProfiles();
|
List<SubjectProfile> subjectsProfile = taskPayload.getSubjects();
|
||||||
log.debug("FidIdEnricher handle by packageId: {}; size: {}", taskPayload.getPackageId(), subjectsProfile.size());
|
log.debug("FidIdEnricher handle by packageId: {}; size: {}", taskPayload.getPackageId(), subjectsProfile.size());
|
||||||
personService.filledPassportsData(subjectsProfile);
|
personService.filledPassportsData(subjectsProfile);
|
||||||
List<Person> personOnProcessing = subjectsProfile.stream()
|
List<Person> personOnProcessing = subjectsProfile.stream()
|
||||||
.filter(SubjectProfileForSignal::isFilled)
|
.filter(subjectProfile -> subjectProfile.getIdData() != null && subjectProfile.getNameData() != null)
|
||||||
.map(subjectProfile -> PersonFactoryBuilderV2.builder().personData(subjectProfile).build())
|
.map(subjectProfile -> PersonFactoryBuilderV2.builder().personData(subjectProfile).build())
|
||||||
.toList();
|
.toList();
|
||||||
log.debug("personOnProcessing size: {}", personOnProcessing.size());
|
log.debug("personOnProcessing size: {}", personOnProcessing.size());
|
||||||
Loading…
Add table
Reference in a new issue