http://jira.mfd.msk:8088/browse/BKI-3246 Added signal_user_packages.monitoring_at column; Added monitoring_at setup logic
This commit is contained in:
parent
f950f98536
commit
9253dd3f19
9 changed files with 36 additions and 8 deletions
|
|
@ -17,4 +17,5 @@ public class UserPackage {
|
||||||
private String status;
|
private String status;
|
||||||
private LocalDateTime deactivatedAt;
|
private LocalDateTime deactivatedAt;
|
||||||
private String lastDownloadedReport;
|
private String lastDownloadedReport;
|
||||||
|
private LocalDateTime monitoringAt;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -240,8 +240,10 @@ public class SignalFacade {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (signalRestService.setupMonitoring(packageId)) {
|
if (signalRestService.setupMonitoring(packageId)) {
|
||||||
log.info("Package was successfully registered in signal service. PackageId: {} PackageName: {}", packageId, packageName);
|
LocalDateTime monitoringAt = LocalDateTime.now();
|
||||||
|
log.info("Package was successfully registered in signal service. PackageId: {} PackageName: {}, MonitoringAt: {}", packageId, packageName, monitoringAt);
|
||||||
signalService.updatePackageStatus(packageId, Status.ON_MONITORING);
|
signalService.updatePackageStatus(packageId, Status.ON_MONITORING);
|
||||||
|
signalService.updatePackageMonitoringAt(packageId, monitoringAt);
|
||||||
monitoringErrorProcesingService.findErrors(packageId);
|
monitoringErrorProcesingService.findErrors(packageId);
|
||||||
} else {
|
} else {
|
||||||
log.info("Package registration was rejected by signal service. PackageId: {} PackageName: {}", packageId, packageName);
|
log.info("Package registration was rejected by signal service. PackageId: {} PackageName: {}", packageId, packageName);
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,8 @@ public interface UserPackageMapper {
|
||||||
|
|
||||||
void updatePackageLastDownloadedReport(@Param("id") Integer id, @Param("fileName") String fileName);
|
void updatePackageLastDownloadedReport(@Param("id") Integer id, @Param("fileName") String fileName);
|
||||||
|
|
||||||
|
void updateMonitoringAt(@Param("id")Integer id, @Param("monitoringAt") LocalDateTime monitoringAt);
|
||||||
|
|
||||||
UserPackage findPackage(@Param("id") Integer id);
|
UserPackage findPackage(@Param("id") Integer id);
|
||||||
|
|
||||||
List<UserPackage> findUserPackages(@Param("userId") String userId, @Param("statuses") List<String> status);
|
List<UserPackage> findUserPackages(@Param("userId") String userId, @Param("statuses") List<String> status);
|
||||||
|
|
|
||||||
|
|
@ -201,6 +201,10 @@ public class SignalService {
|
||||||
userPackageService.updatePackageStatus(packageId, status);
|
userPackageService.updatePackageStatus(packageId, status);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updatePackageMonitoringAt(Integer packageId, LocalDateTime monitoringAt) {
|
||||||
|
userPackageService.updateMonitoringAt(packageId, monitoringAt);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Формирует файл запроса в официальный сервис сигналов, выгружая паспортные данные пачками и сразу записывая их в файл
|
* Формирует файл запроса в официальный сервис сигналов, выгружая паспортные данные пачками и сразу записывая их в файл
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -54,21 +54,27 @@ public class UpdatingFlagsService {
|
||||||
for (UserPackage userPackage : packages) {
|
for (UserPackage userPackage : packages) {
|
||||||
log.info("Updating flags for Package {}", userPackage.getPackageName());
|
log.info("Updating flags for Package {}", userPackage.getPackageName());
|
||||||
MDC.put("ru.nbch.credit_tracker.log.mdc.key", "[" + userPackage.getPackageName() +"]");
|
MDC.put("ru.nbch.credit_tracker.log.mdc.key", "[" + userPackage.getPackageName() +"]");
|
||||||
updateFlags(userPackage.getId(), userPackage.getPackageName());
|
updateFlags(userPackage);
|
||||||
MDC.remove("ru.nbch.credit_tracker.log.mdc.key");
|
MDC.remove("ru.nbch.credit_tracker.log.mdc.key");
|
||||||
}
|
}
|
||||||
log.info("Finish updating flags");
|
log.info("Finish updating flags");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateFlags(Integer packageId, String packageName) {
|
private void updateFlags(UserPackage userPackage) {
|
||||||
|
Integer packageId = userPackage.getId();
|
||||||
|
String packageName = userPackage.getPackageName();
|
||||||
try {
|
try {
|
||||||
signalService.updatePackageStatus(packageId, Status.PROCESSING);
|
signalService.updatePackageStatus(packageId, Status.PROCESSING);
|
||||||
Predicate<PhoneFidMap> filter = subject -> subject.getCalculatedAt() != null && hasDaysPassed(subject.getCalculatedAt());
|
Predicate<PhoneFidMap> filter = subject -> subject.getCalculatedAt() != null && hasDaysPassed(subject.getCalculatedAt());
|
||||||
SignalService.UpdateResult updateResult = signalService.updateSubjects(packageId, filter);
|
SignalService.UpdateResult updateResult = signalService.updateSubjects(packageId, filter);
|
||||||
if (updateResult.isUpdated()) {
|
if (updateResult.isUpdated()) {
|
||||||
if (signalRestService.setupMonitoring(packageId)) {
|
if (signalRestService.setupMonitoring(packageId)) {
|
||||||
log.info("Flags were updated successfully. PackageId: {} PackageName: {}. Package status changed to ON_MONITORING", packageId, packageName);
|
LocalDateTime monitoringAt = userPackage.getMonitoringAt() != null ? userPackage.getMonitoringAt() : LocalDateTime.now();
|
||||||
|
log.info("Flags were updated successfully. PackageId: {} PackageName: {} MonitoringAt: {}. Package status changed to ON_MONITORING", packageId, packageName, monitoringAt);
|
||||||
signalService.updatePackageStatus(packageId, Status.ON_MONITORING);
|
signalService.updatePackageStatus(packageId, Status.ON_MONITORING);
|
||||||
|
if (userPackage.getMonitoringAt() == null) { // пакет еще не был поставлен на мониторинг в оф. сервис сигналов
|
||||||
|
signalService.updatePackageMonitoringAt(packageId, monitoringAt);
|
||||||
|
}
|
||||||
monitoringErrorProcesingService.findErrors(packageId);
|
monitoringErrorProcesingService.findErrors(packageId);
|
||||||
} else {
|
} else {
|
||||||
log.info("Updated package registration was rejected by signal service. PackageId: {} PackageName: {}", packageId, packageName);
|
log.info("Updated package registration was rejected by signal service. PackageId: {} PackageName: {}", packageId, packageName);
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,10 @@ public class UserPackageService {
|
||||||
mapper.updatePackageLastDownloadedReport(id, fileName);
|
mapper.updatePackageLastDownloadedReport(id, fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updateMonitoringAt(Integer id, LocalDateTime monitoringAt) {
|
||||||
|
mapper.updateMonitoringAt(id, monitoringAt);
|
||||||
|
}
|
||||||
|
|
||||||
public UserPackage findPackage(Integer id) {
|
public UserPackage findPackage(Integer id) {
|
||||||
return mapper.findPackage(id);
|
return mapper.findPackage(id);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@
|
||||||
<result property="status" column="status"/>
|
<result property="status" column="status"/>
|
||||||
<result property="deactivatedAt" column="deactivated_at"/>
|
<result property="deactivatedAt" column="deactivated_at"/>
|
||||||
<result property="lastDownloadedReport" column="last_downloaded_report"/>
|
<result property="lastDownloadedReport" column="last_downloaded_report"/>
|
||||||
|
<result property="monitoringAt" column="monitoring_at"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<select id="isPackageNotUnique" resultType="boolean">
|
<select id="isPackageNotUnique" resultType="boolean">
|
||||||
|
|
@ -69,9 +70,15 @@
|
||||||
WHERE id = #{id}
|
WHERE id = #{id}
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<update id="updateMonitoringAt">
|
||||||
|
UPDATE signals_user_packages
|
||||||
|
SET monitoring_at = #{monitoringAt}
|
||||||
|
WHERE id = #{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
<select id="findPackage" resultMap="packageDataResultMap"
|
<select id="findPackage" resultMap="packageDataResultMap"
|
||||||
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
||||||
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report
|
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report, monitoring_at
|
||||||
FROM signals_user_packages
|
FROM signals_user_packages
|
||||||
WHERE id = #{id}
|
WHERE id = #{id}
|
||||||
LIMIT 1
|
LIMIT 1
|
||||||
|
|
@ -79,7 +86,7 @@
|
||||||
|
|
||||||
<select id="findUserPackages" resultMap="packageDataResultMap"
|
<select id="findUserPackages" resultMap="packageDataResultMap"
|
||||||
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
||||||
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report
|
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report, monitoring_at
|
||||||
FROM signals_user_packages
|
FROM signals_user_packages
|
||||||
WHERE membercode IS NOT NULL
|
WHERE membercode IS NOT NULL
|
||||||
AND LEFT(membercode, 6) = #{userId}
|
AND LEFT(membercode, 6) = #{userId}
|
||||||
|
|
@ -91,7 +98,7 @@
|
||||||
|
|
||||||
<select id="findAllPackagesByUserId" resultMap="packageDataResultMap"
|
<select id="findAllPackagesByUserId" resultMap="packageDataResultMap"
|
||||||
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
||||||
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report
|
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report, monitoring_at
|
||||||
FROM signals_user_packages
|
FROM signals_user_packages
|
||||||
WHERE membercode IS NOT NULL
|
WHERE membercode IS NOT NULL
|
||||||
AND LEFT(membercode, 6) = #{userId}
|
AND LEFT(membercode, 6) = #{userId}
|
||||||
|
|
@ -99,7 +106,7 @@
|
||||||
|
|
||||||
<select id="findAllPackagesByStatus" resultMap="packageDataResultMap"
|
<select id="findAllPackagesByStatus" resultMap="packageDataResultMap"
|
||||||
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
resultType="ru.nbch.credit_tracker.entities.dto.UserPackage">
|
||||||
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report
|
SELECT id, membercode, package_name, created_at, status, deactivated_at, last_downloaded_report, monitoring_at
|
||||||
FROM signals_user_packages
|
FROM signals_user_packages
|
||||||
WHERE status = #{status}
|
WHERE status = #{status}
|
||||||
</select>
|
</select>
|
||||||
|
|
|
||||||
2
src/main/resources/sql/BKI-3246.ddl
Normal file
2
src/main/resources/sql/BKI-3246.ddl
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
alter table signals_user_packages
|
||||||
|
add "monitoring_at" timestamp;
|
||||||
Loading…
Add table
Reference in a new issue