EmailController.java
5.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
package com.cnlive.shenhe.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.cnlive.shenhe.bean.ErrorEnum;
import com.cnlive.shenhe.bean.ResponseBean;
import com.cnlive.shenhe.bean.SessionUser;
import com.cnlive.shenhe.dto.EmailDTO;
import com.cnlive.shenhe.entity.ShyEmail;
import com.cnlive.shenhe.entity.ShyUsers;
import com.cnlive.shenhe.serviceImpl.EmailServiceImpl;
import com.cnlive.shenhe.serviceImpl.SitesServiceImpl;
import com.cnlive.shenhe.serviceImpl.UsersServiceImpl;
import com.cnlive.shenhe.utils.CommonConst;
import com.cnlive.shenhe.utils.CommonUtils;
import com.github.pagehelper.PageInfo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpSession;
import java.util.List;
/**
*
* @Auther: liwei
* @Date: 2019/08/20 14:22
* @Description:
*/
@Controller
@RequestMapping("/email")
public class EmailController extends BaseController {
private static Logger logger = LoggerFactory.getLogger(EmailController.class);
@Autowired
EmailServiceImpl emailServiceImpl;
@Autowired
SitesServiceImpl sitesService;
@Autowired
UsersServiceImpl usersService;
@GetMapping(value = "/page")
public String page(Model model, EmailDTO emailDTO, HttpSession session) {
logger.info("列表请求参数:{}", JSON.toJSONString(emailDTO));
SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
if(CommonUtils.isNull(sessionUser)){
return "redirect:/users/login";
}
PageInfo<ShyEmail> emailPage = emailServiceImpl.getPage(emailDTO);
List<ShyEmail> list = emailPage.getList();
JSONObject email_message = CommonConst.EMAIL_MESSAGE;
if (!list.isEmpty()) {
for (ShyEmail shyEmail : list) {
//获取更新人的名称
String updater="";
if (CommonUtils.isNotEmpty(shyEmail.getUpdater())) {
ShyUsers user = new ShyUsers();
user.setUser_id(shyEmail.getUpdater());
user = usersService.select(user);
if (CommonUtils.isNotNull(user)) {
String email_add = CommonUtils.isEmpty(user.getEmail()) || "null".equals(user.getEmail()) ? "" : user.getEmail();
String userName = CommonUtils.isEmpty(user.getUsername()) ? email_add : user.getUsername();
updater = userName;
}
}
shyEmail.setUpdater(updater);
//获取邮件消息类型名称
String email_type_name=shyEmail.getNotice_type();
if(CommonUtils.isNotEmpty(email_type_name)){
for (String bkey : email_message.keySet()) {
email_type_name = email_type_name.replace(bkey, email_message.getString(bkey));
}
}else{
email_type_name="无";
}
shyEmail.setEmail_type_name(email_type_name);
}
}
model.addAttribute("emailPage", emailPage);
model.addAttribute("pageSize", emailDTO.getPageSize());
model.addAttribute("email_message", email_message);
return "page/email.html";
}
@PostMapping("/updateState")
@ResponseBody
public ResponseBean updateState(Integer id, Boolean isEnable, HttpSession session) {
SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
Integer n = emailServiceImpl.updateState(id, isEnable,sessionUser.getUserId());
if(n>0){
return new ResponseBean(ErrorEnum.SUCCESS.getErrorCode(), "当前用户"+(isEnable==true?"启用":"禁用")+"成功");
}
return new ResponseBean(ErrorEnum.ERROR.getErrorCode(), "操作失败,请重试");
}
@PostMapping("/deleted")
@ResponseBody
public ResponseBean deleted(Integer id,HttpSession session) {
SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
Integer n = emailServiceImpl.deleted(id, sessionUser.getUserId());
if(n>0){
return new ResponseBean(ErrorEnum.SUCCESS.getErrorCode(), "数据删除成功");
}
return new ResponseBean(ErrorEnum.ERROR.getErrorCode(), "操作失败,请重试");
}
@PostMapping(value = "/write")
public String write(Model model,Integer id,String email,String remark, String[] write_business, HttpSession session, String redirect_url) {
if(CommonUtils.isEmpty(email)&&CommonUtils.isEmpty(remark)){
setmodelParam(model,"email,remark不能为空");
return "error.html";
}
SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
String write = "";
if (CommonUtils.isNotNull(write_business) && write_business.length > 0) {
for (String w : write_business) {
write = write + "," + w;
}
write = write.substring(1);
}
boolean success = emailServiceImpl.update(id,email,remark,write,sessionUser.getUserId());
if (success) {
return "redirect:" + redirect_url;
} else {
setmodelResult(model);
return "error.html";
}
}
}