Subversion Repositories SmartDukaan

Rev

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

Rev 32024 Rev 32845
Line 13... Line 13...
13
import java.time.LocalDateTime;
13
import java.time.LocalDateTime;
14
import java.util.List;
14
import java.util.List;
15
import java.util.Objects;
15
import java.util.Objects;
16
 
16
 
17
public class CreateOfferRequest {
17
public class CreateOfferRequest {
18
	private int id;
18
    private int id;
19
	private boolean active;
19
    private boolean active;
20
	private boolean baseCriteria;
20
    private boolean baseCriteria;
21
	private boolean discount;
21
    private boolean discount;
22
	private String name;
22
    private String name;
23
	private boolean booster;
23
    private boolean booster;
24
	private LocalDateTime startDate;
24
    private LocalDateTime startDate;
25
	private LocalDateTime endDate;
25
    private LocalDateTime endDate;
26
	private LocalDateTime processTimestamp;
26
    private LocalDateTime processTimestamp;
27
	private String offerNotes;
27
    private String offerNotes;
28
	private String terms;
28
    private String terms;
29
	private AchievementType targetType;
29
    private AchievementType targetType;
30
	private AchievementType payoutType;
30
    private AchievementType payoutType;
31
	private String activationBrands;
31
    private String activationBrands;
32
	private OfferSchemeType schemeType;
32
    private OfferSchemeType schemeType;
33
	private double sellinPercentage;
33
    private double sellinPercentage;
34
 
34
 
35
	private double brandShareTerms;
35
    private double brandShareTerms;
36
	private ItemCriteria itemCriteria;
36
    private ItemCriteria itemCriteria;
37
	private String itemCriteriaString;
37
    private String itemCriteriaString;
38
	private LocalDateTime createdOn;
38
    private LocalDateTime createdOn;
39
	private List<TargetSlab> targetSlabs;
39
    private List<TargetSlab> targetSlabs;
40
	private PartnerCriteria partnerCriteria;
40
    private PartnerCriteria partnerCriteria;
41
	private String partnerCriteriaString;
41
    private String partnerCriteriaString;
42
 
42
 
43
 
43
 
44
	public LocalDateTime getBillingEndDate() {
44
    public LocalDateTime getBillingEndDate() {
45
		return this.endDate.plusDays(30);
45
        return this.endDate.plusDays(30);
46
	}
46
    }
47
 
47
 
48
	public LocalDateTime getBillingStartDate() {
48
    public LocalDateTime getBillingStartDate() {
49
		return this.startDate.minusDays(30);
49
        return this.startDate.minusDays(30);
50
	}
50
    }
51
	public LocalDateTime getProcessTimestamp() {
51
 
52
		return processTimestamp;
52
    public LocalDateTime getProcessTimestamp() {
53
	}
53
        return processTimestamp;
54
 
54
    }
55
	public void setProcessTimestamp(LocalDateTime processTimestamp) {
55
 
56
		this.processTimestamp = processTimestamp;
56
    public void setProcessTimestamp(LocalDateTime processTimestamp) {
57
	}
57
        this.processTimestamp = processTimestamp;
58
 
58
    }
59
	@Override
59
 
60
	public boolean equals(Object o) {
60
    @Override
61
		if (this == o) return true;
61
    public boolean equals(Object o) {
62
		if (o == null || getClass() != o.getClass()) return false;
62
        if (this == o) return true;
63
		CreateOfferRequest that = (CreateOfferRequest) o;
63
        if (o == null || getClass() != o.getClass()) return false;
64
		return id == that.id && active == that.active && baseCriteria == that.baseCriteria && booster == that.booster && Double.compare(that.sellinPercentage, sellinPercentage) == 0 && Double.compare(that.brandShareTerms, brandShareTerms) == 0 && eligibleSale == that.eligibleSale && Objects.equals(name, that.name) && Objects.equals(startDate, that.startDate) && Objects.equals(endDate, that.endDate) && Objects.equals(processTimestamp, that.processTimestamp) && Objects.equals(offerNotes, that.offerNotes) && Objects.equals(terms, that.terms) && targetType == that.targetType && payoutType == that.payoutType && Objects.equals(activationBrands, that.activationBrands) && schemeType == that.schemeType && Objects.equals(itemCriteria, that.itemCriteria) && Objects.equals(itemCriteriaString, that.itemCriteriaString) && Objects.equals(createdOn, that.createdOn) && Objects.equals(targetSlabs, that.targetSlabs) && Objects.equals(partnerCriteria, that.partnerCriteria) && Objects.equals(partnerCriteriaString, that.partnerCriteriaString) && Objects.equals(nextTargetSlab, that.nextTargetSlab) && Objects.equals(currentTargetSlab, that.currentTargetSlab) && Objects.equals(currentTarget, that.currentTarget) && Objects.equals(nextTarget, that.nextTarget);
64
        CreateOfferRequest that = (CreateOfferRequest) o;
65
	}
65
        return id == that.id && active == that.active && baseCriteria == that.baseCriteria && booster == that.booster && Double.compare(that.sellinPercentage, sellinPercentage) == 0 && Double.compare(that.brandShareTerms, brandShareTerms) == 0 && eligibleSale == that.eligibleSale && Objects.equals(name, that.name) && Objects.equals(startDate, that.startDate) && Objects.equals(endDate, that.endDate) && Objects.equals(processTimestamp, that.processTimestamp) && Objects.equals(offerNotes, that.offerNotes) && Objects.equals(terms, that.terms) && targetType == that.targetType && payoutType == that.payoutType && Objects.equals(activationBrands, that.activationBrands) && schemeType == that.schemeType && Objects.equals(itemCriteria, that.itemCriteria) && Objects.equals(itemCriteriaString, that.itemCriteriaString) && Objects.equals(createdOn, that.createdOn) && Objects.equals(targetSlabs, that.targetSlabs) && Objects.equals(partnerCriteria, that.partnerCriteria) && Objects.equals(partnerCriteriaString, that.partnerCriteriaString) && Objects.equals(nextTargetSlab, that.nextTargetSlab) && Objects.equals(currentTargetSlab, that.currentTargetSlab) && Objects.equals(currentTarget, that.currentTarget) && Objects.equals(nextTarget, that.nextTarget);
66
 
66
    }
67
	@Override
67
 
68
	public int hashCode() {
68
    @Override
69
		return Objects.hash(id, active, baseCriteria, name, booster, startDate, endDate, processTimestamp, offerNotes, terms, targetType, payoutType, activationBrands, schemeType, sellinPercentage, brandShareTerms, itemCriteria, itemCriteriaString, createdOn, targetSlabs, partnerCriteria, partnerCriteriaString, eligibleSale, nextTargetSlab, currentTargetSlab, currentTarget, nextTarget);
69
    public int hashCode() {
70
	}
70
        return Objects.hash(id, active, baseCriteria, name, booster, startDate, endDate, processTimestamp, offerNotes, terms, targetType, payoutType, activationBrands, schemeType, sellinPercentage, brandShareTerms, itemCriteria, itemCriteriaString, createdOn, targetSlabs, partnerCriteria, partnerCriteriaString, eligibleSale, nextTargetSlab, currentTargetSlab, currentTarget, nextTarget);
71
 
71
    }
72
	private static final Logger LOGGER = LogManager.getLogger(CreateOfferRequest.class);
72
 
73
 
73
    private static final Logger LOGGER = LogManager.getLogger(CreateOfferRequest.class);
74
	public int getEligibleSale() {
74
 
75
		return eligibleSale;
75
    public int getEligibleSale() {
76
	}
76
        return eligibleSale;
77
 
77
    }
78
	public void setEligibleSale(int eligibleSale) {
78
 
79
		this.eligibleSale = eligibleSale;
79
    public void setEligibleSale(int eligibleSale) {
80
	}
80
        this.eligibleSale = eligibleSale;
81
 
81
    }
82
	public boolean isBooster() {
82
 
83
		return booster;
83
    public boolean isBooster() {
84
	}
84
        return booster;
85
 
85
    }
86
	public void setBooster(boolean booster) {
86
 
87
		this.booster = booster;
87
    public void setBooster(boolean booster) {
88
	}
88
        this.booster = booster;
89
 
89
    }
90
 
90
 
91
	public String getAnyItemCriteriaString() {
91
 
92
		return this.getItemCriteriaString().replaceAll("All", "");
92
    public String getAnyItemCriteriaString() {
93
	}
93
        return this.getItemCriteriaString().replaceAll("All", "");
94
 
94
    }
95
	private void addAchievementPayoutString(StringBuffer sb, ItemCriteriaPayout itemCriteriaPayout,
95
 
96
											PayoutSlab payoutSlab) {
96
    private void addAchievementPayoutString(StringBuffer sb, ItemCriteriaPayout itemCriteriaPayout,
97
		this.addAchievementString(sb, itemCriteriaPayout);
97
                                            PayoutSlab payoutSlab) {
98
		sb.append(", Get ");
98
        this.addAchievementString(sb, itemCriteriaPayout);
99
		this.addPayoutString(sb, itemCriteriaPayout, payoutSlab);
99
        sb.append(", Get ");
100
	}
100
        this.addPayoutString(sb, itemCriteriaPayout, payoutSlab);
101
 
101
    }
102
	private void addAchievementString(StringBuffer sb, ItemCriteriaPayout itemCriteriaPayout) {
102
 
103
		if (this.getPayoutType().equals(AchievementType.QUANTITY)) {
103
    private void addAchievementString(StringBuffer sb, ItemCriteriaPayout itemCriteriaPayout) {
104
			sb.append(itemCriteriaPayout.getShortValue()).append(" more ");
104
        if (this.getPayoutType().equals(AchievementType.QUANTITY)) {
105
			if(this.baseCriteria) {
105
            sb.append(itemCriteriaPayout.getShortValue()).append(" more ");
106
				sb.append("of ").append(this.getAnyItemCriteriaString());
106
            if (this.baseCriteria) {
107
			} else {
107
                sb.append("of ").append(this.getAnyItemCriteriaString());
108
				sb.append("pc(s) ");
108
            } else {
109
			}
109
                sb.append("pc(s) ");
110
		} else if (this.getPayoutType().equals(AchievementType.VALUE)) {
110
            }
111
			if(this.baseCriteria) {
111
        } else if (this.getPayoutType().equals(AchievementType.VALUE)) {
112
				sb.append(this.getAnyItemCriteriaString());
112
            if (this.baseCriteria) {
113
			} else {
113
                sb.append(this.getAnyItemCriteriaString());
114
				sb.append("select models worth");
114
            } else {
115
			}
115
                sb.append("select models worth");
116
			sb.append(" of Rs.").append("<span class=\"currency\">").append(itemCriteriaPayout.getShortValue())
116
            }
117
					.append("</span>");
117
            sb.append(" of Rs.").append("<span class=\"currency\">").append(itemCriteriaPayout.getShortValue())
118
		}
118
                    .append("</span>");
119
	}
119
        }
120
 
120
    }
121
	private void addPayoutString(StringBuffer sb, ItemCriteriaPayout itemCriteriaPayout, PayoutSlab payoutSlab) {
121
 
122
		if (itemCriteriaPayout.getAmountType().equals(AmountType.PERCENTAGE)) {
122
    private void addPayoutString(StringBuffer sb, ItemCriteriaPayout itemCriteriaPayout, PayoutSlab payoutSlab) {
123
			sb.append(payoutSlab.getPayoutAmount()).append("% of sale of select models");
123
        if (itemCriteriaPayout.getAmountType().equals(AmountType.PERCENTAGE)) {
124
		} else if (itemCriteriaPayout.getAmountType().equals(AmountType.FIXED)) {
124
            sb.append(payoutSlab.getPayoutAmount()).append("% of sale of select models");
125
			sb.append("Rs.").append("<span class=\"currency\">").append(payoutSlab.getPayoutAmount())
125
        } else if (itemCriteriaPayout.getAmountType().equals(AmountType.FIXED)) {
126
					.append("</span> per pc on select models");
126
            sb.append("Rs.").append("<span class=\"currency\">").append(payoutSlab.getPayoutAmount())
127
		} else {
127
                    .append("</span> per pc on select models");
128
			sb.append("flat Rs.").append("<span class=\"currency\">").append(payoutSlab.getPayoutAmount())
128
        } else {
129
					.append("</span>");
129
            sb.append("flat Rs.").append("<span class=\"currency\">").append(payoutSlab.getPayoutAmount())
130
		}
130
                    .append("</span>");
131
	}
131
        }
132
 
132
    }
133
	public String getDashboardHtml() {
133
 
134
		LOGGER.info("getDahsboard html --- {}", this.getId());
134
    public String getDashboardHtml() {
135
		String activityString = null;
135
        LOGGER.info("getDahsboard html --- {}", this.getId());
136
		if (this.getSchemeType().equals(OfferSchemeType.ACTIVATION)) {
136
        String activityString = null;
137
			activityString = "Activate";
137
        if (this.getSchemeType().equals(OfferSchemeType.ACTIVATION)) {
138
		} else if (this.getSchemeType().equals(OfferSchemeType.SELLIN)) {
138
            activityString = "Activate";
139
			activityString = "Purchase";
139
        } else if (this.getSchemeType().equals(OfferSchemeType.SELLIN)) {
140
		} else {
140
            activityString = "Purchase";
141
			activityString = "Sell";
141
        } else {
142
		}
142
            activityString = "Sell";
143
		StringBuffer sb = new StringBuffer();
143
        }
144
		int i=0;
144
        StringBuffer sb = new StringBuffer();
145
		for (ItemCriteriaPayout itemCriteriaPayout : this.getTargetSlabs().get(0).getItemCriteriaPayouts()) {
145
        int i = 0;
146
			LOGGER.info("itemCriteriaPayout {}", itemCriteriaPayout);
146
        for (ItemCriteriaPayout itemCriteriaPayout : this.getTargetSlabs().get(0).getItemCriteriaPayouts()) {
147
 
147
            LOGGER.info("itemCriteriaPayout {}", itemCriteriaPayout);
148
			PayoutSlab currentSlab = itemCriteriaPayout.getCurrentSlab();
148
 
149
			PayoutSlab nextSlab = itemCriteriaPayout.getNextSlab();
149
            PayoutSlab currentSlab = itemCriteriaPayout.getCurrentSlab();
150
			if (i > 0) {
150
            PayoutSlab nextSlab = itemCriteriaPayout.getNextSlab();
151
				sb.append("<br>");
151
            if (i > 0) {
152
			}
152
                sb.append("<br>");
153
			i++;
153
            }
154
			if (currentSlab == null) {
154
            if (i < 1) {
155
				sb.append(activityString).append(" ");
155
                sb.append("<div class=\"mk_show\">");
156
				this.addAchievementPayoutString(sb, itemCriteriaPayout, nextSlab);
156
            } else {
157
			} else {
157
                sb.append("<div>");
158
				if (itemCriteriaPayout.getNextSlab() != null) {
158
            }
159
					sb.append("Congratulations, you have qualified to get ");
159
            i++;
160
					this.addPayoutString(sb, itemCriteriaPayout, currentSlab);
160
            if (currentSlab == null) {
161
					sb.append(". ");
161
                sb.append(activityString).append(" ");
162
					sb.append(activityString).append(" ");
162
                this.addAchievementPayoutString(sb, itemCriteriaPayout, nextSlab);
163
					this.addAchievementPayoutString(sb, itemCriteriaPayout, nextSlab);
163
            } else {
164
				} else {
164
                if (itemCriteriaPayout.getNextSlab() != null) {
165
					sb.append("Congratulations for achieving the highest slab,");
165
                    sb.append("Congratulations, you have qualified to get ");
166
					sb.append(" you have qualified to get ");
166
                    this.addPayoutString(sb, itemCriteriaPayout, currentSlab);
167
					this.addPayoutString(sb, itemCriteriaPayout, currentSlab);
167
                    sb.append(". ");
168
					sb.append(", keep it up!!");
168
                    sb.append(activityString).append(" ");
169
				}
169
                    this.addAchievementPayoutString(sb, itemCriteriaPayout, nextSlab);
170
			}
170
                } else {
171
		}
171
                    sb.append("Congratulations for achieving the highest slab,");
172
		return sb.toString();
172
                    sb.append(" you have qualified to get ");
173
 
173
                    this.addPayoutString(sb, itemCriteriaPayout, currentSlab);
174
	}
174
                    sb.append(", keep it up!!");
175
 
175
                }
176
	
176
            }
177
 
177
            sb.append("</div>");
178
	public boolean isBaseCriteria() {
178
        }
179
		return baseCriteria;
179
        return sb.toString();
180
	}
180
 
181
 
181
    }
182
	public void setBaseCriteria(boolean baseCriteria) {
182
 
183
		this.baseCriteria = baseCriteria;
183
 
184
	}
184
    public boolean isBaseCriteria() {
185
 
185
        return baseCriteria;
186
 
186
    }
187
 
187
 
188
	private int eligibleSale;
188
    public void setBaseCriteria(boolean baseCriteria) {
189
	private TargetSlab nextTargetSlab;
189
        this.baseCriteria = baseCriteria;
190
	private TargetSlab currentTargetSlab;
190
    }
191
	private String currentTarget;
191
 
192
	private String nextTarget;
192
 
193
 
193
    private int eligibleSale;
194
	public String getCurrentTarget() {
194
    private TargetSlab nextTargetSlab;
195
		return currentTarget;
195
    private TargetSlab currentTargetSlab;
196
	}
196
    private String currentTarget;
197
 
197
    private String nextTarget;
198
	public void setCurrentTarget(String currentTarget) {
198
 
199
		this.currentTarget = currentTarget;
199
    public String getCurrentTarget() {
200
	}
200
        return currentTarget;
201
 
201
    }
202
	public String getNextTarget() {
202
 
203
		return nextTarget;
203
    public void setCurrentTarget(String currentTarget) {
204
	}
204
        this.currentTarget = currentTarget;
205
 
205
    }
206
	public void setNextTarget(String nextTarget) {
206
 
207
		this.nextTarget = nextTarget;
207
    public String getNextTarget() {
208
	}
208
        return nextTarget;
209
 
209
    }
210
	public TargetSlab getNextTargetSlab() {
210
 
211
		return nextTargetSlab;
211
    public void setNextTarget(String nextTarget) {
212
	}
212
        this.nextTarget = nextTarget;
213
 
213
    }
214
	public void setNextTargetSlab(TargetSlab nextTargetSlab) {
214
 
215
		this.nextTargetSlab = nextTargetSlab;
215
    public TargetSlab getNextTargetSlab() {
216
	}
216
        return nextTargetSlab;
217
 
217
    }
218
	public TargetSlab getCurrentTargetSlab() {
218
 
219
		return currentTargetSlab;
219
    public void setNextTargetSlab(TargetSlab nextTargetSlab) {
220
	}
220
        this.nextTargetSlab = nextTargetSlab;
221
 
221
    }
222
	public void setCurrentTargetSlab(TargetSlab currentTargetSlab) {
222
 
223
		this.currentTargetSlab = currentTargetSlab;
223
    public TargetSlab getCurrentTargetSlab() {
224
	}
224
        return currentTargetSlab;
225
 
225
    }
226
	public boolean isActive() {
226
 
227
		return active;
227
    public void setCurrentTargetSlab(TargetSlab currentTargetSlab) {
228
	}
228
        this.currentTargetSlab = currentTargetSlab;
229
 
229
    }
230
	public void setActive(boolean active) {
230
 
231
		this.active = active;
231
    public boolean isActive() {
232
	}
232
        return active;
233
 
233
    }
234
	public LocalDateTime getCreatedOn() {
234
 
235
		return createdOn;
235
    public void setActive(boolean active) {
236
	}
236
        this.active = active;
237
 
237
    }
238
	public AchievementType getPayoutType() {
238
 
239
		return payoutType;
239
    public LocalDateTime getCreatedOn() {
240
	}
240
        return createdOn;
241
 
241
    }
242
	public void setPayoutType(AchievementType payoutType) {
242
 
243
		this.payoutType = payoutType;
243
    public AchievementType getPayoutType() {
244
	}
244
        return payoutType;
245
 
245
    }
246
	public String getActivationBrands() {
246
 
247
		return activationBrands;
247
    public void setPayoutType(AchievementType payoutType) {
248
	}
248
        this.payoutType = payoutType;
249
 
249
    }
250
	public void setActivationBrands(String activationBrands) {
250
 
251
		this.activationBrands = activationBrands;
251
    public String getActivationBrands() {
252
	}
252
        return activationBrands;
253
 
253
    }
254
	public void setCreatedOn(LocalDateTime createdOn) {
254
 
255
		this.createdOn = createdOn;
255
    public void setActivationBrands(String activationBrands) {
256
	}
256
        this.activationBrands = activationBrands;
257
 
257
    }
258
	public String getItemCriteriaString() {
258
 
259
		return itemCriteriaString;
259
    public void setCreatedOn(LocalDateTime createdOn) {
260
	}
260
        this.createdOn = createdOn;
261
 
261
    }
262
	public String getPartnerCriteriaString() {
262
 
263
		return partnerCriteriaString;
263
    public String getItemCriteriaString() {
264
	}
264
        return itemCriteriaString;
265
 
265
    }
266
	public void setPartnerCriteriaString(String partnerCriteriaString) {
266
 
267
		this.partnerCriteriaString = partnerCriteriaString;
267
    public String getPartnerCriteriaString() {
268
	}
268
        return partnerCriteriaString;
269
 
269
    }
270
	public PartnerCriteria getPartnerCriteria() {
270
 
271
		return partnerCriteria;
271
    public void setPartnerCriteriaString(String partnerCriteriaString) {
272
	}
272
        this.partnerCriteriaString = partnerCriteriaString;
273
 
273
    }
274
	public void setPartnerCriteria(PartnerCriteria partnerCriteria) {
274
 
275
		this.partnerCriteria = partnerCriteria;
275
    public PartnerCriteria getPartnerCriteria() {
276
	}
276
        return partnerCriteria;
277
 
277
    }
278
	public ItemCriteria getItemCriteria() {
278
 
279
		return itemCriteria;
279
    public void setPartnerCriteria(PartnerCriteria partnerCriteria) {
280
	}
280
        this.partnerCriteria = partnerCriteria;
281
 
281
    }
282
	public void setItemCriteria(ItemCriteria itemCriteria) {
282
 
283
		this.itemCriteria = itemCriteria;
283
    public ItemCriteria getItemCriteria() {
284
	}
284
        return itemCriteria;
285
 
285
    }
286
	public double getBrandShareTerms() {
286
 
287
		return brandShareTerms;
287
    public void setItemCriteria(ItemCriteria itemCriteria) {
288
	}
288
        this.itemCriteria = itemCriteria;
289
 
289
    }
290
	public void setBrandShareTerms(double brandShareTerms) {
290
 
291
		this.brandShareTerms = brandShareTerms;
291
    public double getBrandShareTerms() {
292
	}
292
        return brandShareTerms;
293
 
293
    }
294
	public List<TargetSlab> getTargetSlabs() {
294
 
295
		return targetSlabs;
295
    public void setBrandShareTerms(double brandShareTerms) {
296
	}
296
        this.brandShareTerms = brandShareTerms;
297
 
297
    }
298
	public void setTargetSlabs(List<TargetSlab> targetSlabs) {
298
 
299
		this.targetSlabs = targetSlabs;
299
    public List<TargetSlab> getTargetSlabs() {
300
	}
300
        return targetSlabs;
301
 
301
    }
302
	public int getId() {
302
 
303
		return id;
303
    public void setTargetSlabs(List<TargetSlab> targetSlabs) {
304
	}
304
        this.targetSlabs = targetSlabs;
305
 
305
    }
306
	public void setId(int id) {
306
 
307
		this.id = id;
307
    public int getId() {
308
	}
308
        return id;
309
 
309
    }
310
	public String getName() {
310
 
311
		return name;
311
    public void setId(int id) {
312
	}
312
        this.id = id;
313
 
313
    }
314
	public void setName(String name) {
314
 
315
		this.name = name;
315
    public String getName() {
316
	}
316
        return name;
317
 
317
    }
318
	public LocalDateTime getStartDate() {
318
 
319
		return startDate;
319
    public void setName(String name) {
320
	}
320
        this.name = name;
321
 
321
    }
322
	public void setStartDate(LocalDateTime startDate) {
322
 
323
		this.startDate = startDate;
323
    public LocalDateTime getStartDate() {
324
	}
324
        return startDate;
325
 
325
    }
326
	public LocalDateTime getEndDate() {
326
 
327
		return endDate;
327
    public void setStartDate(LocalDateTime startDate) {
328
	}
328
        this.startDate = startDate;
329
 
329
    }
330
	public void setEndDate(LocalDateTime endDate) {
330
 
331
		this.endDate = endDate;
331
    public LocalDateTime getEndDate() {
332
	}
332
        return endDate;
333
 
333
    }
334
	public AchievementType getTargetType() {
334
 
335
		return targetType;
335
    public void setEndDate(LocalDateTime endDate) {
336
	}
336
        this.endDate = endDate;
337
 
337
    }
338
	public String getTitle() {
338
 
339
		return String.join(" ", this.getName(), ", ", "From", FormattingUtils.formatDate(this.startDate), "to", FormattingUtils.formatDate(this.endDate), String.valueOf(this.id));
339
    public AchievementType getTargetType() {
340
	}
340
        return targetType;
341
 
341
    }
342
	public String getDescription() {
342
 
343
		return String.join(" ", this.getName() + ",", "From", FormattingUtils.formatDate(this.startDate), "to", FormattingUtils.formatDate(this.endDate));
343
    public String getTitle() {
344
	}
344
        return String.join(" ", this.getName(), ", ", "From", FormattingUtils.formatDate(this.startDate), "to", FormattingUtils.formatDate(this.endDate), String.valueOf(this.id));
345
 
345
    }
346
	public void setTargetType(AchievementType targetType) {
346
 
347
		this.targetType = targetType;
347
    public String getDescription() {
348
	}
348
        return String.join(" ", this.getName() + ",", "From", FormattingUtils.formatDate(this.startDate), "to", FormattingUtils.formatDate(this.endDate));
349
 
349
    }
350
	public OfferSchemeType getSchemeType() {
350
 
351
		return schemeType;
351
    public void setTargetType(AchievementType targetType) {
352
	}
352
        this.targetType = targetType;
353
 
353
    }
354
	public void setSchemeType(OfferSchemeType schemeType) {
354
 
355
		this.schemeType = schemeType;
355
    public OfferSchemeType getSchemeType() {
356
	}
356
        return schemeType;
357
 
357
    }
358
	public double getSellinPercentage() {
358
 
359
		return sellinPercentage;
359
    public void setSchemeType(OfferSchemeType schemeType) {
360
	}
360
        this.schemeType = schemeType;
361
 
361
    }
362
	public void setSellinPercentage(double sellinPercentage) {
362
 
363
		this.sellinPercentage = sellinPercentage;
363
    public double getSellinPercentage() {
364
	}
364
        return sellinPercentage;
365
 
365
    }
366
	public String getOfferNotes() {
366
 
367
		return offerNotes;
367
    public void setSellinPercentage(double sellinPercentage) {
368
	}
368
        this.sellinPercentage = sellinPercentage;
369
 
369
    }
370
	public void setOfferNotes(String offerNotes) {
370
 
371
		this.offerNotes = offerNotes;
371
    public String getOfferNotes() {
372
	}
372
        return offerNotes;
373
 
373
    }
374
	public String getTerms() {
374
 
375
		return terms;
375
    public void setOfferNotes(String offerNotes) {
376
	}
376
        this.offerNotes = offerNotes;
377
 
377
    }
378
	public void setTerms(String terms) {
378
 
379
		this.terms = terms;
379
    public String getTerms() {
380
	}
380
        return terms;
381
 
381
    }
382
	public void setItemCriteriaString(String itemCriteriaString) {
382
 
383
		this.itemCriteriaString = itemCriteriaString;
383
    public void setTerms(String terms) {
384
	}
384
        this.terms = terms;
385
 
385
    }
386
	public boolean isWithinRange(LocalDateTime testDate) {
386
 
387
		return !(testDate.isBefore(startDate) || testDate.isAfter(endDate));
387
    public void setItemCriteriaString(String itemCriteriaString) {
388
	}
388
        this.itemCriteriaString = itemCriteriaString;
389
 
389
    }
390
	public boolean isDiscount() {
390
 
391
		return discount;
391
    public boolean isWithinRange(LocalDateTime testDate) {
392
	}
392
        return !(testDate.isBefore(startDate) || testDate.isAfter(endDate));
393
 
393
    }
394
	public void setDiscount(boolean discount) {
394
 
395
		this.discount = discount;
395
    public boolean isDiscount() {
396
	}
396
        return discount;
397
 
397
    }
398
	@Override
398
 
399
	public String toString() {
399
    public void setDiscount(boolean discount) {
400
		return "CreateOfferRequest{" +
400
        this.discount = discount;
401
				"id=" + id +
401
    }
402
				", active=" + active +
402
 
403
				", baseCriteria=" + baseCriteria +
403
    @Override
404
				", discount=" + discount +
404
    public String toString() {
405
				", name='" + name + '\'' +
405
        return "CreateOfferRequest{" +
406
				", booster=" + booster +
406
                "id=" + id +
407
				", startDate=" + startDate +
407
                ", active=" + active +
408
				", endDate=" + endDate +
408
                ", baseCriteria=" + baseCriteria +
409
				", processTimestamp=" + processTimestamp +
409
                ", discount=" + discount +
410
				", offerNotes='" + offerNotes + '\'' +
410
                ", name='" + name + '\'' +
411
				", terms='" + terms + '\'' +
411
                ", booster=" + booster +
412
				", targetType=" + targetType +
412
                ", startDate=" + startDate +
413
				", payoutType=" + payoutType +
413
                ", endDate=" + endDate +
414
				", activationBrands='" + activationBrands + '\'' +
414
                ", processTimestamp=" + processTimestamp +
415
				", schemeType=" + schemeType +
415
                ", offerNotes='" + offerNotes + '\'' +
416
				", sellinPercentage=" + sellinPercentage +
416
                ", terms='" + terms + '\'' +
417
				", brandShareTerms=" + brandShareTerms +
417
                ", targetType=" + targetType +
418
				", itemCriteria=" + itemCriteria +
418
                ", payoutType=" + payoutType +
419
				", itemCriteriaString='" + itemCriteriaString + '\'' +
419
                ", activationBrands='" + activationBrands + '\'' +
420
				", createdOn=" + createdOn +
420
                ", schemeType=" + schemeType +
421
				", targetSlabs=" + targetSlabs +
421
                ", sellinPercentage=" + sellinPercentage +
422
				", partnerCriteria=" + partnerCriteria +
422
                ", brandShareTerms=" + brandShareTerms +
423
				", partnerCriteriaString='" + partnerCriteriaString + '\'' +
423
                ", itemCriteria=" + itemCriteria +
424
				", eligibleSale=" + eligibleSale +
424
                ", itemCriteriaString='" + itemCriteriaString + '\'' +
425
				", nextTargetSlab=" + nextTargetSlab +
425
                ", createdOn=" + createdOn +
426
				", currentTargetSlab=" + currentTargetSlab +
426
                ", targetSlabs=" + targetSlabs +
427
				", currentTarget='" + currentTarget + '\'' +
427
                ", partnerCriteria=" + partnerCriteria +
428
				", nextTarget='" + nextTarget + '\'' +
428
                ", partnerCriteriaString='" + partnerCriteriaString + '\'' +
429
				'}';
429
                ", eligibleSale=" + eligibleSale +
430
	}
430
                ", nextTargetSlab=" + nextTargetSlab +
-
 
431
                ", currentTargetSlab=" + currentTargetSlab +
-
 
432
                ", currentTarget='" + currentTarget + '\'' +
-
 
433
                ", nextTarget='" + nextTarget + '\'' +
-
 
434
                '}';
-
 
435
    }
431
}
436
}