EmailController.java
5.83 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
141
142
143
144
145
146
package com.cnlive.shenhe.controller;
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.entity.ShyEmail;
import com.cnlive.shenhe.entity.ShySites;
import com.cnlive.shenhe.entity.ShyUsers;
import com.cnlive.shenhe.entity.ShyUsersfree;
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.jasig.cas.client.authentication.AttributePrincipal;
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.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.print.attribute.HashAttributeSet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
* @Auther: liwei
* @Date: 2019/08/20 14:22
* @Description:
*/
@Controller
@RequestMapping("/email")
public class EmailController extends BaseController {
@Autowired
EmailServiceImpl emailServiceImpl;
@Autowired
SitesServiceImpl sitesService;
@Autowired
UsersServiceImpl usersService;
@GetMapping(value = "/page")
public String page(Model model, Integer page, Integer pageSize, String orderByClause,
String remark,String email, HttpSession session) {
SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
if(CommonUtils.isNull(sessionUser)){
return "redirect:/users/login";
}
if (CommonUtils.isNull(page)) page = 1;
if (CommonUtils.isNull(pageSize)) pageSize = 10;
PageInfo<ShyEmail> emailPage = emailServiceImpl.getPage(page, pageSize, orderByClause, remark,email);
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", pageSize);
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)){
setmodel_param(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 {
setmodel_result(model);
return "error.html";
}
}
}