Minor fix calc flag5000
This commit is contained in:
parent
b42e4f70df
commit
d1064b6b9f
2 changed files with 14 additions and 10 deletions
|
|
@ -30,10 +30,12 @@ public class CreditTrackerApplication {
|
|||
for (Integer fid : fids) {
|
||||
FlagsService.FlagsData oldValue = oldMap.get(fid);
|
||||
FlagsService.FlagsData newValue = newMap.get(fid);
|
||||
System.out.println("FID: " + fid);
|
||||
System.out.println("OLD: " + oldValue.getFlagDebt5000() +"|" +oldValue.getFlag90days());
|
||||
System.out.println("NEW: " + newValue.getFlagDebt5000() +"|" +newValue.getFlag90days());
|
||||
System.out.println("_________________________________");
|
||||
}
|
||||
System.exit(0);
|
||||
// UpdateProcessingPackagesService updateProcessingPackagesService = ctx.getBean(UpdateProcessingPackagesService.class);
|
||||
// MonitoringService monitoringService = ctx.getBean(MonitoringService.class);
|
||||
// UpdatingFlagsService updatingFlagsService = ctx.getBean(UpdatingFlagsService.class);
|
||||
|
|
|
|||
|
|
@ -89,6 +89,12 @@ public class FlagsService {
|
|||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Выбирает дату из RU_PASTDUEARREAR и ищет по ним флаги просрочек
|
||||
* @param fids - отсортирован по возрастанию фидов
|
||||
* @param flag5000Map - рещультирующая мапа флагов просрочек debt5000
|
||||
* @param flag90Days - рещультирующая мапа флагов просрочек 90_days
|
||||
*/
|
||||
private void findFlagsRuPastDueArrear(List<Integer> fids, Map<Integer, Integer> flag5000Map, Map<Integer, Integer> flag90Days) {
|
||||
log.debug("Start calculating flag 5000 and 90 days by RU_PASTDUEARREAR");
|
||||
List<RuPastDuarearData> ruPastDuarearDataList = mapper.findRuPastDuarearData(fids);
|
||||
|
|
@ -108,19 +114,18 @@ public class FlagsService {
|
|||
if (prevAccSerialNum == null || !prevAccSerialNum.equals(data.getAccSerialNum())) {
|
||||
if (data.getAmtPastDue() != null && data.getAmtPastDue().compareTo(BigDecimal.valueOf(5000)) >= 0) {
|
||||
flag5000Map.put(fid, 1);
|
||||
} else {
|
||||
flag5000Map.put(fid, 0);
|
||||
}
|
||||
prevAccSerialNum = data.getAccSerialNum();
|
||||
}
|
||||
}
|
||||
|
||||
if (flag90Days.get(fid) != null && flag90Days.get(fid) == 1) {
|
||||
Integer flag90 = flag90Days.get(fid);
|
||||
if (flag90 != null && flag90 == 1) {
|
||||
iterator.remove();
|
||||
break;
|
||||
}
|
||||
|
||||
if (flag90Days.get(fid) == null || flag90Days.get(fid) == 0) {
|
||||
if (flag90 == null || flag90 == 0) {
|
||||
if (data.getDaysPastDue() != null) {
|
||||
boolean has90daysFlag = data.getDaysPastDue().compareTo(BigInteger.valueOf(90)) >= 0 && !data.getReportedDate().isBefore(yearAgo);
|
||||
if (has90daysFlag) {
|
||||
|
|
@ -137,12 +142,9 @@ public class FlagsService {
|
|||
}
|
||||
}
|
||||
}
|
||||
if (flag5000Map.get(fid) == null) {
|
||||
flag5000Map.put(fid, 0);
|
||||
}
|
||||
if (flag90Days.get(fid) == null) {
|
||||
flag90Days.put(fid, 0);
|
||||
}
|
||||
// если мы так и не нашли флаги для этих фидов - выставляем их в 0
|
||||
flag5000Map.putIfAbsent(fid, 0);
|
||||
flag90Days.putIfAbsent(fid, 0);
|
||||
}
|
||||
log.debug("Complete calculating flag 5000 and 90 days by RU_PASTDUEARREAR");
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue