| Line 262... |
Line 262... |
| 262 |
}
|
262 |
}
|
| 263 |
|
263 |
|
| 264 |
}
|
264 |
}
|
| 265 |
|
265 |
|
| 266 |
@Override
|
266 |
@Override
|
| 267 |
public List<CreateOfferRequest> getPublishedOffers(LocalDate date, int fofoId, int itemId) {
|
267 |
public List<CreateOfferRequest> getPublishedOffers(LocalDate date, int fofoId, int catalogId) {
|
| 268 |
List<Offer> publishedOffers = offerRepository.selectAllPublishedMapByPartner(YearMonth.from(date)).get(fofoId);
|
268 |
List<Offer> publishedOffers = offerRepository.selectAllPublishedMapByPartner(YearMonth.from(date)).get(fofoId);
|
| 269 |
List<CreateOfferRequest> createOfferRequests = new ArrayList<>();
|
269 |
List<CreateOfferRequest> createOfferRequests = new ArrayList<>();
|
| 270 |
if (publishedOffers != null) {
|
270 |
if (publishedOffers != null) {
|
| 271 |
for (Offer offer : publishedOffers) {
|
271 |
for (Offer offer : publishedOffers) {
|
| 272 |
boolean found = false;
|
272 |
boolean found = false;
|
| Line 275... |
Line 275... |
| 275 |
CreateOfferRequest createOfferRequest = this.getCreateOfferRequest(offer);
|
275 |
CreateOfferRequest createOfferRequest = this.getCreateOfferRequest(offer);
|
| 276 |
createOfferRequest.setTargetSlabs(targetSlabs);
|
276 |
createOfferRequest.setTargetSlabs(targetSlabs);
|
| 277 |
this.setCriteriaPayoutAchieved(fofoId, createOfferRequest);
|
277 |
this.setCriteriaPayoutAchieved(fofoId, createOfferRequest);
|
| 278 |
Set<com.spice.profitmandi.service.offers.ItemCriteria> itemCriteriaSet = targetSlabs.stream()
|
278 |
Set<com.spice.profitmandi.service.offers.ItemCriteria> itemCriteriaSet = targetSlabs.stream()
|
| 279 |
.flatMap(x -> x.getItemCriteriaPayouts().stream()).map(x -> x.getItemCriteria()).distinct()
|
279 |
.flatMap(x -> x.getItemCriteriaPayouts().stream()).map(x -> x.getItemCriteria()).distinct()
|
| 280 |
.filter(x -> itemRepository.containsItem(x, itemId)).collect(Collectors.toSet());
|
280 |
.filter(x -> itemRepository.containsModel(x, catalogId)).collect(Collectors.toSet());
|
| 281 |
|
281 |
|
| 282 |
for (com.spice.profitmandi.dao.model.TargetSlab targetSlab : targetSlabs) {
|
282 |
for (com.spice.profitmandi.dao.model.TargetSlab targetSlab : targetSlabs) {
|
| 283 |
targetSlab.setItemCriteriaPayouts(targetSlab.getItemCriteriaPayouts().stream()
|
283 |
targetSlab.setItemCriteriaPayouts(targetSlab.getItemCriteriaPayouts().stream()
|
| 284 |
.filter(x -> itemCriteriaSet.contains(x.getItemCriteria())).collect(Collectors.toList()));
|
284 |
.filter(x -> itemCriteriaSet.contains(x.getItemCriteria())).collect(Collectors.toList()));
|
| 285 |
if (targetSlab.getItemCriteriaPayouts().size() > 0) {
|
285 |
if (targetSlab.getItemCriteriaPayouts().size() > 0) {
|