@RequestMapping(value = "/member/message_read.jspx")
public String message_read(Integer id, Integer box,
HttpServletRequest request, HttpServletResponse response,
ModelMap model) {
CmsSite site = CmsUtils.getSite(request);
CmsUser user = CmsUtils.getUser(request);
FrontUtils.frontData(request, model, site);
MemberConfig mcfg = site.getConfig().getMemberConfig();
// 没有开启会员功能
if (!mcfg.isMemberOn()) {
return FrontUtils.showMessage(request, model, "member.memberClose");
}
if (user == null) {
return FrontUtils.showLogin(request, model, site);
}
CmsReceiverMessage message = receiverMessageMng.findById(id);
if (message != null) {
// 阅读收信
// 非收件人和发件人无权查看信件
if (!message.getMsgReceiverUser().equals(user)
&& !message.getMsgSendUser().equals(user)) {
WebErrors errors = WebErrors.create(request);
errors.addErrorCode("error.noPermissionsView");
return FrontUtils.showError(request, response, model, errors);
}
// 收件人查看更新已读状态
if (message.getMsgReceiverUser().equals(user)) {
message.setMsgStatus(true);
receiverMessageMng.update(message);
log
.info(
"member CmsMessage read CmsMessage success. id={}",
id);
}
model.addAttribute("message", message);
} else {
// 阅读已发信
CmsMessage msg = messageMng.findById(id);
model.addAttribute("message", msg);
}
model.addAttribute("box", box);
return FrontUtils.getTplPath(request, site.getSolutionPath(),
TPLDIR_MESSAGE, MESSAGE_READ);
}