Subversion Repositories SmartDukaan

Rev

Rev 22405 | Rev 22931 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
22398 amit.gupta 1
package com.spice.profitmandi.web.controller;
2
 
3
import javax.mail.internet.InternetAddress;
4
import javax.mail.internet.MimeMessage;
5
import javax.servlet.http.HttpServletRequest;
6
 
7
import org.springframework.beans.factory.annotation.Autowired;
8
import org.springframework.http.MediaType;
9
import org.springframework.http.ResponseEntity;
10
import org.springframework.mail.javamail.JavaMailSender;
11
import org.springframework.mail.javamail.MimeMessageHelper;
22400 amit.gupta 12
import org.springframework.stereotype.Controller;
13
import org.springframework.transaction.annotation.Transactional;
22398 amit.gupta 14
import org.springframework.web.bind.annotation.RequestBody;
15
import org.springframework.web.bind.annotation.RequestMapping;
16
import org.springframework.web.bind.annotation.RequestMethod;
17
 
18
import com.spice.profitmandi.common.model.UserInfo;
19
import com.spice.profitmandi.common.web.util.ResponseSender;
20
import com.spice.profitmandi.dao.entity.dtr.User;
21
import com.spice.profitmandi.dao.repository.dtr.UserAccountRepository;
22
import com.spice.profitmandi.dao.repository.dtr.UserRepository;
23
import com.spice.profitmandi.web.req.FeedbackRequest;
24
 
25
import io.swagger.annotations.ApiImplicitParam;
26
import io.swagger.annotations.ApiImplicitParams;
27
 
22400 amit.gupta 28
@Controller
29
@Transactional(rollbackFor=Throwable.class)
22398 amit.gupta 30
public class ContactUsController {
31
 
32
	@Autowired
33
	JavaMailSender mailSender;
34
 
35
	@Autowired
36
	ResponseSender<?> responseSender;
37
 
38
	@Autowired
39
	UserRepository userRepository;
40
 
41
	@Autowired
42
	UserAccountRepository userAccountRepository;
43
 
44
 
45
    @RequestMapping(value = "/contact-us/feedback" , method=RequestMethod.POST,produces = MediaType.APPLICATION_JSON_VALUE)
46
	@ApiImplicitParams({
47
		@ApiImplicitParam(name = "Auth-Token", value = "Auth-Token", 
48
				required = true, dataType = "string", paramType = "header")
49
	})
50
    public ResponseEntity<?> sendCrmMail(HttpServletRequest request, @RequestBody FeedbackRequest feedbackRequest) throws Throwable {
51
    	UserInfo userInfo = (UserInfo)request.getAttribute("userInfo");
52
    	User user = userRepository.selectById(userInfo.getUserId());
53
 
54
 
55
    	MimeMessage message = mailSender.createMimeMessage();
56
    	MimeMessageHelper helper = new MimeMessageHelper(message);
22404 amit.gupta 57
    	helper.setSubject("New Contact Us message");
22398 amit.gupta 58
    	StringBuffer messageText = new StringBuffer();
59
    	messageText.append("User Id : ").append(userInfo.getUserId()).append("\n\n");
60
    	messageText.append("Email : ").append(user.getEmailId()).append("\n\n");
61
    	messageText.append("Mobile : ").append(user.getMobileNumber()).append("\n\n");
62
    	messageText.append("Subject : ").append(feedbackRequest.getSubject()).append("\n\n");
63
    	messageText.append("Message : ").append(feedbackRequest.getMessage());
22404 amit.gupta 64
    	helper.setText(messageText.toString());
22746 amit.gupta 65
    	String[] cc = {"pooja.pahuja@profitmandi.com","rahul.kandpal@profitmandi.com", "ritesh.chauhan@profitmandi.com"};
22405 amit.gupta 66
    	//String[] cc = {"amit.gupta@shop2020.in"};
22398 amit.gupta 67
    	helper.setCc(cc);
68
    	InternetAddress senderAddress = new InternetAddress("noreply@profitmandi.com", "ProfitMandi Admin");
22403 amit.gupta 69
    	helper.setTo("help@profitmandi.com");
70
    	helper.setFrom(senderAddress);
22398 amit.gupta 71
    	mailSender.send(message);
72
 
73
    	return responseSender.ok(true);
74
    }
75
}