| Line 823... |
Line 823... |
| 823 |
List<Integer> schemeIdsToReject = schemeRepository.selectBySchemeIds(creditedSchemeIds).stream()
|
823 |
List<Integer> schemeIdsToReject = schemeRepository.selectBySchemeIds(creditedSchemeIds).stream()
|
| 824 |
.filter(x -> SchemeType.OUT_TYPES.contains(x.getType())).map(x -> x.getId()).collect(Collectors.toList());
|
824 |
.filter(x -> SchemeType.OUT_TYPES.contains(x.getType())).map(x -> x.getId()).collect(Collectors.toList());
|
| 825 |
//Reject invalid scheme payouts due to upgrade in Category or any change in schemes historically
|
825 |
//Reject invalid scheme payouts due to upgrade in Category or any change in schemes historically
|
| 826 |
for (SchemeInOut sio : sios) {
|
826 |
for (SchemeInOut sio : sios) {
|
| 827 |
if (schemeIdsToReject.contains(sio.getSchemeId()) && !schemeSummaryModelMap.containsKey(sio.getSchemeId())) {
|
827 |
if (schemeIdsToReject.contains(sio.getSchemeId()) && !schemeSummaryModelMap.containsKey(sio.getSchemeId())) {
|
| 828 |
sio.setStatusDescription("Rolledback due to Category upgrade/invalid scheme");
|
- |
|
| 829 |
sio.setStatus(SchemePayoutStatus.REJECTED);
|
- |
|
| 830 |
sio.setRolledBackTimestamp(LocalDateTime.now());
|
- |
|
| 831 |
Scheme scheme = schemeRepository.selectById(sio.getSchemeId());
|
828 |
Scheme scheme = schemeRepository.selectById(sio.getSchemeId());
|
| 832 |
if(scheme.getType().equals(SchemeType.SPECIAL_SUPPORT)) {
|
829 |
if (!scheme.getType().equals(SchemeType.SPECIAL_SUPPORT)) {
|
| 833 |
ScanRecord salesRecord = scanRecordRepository.selectByInventoryItemId(sio.getInventoryItemId()).stream().sorted(Comparator.comparing(ScanRecord::getId).reversed()).findFirst().get();
|
- |
|
| 834 |
walletService.rollbackAmountFromWallet(retailerId,sio.getAmount(), salesRecord.getOrderId(),
|
830 |
sio.setStatusDescription("Rolledback due to Category upgrade/invalid scheme");
|
| 835 |
WalletReferenceType.SPECIAL_SUPPORT, "Reversed due to invalid scheme for IMEI - " + inventoryItem.getSerialNumber(), LocalDateTime.now());
|
- |
|
| 836 |
fofoOrder.setCashback(totalCashback + fofoOrder.getCashback());
|
831 |
sio.setStatus(SchemePayoutStatus.REJECTED);
|
| 837 |
} else {
|
832 |
sio.setRolledBackTimestamp(LocalDateTime.now());
|
| 838 |
sioRejectedValue += sio.getAmount();
|
833 |
sioRejectedValue += sio.getAmount();
|
| 839 |
}
|
834 |
}
|
| 840 |
}
|
835 |
}
|
| 841 |
}
|
836 |
}
|
| 842 |
}
|
837 |
}
|