| Line 46... |
Line 46... |
| 46 |
import org.springframework.transaction.annotation.Transactional;
|
46 |
import org.springframework.transaction.annotation.Transactional;
|
| 47 |
|
47 |
|
| 48 |
import com.google.common.collect.Lists;
|
48 |
import com.google.common.collect.Lists;
|
| 49 |
import com.google.gson.Gson;
|
49 |
import com.google.gson.Gson;
|
| 50 |
import com.google.gson.GsonBuilder;
|
50 |
import com.google.gson.GsonBuilder;
|
| - |
|
51 |
import com.mongodb.connection.Stream;
|
| 51 |
import com.spice.profitmandi.common.enumuration.MessageType;
|
52 |
import com.spice.profitmandi.common.enumuration.MessageType;
|
| 52 |
import com.spice.profitmandi.common.enumuration.RechargeStatus;
|
53 |
import com.spice.profitmandi.common.enumuration.RechargeStatus;
|
| 53 |
import com.spice.profitmandi.common.enumuration.ReporticoProject;
|
54 |
import com.spice.profitmandi.common.enumuration.ReporticoProject;
|
| 54 |
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
|
55 |
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
|
| 55 |
import com.spice.profitmandi.common.model.CustomRetailer;
|
56 |
import com.spice.profitmandi.common.model.CustomRetailer;
|
| Line 71... |
Line 72... |
| 71 |
import com.spice.profitmandi.dao.entity.catalog.Scheme;
|
72 |
import com.spice.profitmandi.dao.entity.catalog.Scheme;
|
| 72 |
import com.spice.profitmandi.dao.entity.cs.Position;
|
73 |
import com.spice.profitmandi.dao.entity.cs.Position;
|
| 73 |
import com.spice.profitmandi.dao.entity.cs.Ticket;
|
74 |
import com.spice.profitmandi.dao.entity.cs.Ticket;
|
| 74 |
import com.spice.profitmandi.dao.entity.dtr.DailyRecharge;
|
75 |
import com.spice.profitmandi.dao.entity.dtr.DailyRecharge;
|
| 75 |
import com.spice.profitmandi.dao.entity.dtr.NotificationCampaign;
|
76 |
import com.spice.profitmandi.dao.entity.dtr.NotificationCampaign;
|
| - |
|
77 |
import com.spice.profitmandi.dao.entity.dtr.PaymentOptionTransaction;
|
| 76 |
import com.spice.profitmandi.dao.entity.dtr.PushNotifications;
|
78 |
import com.spice.profitmandi.dao.entity.dtr.PushNotifications;
|
| 77 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProvider;
|
79 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProvider;
|
| 78 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProviderCreditWalletHistory;
|
80 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProviderCreditWalletHistory;
|
| 79 |
import com.spice.profitmandi.dao.entity.dtr.RechargeTransaction;
|
81 |
import com.spice.profitmandi.dao.entity.dtr.RechargeTransaction;
|
| 80 |
import com.spice.profitmandi.dao.entity.dtr.User;
|
82 |
import com.spice.profitmandi.dao.entity.dtr.User;
|
| Line 100... |
Line 102... |
| 100 |
import com.spice.profitmandi.dao.entity.user.FranchiseeVisit;
|
102 |
import com.spice.profitmandi.dao.entity.user.FranchiseeVisit;
|
| 101 |
import com.spice.profitmandi.dao.entity.user.Lead;
|
103 |
import com.spice.profitmandi.dao.entity.user.Lead;
|
| 102 |
import com.spice.profitmandi.dao.entity.user.Refferal;
|
104 |
import com.spice.profitmandi.dao.entity.user.Refferal;
|
| 103 |
import com.spice.profitmandi.dao.enumuration.catalog.SchemeType;
|
105 |
import com.spice.profitmandi.dao.enumuration.catalog.SchemeType;
|
| 104 |
import com.spice.profitmandi.dao.enumuration.cs.EscalationType;
|
106 |
import com.spice.profitmandi.dao.enumuration.cs.EscalationType;
|
| - |
|
107 |
import com.spice.profitmandi.dao.enumuration.dtr.PaymentOptionReferenceType;
|
| 105 |
import com.spice.profitmandi.dao.enumuration.dtr.RefferalStatus;
|
108 |
import com.spice.profitmandi.dao.enumuration.dtr.RefferalStatus;
|
| 106 |
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
|
109 |
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
|
| 107 |
import com.spice.profitmandi.dao.enumuration.transaction.PriceDropImeiStatus;
|
110 |
import com.spice.profitmandi.dao.enumuration.transaction.PriceDropImeiStatus;
|
| 108 |
import com.spice.profitmandi.dao.model.SimpleCampaign;
|
111 |
import com.spice.profitmandi.dao.model.SimpleCampaign;
|
| 109 |
import com.spice.profitmandi.dao.model.SimpleCampaignParams;
|
112 |
import com.spice.profitmandi.dao.model.SimpleCampaignParams;
|
| Line 2378... |
Line 2381... |
| 2378 |
List<UserWalletHistory> uwhList = userWalletHistoryRepository.selectAllByDateType(localDate.atStartOfDay(), localDate.plusDays(1).atStartOfDay(),
|
2381 |
List<UserWalletHistory> uwhList = userWalletHistoryRepository.selectAllByDateType(localDate.atStartOfDay(), localDate.plusDays(1).atStartOfDay(),
|
| 2379 |
Arrays.asList(WalletReferenceType.SCHEME_IN, WalletReferenceType.SCHEME_OUT));
|
2382 |
Arrays.asList(WalletReferenceType.SCHEME_IN, WalletReferenceType.SCHEME_OUT));
|
| 2380 |
for (UserWalletHistory uwh : uwhList) {
|
2383 |
for (UserWalletHistory uwh : uwhList) {
|
| 2381 |
if(uwh.getBusinessTimestamp().getMonth().equals(Month.SEPTEMBER)) {
|
2384 |
if(uwh.getBusinessTimestamp().getMonth().equals(Month.SEPTEMBER)) {
|
| 2382 |
UserWallet uw = userWalletRepository.selectById(uwh.getWalletId());
|
2385 |
UserWallet uw = userWalletRepository.selectById(uwh.getWalletId());
|
| 2383 |
LOGGER.info("UWH - {}", uwh);
|
2386 |
//LOGGER.info("UWH - {}", uwh);
|
| 2384 |
//amount += uwh.getAmount();
|
2387 |
//amount += uwh.getAmount();
|
| 2385 |
//System.out.println("Amount is - " + amount);
|
2388 |
//System.out.println("Amount is - " + amount);
|
| 2386 |
walletService.rollbackAmountFromWallet(uw.getUserId(), uwh.getAmount(), uwh.getReference(), uwh.getReferenceType(), "Margin reversal for error prone run", uwh.getBusinessTimestamp());
|
2389 |
//walletService.rollbackAmountFromWallet(uw.getUserId(), uwh.getAmount(), uwh.getReference(), uwh.getReferenceType(), "Margin reversal for error prone run", uwh.getBusinessTimestamp());
|
| - |
|
2390 |
int orderId = uwh.getReference();
|
| - |
|
2391 |
FofoOrder fofoOrder = fofoOrderRepository.selectByOrderId(orderId);
|
| - |
|
2392 |
int inventoryItemId = 0;
|
| - |
|
2393 |
//fofoOrderRepository.delete(fofoOrder);
|
| - |
|
2394 |
List<FofoOrderItem> fofoOrderItems = fofoOrderItemRepository.selectByOrderId(fofoOrder.getId());
|
| - |
|
2395 |
/*List<PaymentOptionTransaction> paymentOptionTransactions = paymentOptionTransactionRepository.selectByReferenceIdAndType(fofoOrder.getId(), PaymentOptionReferenceType.ORDER);
|
| - |
|
2396 |
for(PaymentOptionTransaction paymentOptionTransaction : paymentOptionTransactions) {
|
| - |
|
2397 |
//paymentOptionTransactionRepository.delete(paymentOptionTransaction);
|
| - |
|
2398 |
}*/
|
| - |
|
2399 |
for(FofoOrderItem foi : fofoOrderItems) {
|
| - |
|
2400 |
//fofoOrderItemRepository.delete(foi);
|
| - |
|
2401 |
List<FofoLineItem> flis = fofoLineItemRepository.selectByFofoOrderItemId(foi.getId());
|
| - |
|
2402 |
for(FofoLineItem fli : flis) {
|
| - |
|
2403 |
//fofoLineItemRepository.delete(fli);
|
| - |
|
2404 |
inventoryItemId = fli.getInventoryItemId();
|
| - |
|
2405 |
}
|
| - |
|
2406 |
}
|
| - |
|
2407 |
List<SchemeInOut> schemeInOuts = schemeInOutRepository.selectByInventoryItemIds(java.util.stream.Stream.of(inventoryItemId).collect(Collectors.toSet()));
|
| - |
|
2408 |
for(SchemeInOut sio : schemeInOuts) {
|
| - |
|
2409 |
if(sio.getCreateTimestamp().toLocalDate().equals(localDate)) {
|
| - |
|
2410 |
LOGGER.info("SIO - ", sio);
|
| - |
|
2411 |
//sio.setRolledBackTimestamp(LocalDateTime.now());
|
| - |
|
2412 |
}
|
| - |
|
2413 |
}
|
| - |
|
2414 |
//Rollback entry with reversal reason
|
| - |
|
2415 |
/*if(fofoOrder.getCreateTimestamp().isAfter(LocalDate.of(2020, 4, 1).atStartOfDay())) {
|
| - |
|
2416 |
List<UserWalletHistory> userWalletHistory = userWalletHistoryRepository.selectAllByreferenceIdandreferenceType(fofoOrder.getId(), WalletReferenceType.SCHEME_OUT);
|
| - |
|
2417 |
totalAmount += userWalletHistory.stream().collect(Collectors.summingInt(y->y.getAmount()));
|
| - |
|
2418 |
walletService.rollbackAmountFromWallet(fofoOrder.getFofoId(), totalAmount, fofoOrder.getId(), WalletReferenceType.SCHEME_OUT,
|
| - |
|
2419 |
"Same order for Invoice-"+ invoiceNumber + "created twice, duplicate invoice rollback", fofoOrder.getCancelledTimestamp());
|
| - |
|
2420 |
List<SchemeInOut> schemeInOuts = schemeInOutRepository.selectByInventoryItemIds(new HashSet<>(Arrays.asList(inventoryItemId)));
|
| - |
|
2421 |
for(SchemeInOut sio : schemeInOuts) {
|
| - |
|
2422 |
LOGGER.info(sio);
|
| - |
|
2423 |
}
|
| - |
|
2424 |
|
| - |
|
2425 |
}*/
|
| - |
|
2426 |
|
| - |
|
2427 |
|
| 2387 |
}
|
2428 |
}
|
| 2388 |
}
|
2429 |
}
|
| 2389 |
|
2430 |
|
| 2390 |
}
|
2431 |
}
|
| 2391 |
|
2432 |
|