| Line 1... |
Line 1... |
| 1 |
package com.spice.profitmandi.web.controller;
|
1 |
package com.spice.profitmandi.web.controller;
|
| 2 |
|
2 |
|
| 3 |
import java.time.LocalDateTime;
|
- |
|
| 4 |
import java.util.ArrayList;
|
- |
|
| 5 |
import java.util.HashMap;
|
- |
|
| 6 |
import java.util.List;
|
- |
|
| 7 |
import java.util.Map;
|
- |
|
| 8 |
import java.util.Set;
|
- |
|
| 9 |
import java.util.stream.Collectors;
|
- |
|
| 10 |
|
- |
|
| 11 |
import javax.mail.internet.InternetAddress;
|
- |
|
| 12 |
import javax.mail.internet.MimeMessage;
|
- |
|
| 13 |
import javax.servlet.http.HttpServletRequest;
|
- |
|
| 14 |
|
- |
|
| 15 |
import org.apache.logging.log4j.LogManager;
|
- |
|
| 16 |
import org.apache.logging.log4j.Logger;
|
- |
|
| 17 |
import org.springframework.beans.factory.annotation.Autowired;
|
- |
|
| 18 |
import org.springframework.mail.javamail.JavaMailSender;
|
- |
|
| 19 |
import org.springframework.mail.javamail.MimeMessageHelper;
|
- |
|
| 20 |
import org.springframework.stereotype.Controller;
|
- |
|
| 21 |
import org.springframework.transaction.annotation.Transactional;
|
- |
|
| 22 |
import org.springframework.ui.Model;
|
- |
|
| 23 |
import org.springframework.web.bind.annotation.RequestMapping;
|
- |
|
| 24 |
import org.springframework.web.bind.annotation.RequestMethod;
|
- |
|
| 25 |
import org.springframework.web.bind.annotation.RequestParam;
|
- |
|
| 26 |
|
- |
|
| 27 |
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
|
3 |
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
|
| 28 |
import com.spice.profitmandi.common.model.CustomRetailer;
|
4 |
import com.spice.profitmandi.common.model.CustomRetailer;
|
| 29 |
import com.spice.profitmandi.dao.entity.user.Refferal;
|
5 |
import com.spice.profitmandi.dao.entity.user.Refferal;
|
| 30 |
import com.spice.profitmandi.dao.entity.user.RefferalMonthlyAmount;
|
6 |
import com.spice.profitmandi.dao.entity.user.RefferalMonthlyAmount;
|
| 31 |
import com.spice.profitmandi.dao.entity.user.User;
|
7 |
import com.spice.profitmandi.dao.entity.user.User;
|
| Line 36... |
Line 12... |
| 36 |
import com.spice.profitmandi.dao.repository.dtr.RefferalRepository;
|
12 |
import com.spice.profitmandi.dao.repository.dtr.RefferalRepository;
|
| 37 |
import com.spice.profitmandi.dao.repository.user.UserRepository;
|
13 |
import com.spice.profitmandi.dao.repository.user.UserRepository;
|
| 38 |
import com.spice.profitmandi.service.user.RetailerService;
|
14 |
import com.spice.profitmandi.service.user.RetailerService;
|
| 39 |
import com.spice.profitmandi.service.wallet.WalletService;
|
15 |
import com.spice.profitmandi.service.wallet.WalletService;
|
| 40 |
import com.spice.profitmandi.web.util.MVCResponseSender;
|
16 |
import com.spice.profitmandi.web.util.MVCResponseSender;
|
| 41 |
|
- |
|
| 42 |
import in.shop2020.model.v1.order.WalletReferenceType;
|
17 |
import in.shop2020.model.v1.order.WalletReferenceType;
|
| - |
|
18 |
import org.apache.logging.log4j.LogManager;
|
| - |
|
19 |
import org.apache.logging.log4j.Logger;
|
| - |
|
20 |
import org.springframework.beans.factory.annotation.Autowired;
|
| - |
|
21 |
import org.springframework.mail.javamail.JavaMailSender;
|
| - |
|
22 |
import org.springframework.mail.javamail.MimeMessageHelper;
|
| - |
|
23 |
import org.springframework.stereotype.Controller;
|
| - |
|
24 |
import org.springframework.transaction.annotation.Transactional;
|
| - |
|
25 |
import org.springframework.ui.Model;
|
| - |
|
26 |
import org.springframework.web.bind.annotation.RequestMapping;
|
| - |
|
27 |
import org.springframework.web.bind.annotation.RequestMethod;
|
| - |
|
28 |
import org.springframework.web.bind.annotation.RequestParam;
|
| - |
|
29 |
|
| - |
|
30 |
import javax.mail.internet.InternetAddress;
|
| - |
|
31 |
import javax.mail.internet.MimeMessage;
|
| - |
|
32 |
import javax.servlet.http.HttpServletRequest;
|
| - |
|
33 |
import java.time.LocalDateTime;
|
| - |
|
34 |
import java.util.*;
|
| - |
|
35 |
import java.util.stream.Collectors;
|
| 43 |
|
36 |
|
| 44 |
@Controller
|
37 |
@Controller
|
| 45 |
@Transactional(rollbackFor = Throwable.class)
|
38 |
@Transactional(rollbackFor = Throwable.class)
|
| 46 |
public class RefferalController {
|
39 |
public class RefferalController {
|
| 47 |
|
40 |
|
| Line 149... |
Line 142... |
| 149 |
|
142 |
|
| 150 |
if (refferal.getStatus().equals(RefferalStatus.pending)) {
|
143 |
if (refferal.getStatus().equals(RefferalStatus.pending)) {
|
| 151 |
refferal.setStatus(RefferalStatus.validate);
|
144 |
refferal.setStatus(RefferalStatus.validate);
|
| 152 |
refferal.setUpdatedTimestamp(LocalDateTime.now());
|
145 |
refferal.setUpdatedTimestamp(LocalDateTime.now());
|
| 153 |
refferalRepository.persist(refferal);
|
146 |
refferalRepository.persist(refferal);
|
| 154 |
model.addAttribute("response", mvcResponseSender.createResponseString(true));
|
147 |
model.addAttribute("response1", mvcResponseSender.createResponseString(true));
|
| 155 |
|
148 |
|
| 156 |
String subject = "Referral Approval Request for " + refferal.getRefereeEmail();
|
149 |
String subject = "Referral Approval Request for " + refferal.getRefereeEmail();
|
| 157 |
|
150 |
|
| 158 |
String messageText = this.getMessageForReferral(refferal);
|
151 |
String messageText = this.getMessageForReferral(refferal);
|
| 159 |
MimeMessage message = mailSender.createMimeMessage();
|
152 |
MimeMessage message = mailSender.createMimeMessage();
|
| Line 166... |
Line 159... |
| 166 |
InternetAddress senderAddress = new InternetAddress("noreply@smartdukaan.com", "Smartdukaan Alerts");
|
159 |
InternetAddress senderAddress = new InternetAddress("noreply@smartdukaan.com", "Smartdukaan Alerts");
|
| 167 |
helper.setFrom(senderAddress);
|
160 |
helper.setFrom(senderAddress);
|
| 168 |
mailSender.send(message);
|
161 |
mailSender.send(message);
|
| 169 |
|
162 |
|
| 170 |
} else {
|
163 |
} else {
|
| 171 |
model.addAttribute("response", mvcResponseSender.createResponseString(false));
|
164 |
model.addAttribute("response1", mvcResponseSender.createResponseString(false));
|
| 172 |
|
165 |
|
| 173 |
}
|
166 |
}
|
| 174 |
|
167 |
|
| 175 |
return "response";
|
168 |
return "response";
|
| 176 |
}
|
169 |
}
|
| Line 219... |
Line 212... |
| 219 |
|
212 |
|
| 220 |
String subject = "Referral Request Approved for " + refferal.getRefereeEmail();
|
213 |
String subject = "Referral Request Approved for " + refferal.getRefereeEmail();
|
| 221 |
String messageText = this.getMessageForReferral(refferal);
|
214 |
String messageText = this.getMessageForReferral(refferal);
|
| 222 |
|
215 |
|
| 223 |
this.sendMailWithAttachments(subject, messageText);
|
216 |
this.sendMailWithAttachments(subject, messageText);
|
| 224 |
model.addAttribute("response", mvcResponseSender.createResponseString(true));
|
217 |
model.addAttribute("response1", mvcResponseSender.createResponseString(true));
|
| 225 |
|
218 |
|
| 226 |
} else {
|
219 |
} else {
|
| 227 |
model.addAttribute("response", mvcResponseSender.createResponseString(false));
|
220 |
model.addAttribute("response1", mvcResponseSender.createResponseString(false));
|
| 228 |
|
221 |
|
| 229 |
}
|
222 |
}
|
| 230 |
|
223 |
|
| 231 |
return "response";
|
224 |
return "response";
|
| 232 |
}
|
225 |
}
|
| Line 254... |
Line 247... |
| 254 |
|| refferal.getStatus().equals(RefferalStatus.validate)) {
|
247 |
|| refferal.getStatus().equals(RefferalStatus.validate)) {
|
| 255 |
refferal.setStatus(RefferalStatus.rejected);
|
248 |
refferal.setStatus(RefferalStatus.rejected);
|
| 256 |
refferal.setRejectedReason(rejectionReason);
|
249 |
refferal.setRejectedReason(rejectionReason);
|
| 257 |
refferal.setUpdatedTimestamp(LocalDateTime.now());
|
250 |
refferal.setUpdatedTimestamp(LocalDateTime.now());
|
| 258 |
refferalRepository.persist(refferal);
|
251 |
refferalRepository.persist(refferal);
|
| 259 |
model.addAttribute("response", mvcResponseSender.createResponseString(true));
|
252 |
model.addAttribute("response1", mvcResponseSender.createResponseString(true));
|
| 260 |
|
253 |
|
| 261 |
} else {
|
254 |
} else {
|
| 262 |
model.addAttribute("response", mvcResponseSender.createResponseString(false));
|
255 |
model.addAttribute("response1", mvcResponseSender.createResponseString(false));
|
| 263 |
|
256 |
|
| 264 |
}
|
257 |
}
|
| 265 |
|
258 |
|
| 266 |
return "response";
|
259 |
return "response";
|
| 267 |
}
|
260 |
}
|
| Line 401... |
Line 394... |
| 401 |
for (Refferal refferl : approvedRefferals) {
|
394 |
for (Refferal refferl : approvedRefferals) {
|
| 402 |
refferl.setStatus(RefferalStatus.transferred);
|
395 |
refferl.setStatus(RefferalStatus.transferred);
|
| 403 |
refferl.setUpdatedTimestamp(LocalDateTime.now());
|
396 |
refferl.setUpdatedTimestamp(LocalDateTime.now());
|
| 404 |
}
|
397 |
}
|
| 405 |
|
398 |
|
| 406 |
model.addAttribute("response", mvcResponseSender.createResponseString(true));
|
399 |
model.addAttribute("response1", mvcResponseSender.createResponseString(true));
|
| 407 |
} else {
|
400 |
} else {
|
| 408 |
model.addAttribute("response", mvcResponseSender.createResponseString(false));
|
401 |
model.addAttribute("response1", mvcResponseSender.createResponseString(false));
|
| 409 |
}
|
402 |
}
|
| 410 |
return "response";
|
403 |
return "response";
|
| 411 |
}
|
404 |
}
|
| 412 |
|
405 |
|
| 413 |
@RequestMapping(value = "/addMoneyToWalletPreviousMonth", method = RequestMethod.POST)
|
406 |
@RequestMapping(value = "/addMoneyToWalletPreviousMonth", method = RequestMethod.POST)
|
| Line 447... |
Line 440... |
| 447 |
for (Refferal refferl : oldPreMonthapproved) {
|
440 |
for (Refferal refferl : oldPreMonthapproved) {
|
| 448 |
refferl.setStatus(RefferalStatus.transferred);
|
441 |
refferl.setStatus(RefferalStatus.transferred);
|
| 449 |
refferl.setUpdatedTimestamp(LocalDateTime.now());
|
442 |
refferl.setUpdatedTimestamp(LocalDateTime.now());
|
| 450 |
}
|
443 |
}
|
| 451 |
|
444 |
|
| 452 |
model.addAttribute("response", mvcResponseSender.createResponseString(true));
|
445 |
model.addAttribute("response1", mvcResponseSender.createResponseString(true));
|
| 453 |
} else {
|
446 |
} else {
|
| 454 |
model.addAttribute("response", mvcResponseSender.createResponseString(false));
|
447 |
model.addAttribute("response1", mvcResponseSender.createResponseString(false));
|
| 455 |
}
|
448 |
}
|
| 456 |
return "response";
|
449 |
return "response";
|
| 457 |
}
|
450 |
}
|
| 458 |
|
451 |
|
| 459 |
@RequestMapping(value = "/getTransferredRefferals", method = RequestMethod.GET)
|
452 |
@RequestMapping(value = "/getTransferredRefferals", method = RequestMethod.GET)
|