| Line 88... |
Line 88... |
| 88 |
LocalDateTime curDate = LocalDate.now().atStartOfDay();
|
88 |
LocalDateTime curDate = LocalDate.now().atStartOfDay();
|
| 89 |
LocalDateTime startDate = curDate.minusMonths(3);
|
89 |
LocalDateTime startDate = curDate.minusMonths(3);
|
| 90 |
List<RetailerPeformanceFilterModel> retailerPerPeformanceFilterModels = new ArrayList<RetailerPeformanceFilterModel>();
|
90 |
List<RetailerPeformanceFilterModel> retailerPerPeformanceFilterModels = new ArrayList<RetailerPeformanceFilterModel>();
|
| 91 |
DecimalFormat decimalFormatter = new DecimalFormat("0.#");
|
91 |
DecimalFormat decimalFormatter = new DecimalFormat("0.#");
|
| 92 |
|
92 |
|
| - |
|
93 |
Map<Integer, List<Loan>> duedateMap = new HashMap<Integer, List<Loan>>();
|
| - |
|
94 |
|
| 93 |
Map<Integer, List<Loan>> defaultduedateMap = new HashMap<Integer, List<Loan>>();
|
95 |
Map<Integer, List<Loan>> defaultdateMap = new HashMap<Integer, List<Loan>>();
|
| - |
|
96 |
|
| 94 |
Map<Integer, BillingDaysAvg> billingDeliverAvgMap = new HashMap<Integer, BillingDaysAvg>();
|
97 |
Map<Integer, BillingDaysAvg> billingDeliverAvgMap = new HashMap<Integer, BillingDaysAvg>();
|
| 95 |
Map<Integer, Long> lastPurchaseMap = new HashMap<Integer, Long>();
|
98 |
Map<Integer, Long> lastPurchaseMap = new HashMap<Integer, Long>();
|
| 96 |
Map<Integer, Long> lastSaleMap = new HashMap<Integer, Long>();
|
99 |
Map<Integer, Long> lastSaleMap = new HashMap<Integer, Long>();
|
| 97 |
Map<Integer, PartnerDailyInvestment> partnerDailyInvestmentMap = new HashMap<Integer, PartnerDailyInvestment>();
|
100 |
Map<Integer, PartnerDailyInvestment> partnerDailyInvestmentMap = new HashMap<Integer, PartnerDailyInvestment>();
|
| 98 |
Map<Integer, Double> secondaryPartner = new HashMap<Integer, Double>();
|
101 |
Map<Integer, Double> secondaryPartner = new HashMap<Integer, Double>();
|
| Line 102... |
Line 105... |
| 102 |
|
105 |
|
| 103 |
if (retailerFilter.isCredit()) {
|
106 |
if (retailerFilter.isCredit()) {
|
| 104 |
List<Loan> dueDateLoans = sdCreditServiceImpl.getDueDateCrossLoan();
|
107 |
List<Loan> dueDateLoans = sdCreditServiceImpl.getDueDateCrossLoan();
|
| 105 |
List<Loan> defaultLoans = sdCreditServiceImpl.getDefaultLoan();
|
108 |
List<Loan> defaultLoans = sdCreditServiceImpl.getDefaultLoan();
|
| 106 |
|
109 |
|
| 107 |
defaultLoans.addAll(dueDateLoans);
|
- |
|
| 108 |
if (!defaultLoans.isEmpty()) {
|
110 |
if (!defaultLoans.isEmpty()) {
|
| 109 |
defaultduedateMap = defaultLoans.stream().collect(Collectors.groupingBy(x -> x.getFofoId()));
|
111 |
defaultdateMap = defaultLoans.stream().collect(Collectors.groupingBy(x -> x.getFofoId()));
|
| - |
|
112 |
}
|
| - |
|
113 |
if (!dueDateLoans.isEmpty()) {
|
| - |
|
114 |
duedateMap = dueDateLoans.stream().collect(Collectors.groupingBy(x -> x.getFofoId()));
|
| 110 |
}
|
115 |
}
|
| 111 |
}
|
116 |
}
|
| 112 |
|
117 |
|
| - |
|
118 |
|
| 113 |
if (retailerFilter.isBilling()) {
|
119 |
if (retailerFilter.isBilling()) {
|
| 114 |
List<BillingDaysAvg> billingDeliveryAvg = orderRepository.selectBillingToDeliverAvg(startDate, LocalDateTime.now());
|
120 |
List<BillingDaysAvg> billingDeliveryAvg = orderRepository.selectBillingToDeliverAvg(startDate, LocalDateTime.now());
|
| 115 |
if (!billingDeliveryAvg.isEmpty()) {
|
121 |
if (!billingDeliveryAvg.isEmpty()) {
|
| 116 |
billingDeliverAvgMap = billingDeliveryAvg.stream().filter(x -> x.getAvg() > 1).collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
|
122 |
billingDeliverAvgMap = billingDeliveryAvg.stream().filter(x -> x.getAvg() > 1).collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
|
| 117 |
}
|
123 |
}
|
| Line 152... |
Line 158... |
| 152 |
curDate.withDayOfMonth(1).minusMonths(1), curDate.with(LocalTime.MAX).minusMonths(1));
|
158 |
curDate.withDayOfMonth(1).minusMonths(1), curDate.with(LocalTime.MAX).minusMonths(1));
|
| 153 |
|
159 |
|
| 154 |
Set<Integer> fofoIds = new HashSet<>();
|
160 |
Set<Integer> fofoIds = new HashSet<>();
|
| 155 |
fofoIds.addAll(secondaryMtd.keySet());
|
161 |
fofoIds.addAll(secondaryMtd.keySet());
|
| 156 |
fofoIds.addAll(secondarylmtd.keySet());
|
162 |
fofoIds.addAll(secondarylmtd.keySet());
|
| 157 |
LOGGER.info("fofoIds {}", fofoIds);
|
- |
|
| 158 |
|
163 |
|
| 159 |
|
164 |
|
| 160 |
for (Integer fofoId : fofoIds) {
|
165 |
for (Integer fofoId : fofoIds) {
|
| 161 |
double mtdVal = 0;
|
166 |
double mtdVal = 0;
|
| 162 |
double lmtdVal = 0;
|
167 |
double lmtdVal = 0;
|
| 163 |
if (secondaryMtd.get(fofoId) != null) {
|
168 |
if (secondaryMtd.get(fofoId) != null) {
|
| Line 170... |
Line 175... |
| 170 |
double value = (mtdVal / lmtdVal) * 100;
|
175 |
double value = (mtdVal / lmtdVal) * 100;
|
| 171 |
if (value <= retailerFilter.getMtdsPct()) {
|
176 |
if (value <= retailerFilter.getMtdsPct()) {
|
| 172 |
secondaryPartner.put(fofoId, value);
|
177 |
secondaryPartner.put(fofoId, value);
|
| 173 |
}
|
178 |
}
|
| 174 |
|
179 |
|
| 175 |
if (fofoId == 175139178) {
|
- |
|
| 176 |
LOGGER.info("dd {}", mtdVal);
|
- |
|
| 177 |
LOGGER.info("dd {}", lmtdVal);
|
- |
|
| 178 |
|
180 |
|
| 179 |
LOGGER.info("dd {}", value);
|
- |
|
| 180 |
|
- |
|
| 181 |
}
|
- |
|
| 182 |
}
|
181 |
}
|
| 183 |
|
182 |
|
| 184 |
}
|
183 |
}
|
| 185 |
|
184 |
|
| 186 |
|
185 |
|
| Line 222... |
Line 221... |
| 222 |
|
221 |
|
| 223 |
for (Entry<Integer, CustomRetailer> customRetailerEntry : customRetailers.entrySet()) {
|
222 |
for (Entry<Integer, CustomRetailer> customRetailerEntry : customRetailers.entrySet()) {
|
| 224 |
int fofoId = customRetailerEntry.getKey();
|
223 |
int fofoId = customRetailerEntry.getKey();
|
| 225 |
RetailerPeformanceFilterModel retailerPeformanceFilterModel = new RetailerPeformanceFilterModel();
|
224 |
RetailerPeformanceFilterModel retailerPeformanceFilterModel = new RetailerPeformanceFilterModel();
|
| 226 |
if (retailerFilter.isCredit()) {
|
225 |
if (retailerFilter.isCredit()) {
|
| - |
|
226 |
|
| 227 |
if (!defaultduedateMap.isEmpty()) {
|
227 |
if (!duedateMap.isEmpty()) {
|
| 228 |
if (defaultduedateMap.containsKey(fofoId)) {
|
- |
|
| 229 |
retailerPeformanceFilterModel.setCredit(true);
|
228 |
retailerPeformanceFilterModel.setCredit("Due");
|
| 230 |
}
|
229 |
}
|
| - |
|
230 |
if (!defaultdateMap.isEmpty()) {
|
| - |
|
231 |
retailerPeformanceFilterModel.setCredit("Default");
|
| - |
|
232 |
|
| 231 |
}
|
233 |
}
|
| 232 |
}
|
234 |
}
|
| 233 |
|
235 |
|
| 234 |
if (retailerFilter.isBilling()) {
|
236 |
if (retailerFilter.isBilling()) {
|
| 235 |
if (!billingDeliverAvgMap.isEmpty()) {
|
237 |
if (!billingDeliverAvgMap.isEmpty()) {
|