Subversion Repositories SmartDukaan

Rev

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

Rev 29785 Rev 29795
Line 5... Line 5...
5
import java.time.LocalDate;
5
import java.time.LocalDate;
6
import java.time.YearMonth;
6
import java.time.YearMonth;
7
import java.util.ArrayList;
7
import java.util.ArrayList;
8
import java.util.Arrays;
8
import java.util.Arrays;
9
import java.util.Collections;
9
import java.util.Collections;
10
import java.util.Comparator;
-
 
11
import java.util.HashMap;
10
import java.util.HashMap;
12
import java.util.HashSet;
11
import java.util.HashSet;
13
import java.util.Iterator;
12
import java.util.Iterator;
14
import java.util.LinkedHashMap;
13
import java.util.LinkedHashMap;
15
import java.util.List;
14
import java.util.List;
Line 90... Line 89...
90
		Offer offer = new Offer();
89
		Offer offer = new Offer();
91
		offer.setName(createOfferRequest.getName());
90
		offer.setName(createOfferRequest.getName());
92
		offer.setTargetType(createOfferRequest.getTargetType());
91
		offer.setTargetType(createOfferRequest.getTargetType());
93
		offer.setPayoutType(createOfferRequest.getPayoutType());
92
		offer.setPayoutType(createOfferRequest.getPayoutType());
94
		offer.setSchemeType(createOfferRequest.getSchemeType());
93
		offer.setSchemeType(createOfferRequest.getSchemeType());
95
		offer.setIncrementalTarget(createOfferRequest.isIncrementalTarget());
94
		offer.setBaseCriteia(createOfferRequest.isBaseCriteria());
96
		offer.setEndDate(createOfferRequest.getEndDate());
95
		offer.setEndDate(createOfferRequest.getEndDate());
97
		offer.setStartDate(createOfferRequest.getStartDate());
96
		offer.setStartDate(createOfferRequest.getStartDate());
98
		offer.setBrandSharePercentage(createOfferRequest.getBrandShareTerms());
97
		offer.setBrandSharePercentage(createOfferRequest.getBrandShareTerms());
99
		offer.setSellinPercentage(createOfferRequest.getSellinPercentage());
98
		offer.setSellinPercentage(createOfferRequest.getSellinPercentage());
100
		offer.setOfferNotes(createOfferRequest.getOfferNotes());
99
		offer.setOfferNotes(createOfferRequest.getOfferNotes());
Line 211... Line 210...
211
		createOfferRequest.setActive(fromOffer.isActive());
210
		createOfferRequest.setActive(fromOffer.isActive());
212
		createOfferRequest.setSellinPercentage(fromOffer.getSellinPercentage());
211
		createOfferRequest.setSellinPercentage(fromOffer.getSellinPercentage());
213
		createOfferRequest.setBrandShareTerms(fromOffer.getBrandSharePercentage());
212
		createOfferRequest.setBrandShareTerms(fromOffer.getBrandSharePercentage());
214
		createOfferRequest.setOfferNotes(fromOffer.getOfferNotes());
213
		createOfferRequest.setOfferNotes(fromOffer.getOfferNotes());
215
		createOfferRequest.setTerms(fromOffer.getTerms());
214
		createOfferRequest.setTerms(fromOffer.getTerms());
-
 
215
		createOfferRequest.setBaseCriteria(fromOffer.isBaseCriteia());
216
		createOfferRequest.setItemCriteria(
216
		createOfferRequest.setItemCriteria(
217
				gson.fromJson(fromOffer.getItemCriteria(), com.spice.profitmandi.service.offers.ItemCriteria.class));
217
				gson.fromJson(fromOffer.getItemCriteria(), com.spice.profitmandi.service.offers.ItemCriteria.class));
218
		createOfferRequest.setPartnerCriteria(gson.fromJson(fromOffer.getPartnerCriteria(), PartnerCriteria.class));
218
		createOfferRequest.setPartnerCriteria(gson.fromJson(fromOffer.getPartnerCriteria(), PartnerCriteria.class));
219
		createOfferRequest.setId(fromOffer.getId());
219
		createOfferRequest.setId(fromOffer.getId());
220
		createOfferRequest.setCreatedOn(fromOffer.getCreatedTimestamp());
220
		createOfferRequest.setCreatedOn(fromOffer.getCreatedTimestamp());
Line 431... Line 431...
431
	@Cacheable(value = "slabPayoutMap", cacheManager = "thirtyMinsTimeOutCacheManager")
431
	@Cacheable(value = "slabPayoutMap", cacheManager = "thirtyMinsTimeOutCacheManager")
432
	public Map<Integer, Map<Integer, Long>> getSlabPayoutMap(CreateOfferRequest createOfferRequest) {
432
	public Map<Integer, Map<Integer, Long>> getSlabPayoutMap(CreateOfferRequest createOfferRequest) {
433
		Map<Integer, Map<Integer, Long>> itemSlabPayoutMap = new HashMap<>();
433
		Map<Integer, Map<Integer, Long>> itemSlabPayoutMap = new HashMap<>();
434
		com.spice.profitmandi.dao.model.TargetSlab targetSlab = createOfferRequest.getTargetSlabs().get(0);
434
		com.spice.profitmandi.dao.model.TargetSlab targetSlab = createOfferRequest.getTargetSlabs().get(0);
435
		List<ItemCriteriaPayout> payouts = targetSlab.getItemCriteriaPayouts();
435
		List<ItemCriteriaPayout> payouts = targetSlab.getItemCriteriaPayouts();
-
 
436
	
436
		for (ItemCriteriaPayout itemCriteriaPayout : payouts) {
437
		for (ItemCriteriaPayout itemCriteriaPayout : payouts) {
437
			com.spice.profitmandi.service.offers.ItemCriteria itemCriteria = itemCriteriaPayout.getItemCriteria();
438
			com.spice.profitmandi.service.offers.ItemCriteria itemCriteria = itemCriteriaPayout.getItemCriteria();
438
			List<Integer> itemIds = itemRepository.getItems(itemCriteria);
439
			List<Integer> itemIds = itemRepository.getItems(itemCriteria);
439
			for (PayoutSlab payoutSlab : Lists.reverse(itemCriteriaPayout.getPayoutSlabs())) {
440
			for (PayoutSlab payoutSlab : Lists.reverse(itemCriteriaPayout.getPayoutSlabs())) {
440
				if (itemCriteriaPayout.getAmountType().equals(AmountType.FIXED)) {
441
				if (itemCriteriaPayout.getAmountType().equals(AmountType.FIXED)) {