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