| Line 45... |
Line 45... |
| 45 |
import com.spice.profitmandi.common.model.GstRate;
|
45 |
import com.spice.profitmandi.common.model.GstRate;
|
| 46 |
import com.spice.profitmandi.common.model.RechargeCredential;
|
46 |
import com.spice.profitmandi.common.model.RechargeCredential;
|
| 47 |
import com.spice.profitmandi.common.util.FileUtil;
|
47 |
import com.spice.profitmandi.common.util.FileUtil;
|
| 48 |
import com.spice.profitmandi.common.util.FormattingUtils;
|
48 |
import com.spice.profitmandi.common.util.FormattingUtils;
|
| 49 |
import com.spice.profitmandi.common.util.Utils;
|
49 |
import com.spice.profitmandi.common.util.Utils;
|
| - |
|
50 |
import com.spice.profitmandi.dao.entity.catalog.Scheme;
|
| 50 |
import com.spice.profitmandi.dao.entity.cs.Ticket;
|
51 |
import com.spice.profitmandi.dao.entity.cs.Ticket;
|
| 51 |
import com.spice.profitmandi.dao.entity.cs.TicketAssigned;
|
52 |
import com.spice.profitmandi.dao.entity.cs.TicketAssigned;
|
| 52 |
import com.spice.profitmandi.dao.entity.dtr.DailyRecharge;
|
53 |
import com.spice.profitmandi.dao.entity.dtr.DailyRecharge;
|
| 53 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProvider;
|
54 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProvider;
|
| 54 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProviderCreditWalletHistory;
|
55 |
import com.spice.profitmandi.dao.entity.dtr.RechargeProviderCreditWalletHistory;
|
| 55 |
import com.spice.profitmandi.dao.entity.dtr.RechargeTransaction;
|
56 |
import com.spice.profitmandi.dao.entity.dtr.RechargeTransaction;
|
| 56 |
import com.spice.profitmandi.dao.entity.fofo.CustomerAddress;
|
57 |
import com.spice.profitmandi.dao.entity.fofo.CustomerAddress;
|
| - |
|
58 |
import com.spice.profitmandi.dao.entity.fofo.FofoLineItem;
|
| 57 |
import com.spice.profitmandi.dao.entity.fofo.FofoOrder;
|
59 |
import com.spice.profitmandi.dao.entity.fofo.FofoOrder;
|
| 58 |
import com.spice.profitmandi.dao.entity.fofo.FofoOrderItem;
|
60 |
import com.spice.profitmandi.dao.entity.fofo.FofoOrderItem;
|
| 59 |
import com.spice.profitmandi.dao.entity.fofo.FofoStore;
|
61 |
import com.spice.profitmandi.dao.entity.fofo.FofoStore;
|
| 60 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
62 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
| 61 |
import com.spice.profitmandi.dao.entity.fofo.PartnerDailyInvestment;
|
63 |
import com.spice.profitmandi.dao.entity.fofo.PartnerDailyInvestment;
|
| Line 80... |
Line 82... |
| 80 |
import com.spice.profitmandi.dao.repository.dtr.RechargeProviderCreditWalletHistoryRepository;
|
82 |
import com.spice.profitmandi.dao.repository.dtr.RechargeProviderCreditWalletHistoryRepository;
|
| 81 |
import com.spice.profitmandi.dao.repository.dtr.RechargeProviderRepository;
|
83 |
import com.spice.profitmandi.dao.repository.dtr.RechargeProviderRepository;
|
| 82 |
import com.spice.profitmandi.dao.repository.dtr.RechargeTransactionRepository;
|
84 |
import com.spice.profitmandi.dao.repository.dtr.RechargeTransactionRepository;
|
| 83 |
import com.spice.profitmandi.dao.repository.dtr.RetailerRegisteredAddressRepository;
|
85 |
import com.spice.profitmandi.dao.repository.dtr.RetailerRegisteredAddressRepository;
|
| 84 |
import com.spice.profitmandi.dao.repository.fofo.CustomerAddressRepository;
|
86 |
import com.spice.profitmandi.dao.repository.fofo.CustomerAddressRepository;
|
| - |
|
87 |
import com.spice.profitmandi.dao.repository.fofo.FofoLineItemRepository;
|
| 85 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderItemRepository;
|
88 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderItemRepository;
|
| 86 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderRepository;
|
89 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderRepository;
|
| 87 |
import com.spice.profitmandi.dao.repository.fofo.InventoryItemRepository;
|
90 |
import com.spice.profitmandi.dao.repository.fofo.InventoryItemRepository;
|
| 88 |
import com.spice.profitmandi.dao.repository.fofo.PartnerDailyInvestmentRepository;
|
91 |
import com.spice.profitmandi.dao.repository.fofo.PartnerDailyInvestmentRepository;
|
| 89 |
import com.spice.profitmandi.dao.repository.fofo.PartnerTargetRepository;
|
92 |
import com.spice.profitmandi.dao.repository.fofo.PartnerTargetRepository;
|
| Line 183... |
Line 186... |
| 183 |
|
186 |
|
| 184 |
@Autowired
|
187 |
@Autowired
|
| 185 |
private RechargeProviderCreditWalletHistoryRepository rechargeProviderCreditWalletHistoryRepository;
|
188 |
private RechargeProviderCreditWalletHistoryRepository rechargeProviderCreditWalletHistoryRepository;
|
| 186 |
|
189 |
|
| 187 |
@Autowired
|
190 |
@Autowired
|
| - |
|
191 |
private FofoLineItemRepository fofoLineItemRepository;
|
| - |
|
192 |
|
| - |
|
193 |
@Autowired
|
| 188 |
private FofoOrderRepository fofoOrderRepository;
|
194 |
private FofoOrderRepository fofoOrderRepository;
|
| 189 |
|
195 |
|
| 190 |
@Autowired
|
196 |
@Autowired
|
| 191 |
private UserWalletHistoryRepository userWalletHistoryRepository;
|
197 |
private UserWalletHistoryRepository userWalletHistoryRepository;
|
| 192 |
|
198 |
|
| Line 854... |
Line 860... |
| 854 |
} else {
|
860 |
} else {
|
| 855 |
finalUserSchemeAmountMap.put(schemeAmount.getKey(),
|
861 |
finalUserSchemeAmountMap.put(schemeAmount.getKey(),
|
| 856 |
finalUserSchemeAmountMap.get(schemeAmount.getKey()) + schemeAmount.getValue());
|
862 |
finalUserSchemeAmountMap.get(schemeAmount.getKey()) + schemeAmount.getValue());
|
| 857 |
}
|
863 |
}
|
| 858 |
}
|
864 |
}
|
| 859 |
Map<Integer, Integer> userWalletMap = userWalletRepository.selectByRetailerIds(finalUserSchemeAmountMap.keySet())
|
865 |
Map<Integer, Integer> userWalletMap = userWalletRepository
|
| - |
|
866 |
.selectByRetailerIds(finalUserSchemeAmountMap.keySet()).stream()
|
| 860 |
.stream().collect(Collectors.toMap(UserWallet::getUserId, UserWallet::getId));
|
867 |
.collect(Collectors.toMap(UserWallet::getUserId, UserWallet::getId));
|
| 861 |
|
868 |
|
| 862 |
Map<Integer, Double> walletAmountMap = history.stream().collect(Collectors.groupingBy(
|
869 |
Map<Integer, Double> walletAmountMap = history.stream().collect(Collectors.groupingBy(
|
| 863 |
UserWalletHistory::getWalletId, Collectors.summingDouble((UserWalletHistory::getAmount))));
|
870 |
UserWalletHistory::getWalletId, Collectors.summingDouble((UserWalletHistory::getAmount))));
|
| 864 |
for (Map.Entry<Integer, Double> userAmount : walletAmountMap.entrySet()) {
|
871 |
for (Map.Entry<Integer, Double> userAmount : walletAmountMap.entrySet()) {
|
| 865 |
double diff = Math.abs(finalUserSchemeAmountMap.get(userAmount.getKey()) - userAmount.getValue());
|
872 |
double diff = Math.abs(finalUserSchemeAmountMap.get(userAmount.getKey()) - userAmount.getValue());
|
| 866 |
if (diff > 5) {
|
873 |
if (diff > 5) {
|
| Line 868... |
Line 875... |
| 868 |
}
|
875 |
}
|
| 869 |
}
|
876 |
}
|
| 870 |
}
|
877 |
}
|
| 871 |
|
878 |
|
| 872 |
}
|
879 |
}
|
| - |
|
880 |
|
| - |
|
881 |
public void dryRunSchemeReco() {
|
| - |
|
882 |
Map<Integer, SchemeType> schemeTypeMap = schemeRepository.selectAll().stream()
|
| - |
|
883 |
.collect(Collectors.toMap(Scheme::getId, Scheme::getType));
|
| - |
|
884 |
LocalDateTime startDate = LocalDate.of(2018, 9, 4).atStartOfDay();
|
| - |
|
885 |
LocalDateTime endDate = startDate.plusDays(1);
|
| - |
|
886 |
List<FofoOrder> allOrders = fofoOrderRepository.selectBetweenSaleDate(startDate, endDate);
|
| - |
|
887 |
allOrders.stream().forEach(fofoOrder -> {
|
| - |
|
888 |
List<Integer> inventoryItemIds = new ArrayList<>();
|
| - |
|
889 |
List<FofoOrderItem> orderItems = fofoOrderItemRepository.selectByOrderId(fofoOrder.getId());
|
| - |
|
890 |
orderItems.forEach(x -> {
|
| - |
|
891 |
inventoryItemIds.addAll(x.getFofoLineItems().stream().map(FofoLineItem::getInventoryItemId)
|
| - |
|
892 |
.collect(Collectors.toSet()));
|
| - |
|
893 |
});
|
| - |
|
894 |
List<SchemeType> sios = schemeInOutRepository.selectAllDuplicate(inventoryItemIds).stream()
|
| - |
|
895 |
.map(x -> schemeTypeMap.get(x.getSchemeId()))
|
| - |
|
896 |
.filter(schemeType -> schemeType.equals(SchemeType.OUT)).collect(Collectors.toList());
|
| - |
|
897 |
if (sios.size() > 0) {
|
| - |
|
898 |
LOGGER.info("Found {} duplicate scheme outs for Orderid {}", sios.size(), fofoOrder.getId());
|
| - |
|
899 |
}
|
| - |
|
900 |
});
|
| - |
|
901 |
}
|
| 873 |
}
|
902 |
}
|
| 874 |
|
903 |
|
| 875 |
/*
|
904 |
/*
|
| 876 |
* public void processSchemeForModel(String string) { pricingService
|
905 |
* public void processSchemeForModel(String string) { pricingService
|
| 877 |
*
|
906 |
*
|