Fixed sending package to nbki service
This commit is contained in:
parent
cf9cba8aad
commit
7a4290ad0b
4 changed files with 18 additions and 14 deletions
|
|
@ -28,6 +28,6 @@ ct.scoring-data-source-settings.password=tester
|
|||
ct.xsd-validation.monitoring-request-path=monitoring-request.xsd
|
||||
ct.xsd-validation.signal-package-path=signal-package.xsd
|
||||
|
||||
ct.signals-root-uri=http://reports.test-alfa.nbki.ru/signalRUalfa/
|
||||
ct.signals-root-uri=http://10.230.227.102:11094/signalRUalfa/
|
||||
ct.signals-token=gttcHxwcGojoAvZK
|
||||
ct.signals-user=0001ZZ000001
|
||||
|
|
@ -229,16 +229,14 @@ public class SignalFacade {
|
|||
if (!phoneFidsData.isEmpty()) {
|
||||
Signals signals = signalService.buildSignals(packageId, phoneFidsData);
|
||||
// TODO validate xsd?
|
||||
String response = null;
|
||||
// response = signalRestService.update(signals);
|
||||
if (response == null) {
|
||||
if (signalRestService.update(signals)) {
|
||||
signalService.setPackageStatus(packageId, Status.ON_MONITORING);
|
||||
} else {
|
||||
signalService.setPackageStatus(packageId, Status.ERROR);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("Ошибка при поиске фидов или расчете флагов просрочек", e);
|
||||
log.error("Ошибка при поиске фидов или расчете флагов просрочек. Package_id {}", packageId, e);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import lombok.Getter;
|
|||
import lombok.Setter;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import ru.nbch.credit_tracker.config.settings.CreditTrackerSettings;
|
||||
import ru.nbch.credit_tracker.entities.monitoring_request.MonitoringRequest;
|
||||
import ru.nbch.credit_tracker.entities.signal_package.Auth;
|
||||
import ru.nbch.credit_tracker.entities.signal_package.Person;
|
||||
|
|
@ -27,14 +28,18 @@ public class SignalService {
|
|||
|
||||
private final static DateFormat DATE_FORMAT = new SimpleDateFormat("dd.MM.yyyy");
|
||||
|
||||
private final CreditTrackerSettings config;
|
||||
private final SignalMapper mapper;
|
||||
private final PhoneService phoneService;
|
||||
private final FlagsService flagsService;
|
||||
private final PersonService personService;
|
||||
|
||||
public SignalService(SignalMapper mapper,
|
||||
public SignalService(CreditTrackerSettings config,
|
||||
SignalMapper mapper,
|
||||
PhoneService phoneService,
|
||||
FlagsService flagsService, PersonService personService) {
|
||||
FlagsService flagsService,
|
||||
PersonService personService) {
|
||||
this.config = config;
|
||||
this.mapper = mapper;
|
||||
this.phoneService = phoneService;
|
||||
this.flagsService = flagsService;
|
||||
|
|
@ -77,7 +82,7 @@ public class SignalService {
|
|||
signals.setOnline("2"); // Всегда=2 (только онлайн-сигналы)
|
||||
signals.setId(packageData.getUserId().substring(0, 6) + "_" + packageData.getPackageName()); // <MEMBERCODE>_<PackageName>
|
||||
Auth auth = new Auth();
|
||||
auth.setUser("test_user"); // TODO from properties // Внутренний логин НБКИ
|
||||
auth.setUser(config.getSignalsuser());
|
||||
signals.setAuth(auth);
|
||||
for (PhoneService.FidsPhoneData fidData : fids) {
|
||||
Person person = findPerson(fidData.getFid(), fidData.getSubjectId());
|
||||
|
|
|
|||
|
|
@ -43,28 +43,29 @@ public class SignalRestService {
|
|||
this.authToken = buildToken(config.getSignalsToken(), config.getSignalsuser());
|
||||
}
|
||||
|
||||
public String update(Signals signals) throws Exception {
|
||||
public boolean update(Signals signals) throws Exception {
|
||||
Resource request = compressFile(signals);
|
||||
|
||||
MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
|
||||
MultiValueMap<String, Resource> body = new LinkedMultiValueMap<>();
|
||||
body.add("file", request);
|
||||
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
|
||||
headers.setBasicAuth(authToken);
|
||||
|
||||
HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(body, headers);
|
||||
HttpEntity<MultiValueMap<String, Resource>> requestEntity = new HttpEntity<>(body, headers);
|
||||
|
||||
ResponseEntity<String> response = restTemplate.postForEntity(UPDATE_URI, requestEntity, String.class);
|
||||
|
||||
if (response.getStatusCode().value() == 302) {
|
||||
// good response
|
||||
return null;
|
||||
return true;
|
||||
} else if (response.getStatusCode().value() == 200 && response.getBody() != null) {
|
||||
// bad response
|
||||
return response.getBody();
|
||||
log.error("Ошибка при постановке пакета на мониторинг в официальный сервис сигналов: {}", response.getBody());
|
||||
return false;
|
||||
}
|
||||
return "Непредвиденная ошибка";
|
||||
return false;
|
||||
}
|
||||
|
||||
private Resource compressFile(Signals signals) throws Exception {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue