Subversion Repositories SmartDukaan

Rev

Rev 28001 | Rev 28012 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 28001 Rev 28007
Line 202... Line 202...
202
	public List<CreateOfferRequest> getPublishedOffers(LocalDate date, int fofoId, int itemId) {
202
	public List<CreateOfferRequest> getPublishedOffers(LocalDate date, int fofoId, int itemId) {
203
		List<Offer> publishedOffers = offerRepository.selectAllPublishedMapByPartner(YearMonth.from(date)).get(fofoId);
203
		List<Offer> publishedOffers = offerRepository.selectAllPublishedMapByPartner(YearMonth.from(date)).get(fofoId);
204
		List<CreateOfferRequest> createOfferRequests = new ArrayList<>();
204
		List<CreateOfferRequest> createOfferRequests = new ArrayList<>();
205
		if (publishedOffers != null) {
205
		if (publishedOffers != null) {
206
			for (Offer offer : publishedOffers) {
206
			for (Offer offer : publishedOffers) {
-
 
207
				boolean found = false;
207
				List<com.spice.profitmandi.dao.model.TargetSlab> targetSlabs = targetSlabRepository
208
				List<com.spice.profitmandi.dao.model.TargetSlab> targetSlabs = targetSlabRepository
208
						.getByOfferId(offer.getId());
209
						.getByOfferId(offer.getId());
209
				CreateOfferRequest createOfferRequest = this.getCreateOfferRequest(offer);
210
				CreateOfferRequest createOfferRequest = this.getCreateOfferRequest(offer);
210
				createOfferRequest.setTargetSlabs(targetSlabs);
211
				createOfferRequest.setTargetSlabs(targetSlabs);
211
				createOfferRequests.add(createOfferRequest);
-
 
212
				Set<com.spice.profitmandi.service.offers.ItemCriteria> itemCriteriaSet = targetSlabs.stream()
212
				Set<com.spice.profitmandi.service.offers.ItemCriteria> itemCriteriaSet = targetSlabs.stream()
213
						.flatMap(x -> x.getItemCriteriaPayouts().stream()).map(x -> x.getItemCriteria()).distinct()
213
						.flatMap(x -> x.getItemCriteriaPayouts().stream()).map(x -> x.getItemCriteria()).distinct()
214
						.filter(x -> itemRepository.containsItem(x, itemId)).collect(Collectors.toSet());
214
						.filter(x -> itemRepository.containsItem(x, itemId)).collect(Collectors.toSet());
215
 
215
 
216
				for (com.spice.profitmandi.dao.model.TargetSlab targetSlab : targetSlabs) {
216
				for (com.spice.profitmandi.dao.model.TargetSlab targetSlab : targetSlabs) {
217
					targetSlab.setItemCriteriaPayouts(targetSlab.getItemCriteriaPayouts().stream()
217
					targetSlab.setItemCriteriaPayouts(targetSlab.getItemCriteriaPayouts().stream()
218
							.filter(x -> itemCriteriaSet.contains(x.getItemCriteria())).collect(Collectors.toList()));
218
							.filter(x -> itemCriteriaSet.contains(x.getItemCriteria())).collect(Collectors.toList()));
-
 
219
					if(targetSlab.getItemCriteriaPayouts().size() > 1) {
-
 
220
						found = true;
-
 
221
					}
-
 
222
				}
-
 
223
				if(found) {
-
 
224
					createOfferRequests.add(createOfferRequest);
219
				}
225
				}
220
			}
226
			}
221
		}
227
		}
-
 
228
		
222
		return createOfferRequests;
229
		return createOfferRequests;
223
	}
230
	}
224
 
231
 
225
}
232
}