📄 useraction.java
字号:
@Override
protected ActionForward forumHome(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
HttpSession session = this.getSession(request);
this.setAttribute(request, "Navigation", this.constructNavigation(
request, this.getAction(request)));
return mapping.findForward("forumHome");
}
@Override
protected ActionForward payOnline(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
this.setAttribute(request, "Navigation", this.constructNavigation(
request, this.getAction(request)));
return mapping.findForward("payOnline");
}
@Override
protected ActionForward userIndex(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
return mapping.findForward("userIndex");
}
@Override
protected ActionForward userModifyInfo(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) {
System.out.println("why ???");
ForumUser forumUser = (ForumUser) this.getSession(request)
.getAttribute("user");
if (null == forumUser) {
return mapping.findForward("userLogin");
}
String toPage = request.getContextPath()
+ "/forum/user.do?action=userInfo";
this.setAttribute(request, "toPage", toPage);
this.modifyInfo(request, forumUser, form);
if (1 == El.getEl().getForumUserMgr().modifyUserInfo(forumUser)) {
ActionMessages messages = new ActionMessages();
messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
"user.modifyInfo.success"));
saveMessages(request, messages);
return mapping.findForward("userSuccess");
}
ActionErrors errors = new ActionErrors();
errors.add(ActionErrors.GLOBAL_ERROR, new ActionError(
"user.modifyInof.error"));
saveErrors(request, errors);
return mapping.findForward("userError");
}
private void modifyInfo(HttpServletRequest request, ForumUser forumUser,
ActionForm form) {
System.out.println("before hello");
if (null == forumUser || null == form) {
return;
}
UserForm uf = (UserForm) form;
// forumUser.setBirthday(uf.getBirthday());
// forumUser.setEmail(uf.getEmail());
forumUser.setUserFace(uf.getUserFace());
forumUser.setTrueName(uf.getTrueName());
forumUser.setSex(uf.getSex());
forumUser.setPhone(uf.getPhone());
forumUser.setMobile(uf.getMobile());
forumUser.setQq(uf.getQq());
forumUser.setIcq(uf.getIcq());
forumUser.setMsn(uf.getMsn());
forumUser.setMarriage(uf.getMarriage());
forumUser.setJobTitle(uf.getJobTitle());
forumUser.setAddress(uf.getAddress());
forumUser.setSign(uf.getSign());
}
@Override
protected ActionForward userModifyPassword(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) {
ForumUser forumUser = (ForumUser) this.getSession(request)
.getAttribute("user");
String newPassword;
String answer;
String question;
String oldPassword;
String confirmPassword;
String toPage = request.getContextPath()
+ "/forum/user.do?action=passwordMgr";
this.setAttribute(request, "toPage", toPage);
if (null != form) {
newPassword = ((UserForm) form).getNewPassword();
oldPassword = ((UserForm) form).getOldPassword();
answer = ((UserForm) form).getOldPassword();
question = ((UserForm) form).getQuestion();
confirmPassword = ((UserForm) form).getConfirmPassword();
System.out.println("newPassword" + newPassword);
System.out.println("oldPassword" + oldPassword);
System.out.println("answer" + answer);
System.out.println("question" + question);
System.out.println("confirmPassword" + confirmPassword);
ActionErrors errors = new ActionErrors();
if (ElCheckString.isEmptyString(newPassword)
|| ElCheckString.isEmptyString(oldPassword)
|| "".equals(newPassword.trim())
|| "".equals(oldPassword.trim())) {
errors.add("e1", new ActionError("input error"));
}
if (!forumUser.getPassword().equals(oldPassword)) {
errors.add("e2", new ActionError("input oldpassword error"));
}
if (null == newPassword || null == oldPassword
|| !newPassword.equals(confirmPassword)) {
errors.add("e3", new ActionError("password.not.same"));
}
if (null == answer || null == question) {
errors.add("e4", new ActionError("answerOrQuestion.not.null"));
}
if (errors.size() > 0) {
saveErrors(request, errors);
return mapping.findForward("userError");
}
forumUser.setPassword(newPassword);
if (El.getEl().getForumUserMgr().updateUser(forumUser)) {
return mapping.findForward("userSuccess");
}
}
return mapping.findForward("userError");
}
@Override
protected ActionForward showMessages(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) {
this.setAttribute(request, "Navigation", this.constructNavigation(
request, this.getAction(request)));
ForumUser fu = (ForumUser) this.getSession(request)
.getAttribute("user");
Integer msgId = this.getMsgId(request);
Integer toId = fu.getId();
Forummessages fm = El.getEl().getMsgMgr().findByProperty(msgId, toId);
this.setAttribute(request, "fm", fm);
if (null != fm) {
System.out.println(fm.getFromName());
}
return mapping.findForward("showMessages");
}
@Override
protected ActionForward deleteMsg(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
Integer msgId = this.getMsgId(request);
Forummessages fm = El.getEl().getMsgMgr().findById(msgId);
if (null != fm) {
El.getEl().getMsgMgr().delete(fm);
}
return userMessages(mapping, form, request, response);
}
@Override
protected ActionForward ljMsg(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
this.setAttribute(request, "Navigation", this.constructNavigation(
request, this.getAction(request)));
Integer msgId = this.getMsgId(request);
String type = request.getParameter("type");
Forummessages fm = El.getEl().getMsgMgr().findById(msgId);
// 还原
if (null != type && "0".equals(type)) {
fm.setIsLj(Byte.valueOf("0"));
} else if (null != type && "1".equals(type)) {
fm.setIsLj(Byte.valueOf("1"));
} else {
ActionErrors errors = new ActionErrors();
errors.add("urlErr", new ActionError("url.parameter.error"));
saveErrors(request, errors);
return mapping.findForward("userError");
}
if (Constents.CURRENT_OPERATION_SUCCESS != El.getEl().getMsgMgr()
.setLjMsg(fm)) {
ActionErrors errors = new ActionErrors();
errors.add("setLjMsgErr", new ActionError("setLjMsgErr"));
saveErrors(request, errors);
}
return this.userMessages(mapping, form, request, response);
}
@Override
protected ActionForward postMsg(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String postMsg = request.getParameter("postMsg");
Integer fromId;
String fromName;
Integer toId = -1;
String toName;
String text;
String title;
this.setAttribute(request, "Navigation", this.constructNavigation(
request, this.getAction(request)));
if ("true".equals(postMsg)) {
fromId = Integer.valueOf(request.getParameter("fromId"));
fromName = request.getParameter("fromName");
boolean hasUser = false;
if(this.isNumber(request.getParameter("toId"))) {
toId = Integer.valueOf(request.getParameter("toId"));
} else {
ForumUser fu;
fu = El.getEl().getForumUserMgr().findUserById(toId);
if(fromName == fu.getUsername()) {
hasUser = true;
}
}
if(!hasUser) {
ActionErrors errors = new ActionErrors();
errors.add("no user", new ActionError("msg.no.user"));
this.saveErrors(request, errors);
return mapping.findForward("userError");
}
toName = request.getParameter("toName");
title = request.getParameter("title");
text = request.getParameter("text");
ActionErrors errors = checkFrom(fromId, fromName, toId, toName, text, title);
if(0 > errors.size()) {
this.saveErrors(request, errors);
return mapping.findForward("postMessages");
}
if(Constents.CURRENT_OPERATION_SUCCESS == El.getEl().getMsgMgr().postMsg(fromId, fromName, toId, toName, title, text)) {
ActionMessages messages = new ActionMessages();
messages.add("postMsgSuccess", new ActionMessage("postMsg.success"));
saveMessages(request, messages);
return mapping.findForward("userSuccess");
}
} else {
return mapping.findForward("postMessages");
}
return null;
}
private ActionErrors checkFrom(Integer fromId, String fromName, Integer toId, String toName, String text, String title) {
ActionErrors errors = new ActionErrors();
if (null == fromId || fromId < 1 || null == fromName || null == toId
|| 1 > toId || null == toName || "".equals(toName)
|| null == text || "".equals(toName)
|| null == title || "".equals(title)) {
errors.add("fid", new ActionError("post.topic.validate.err"));
}
return errors;
}
/*
* 1,参与的帖子,也就是邮自己回复的帖子
* 2,热门的帖子
* 3,精华的帖子
* 0所有个帖子
* (non-Javadoc)
* @see com.elan.forum.actions.user.UserBaseAction#userTopic(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
*/
@Override
protected ActionForward userTopic(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
ForumUser fu = (ForumUser) getSession(request).getAttribute("user");
Integer page = this.getPage(request);
Integer count = 0;
Integer pageCount = 0;
Integer pageSize = Constents.DEFAULT_PAGE_SIZE;
Boolean hasNextPage = false;
Boolean hasPreviousPage = false;
String type = request.getParameter("type");
TopicMgr tMgr = El.getEl().getTopicMgr();
List<ForumTopic> listFt = null;
if(null == type || "".equals(type)) {
ActionErrors errors = new ActionErrors();
errors.add("urlErr", new ActionError("url.parameter.error"));
saveErrors(request, errors);
return mapping.findForward("userError");
}
//导航
this.setAttribute(request, "Navigation", this.constructNavigation(
request, this.getAction(request)));
if("0".equals(type)) {
count = tMgr.getCount(fu.getId());
pageCount = this.getPageCount(count, pageSize);
page = this.flushPage(page, pageCount);
listFt = tMgr.getUserTopic(fu.getId(), page ,pageSize);
} else if("1".equals(type)) {
count = tMgr.getUserReplyTopic(fu.getId());
pageCount = this.getPageCount(count, pageSize);
page = this.flushPage(page, pageCount);
listFt = tMgr.getUserReplyed(fu.getId(), page, pageSize);
} else if("2".equals(type)) {
count = tMgr.getHotTopicCount(fu.getId());
pageCount = this.getPageCount(count, pageSize);
page = this.flushPage(page, pageCount);
listFt = tMgr.getUserHotTopic(fu.getId(), page, pageSize);
} else if("3".equals(type)) {
count = tMgr.getEssenceTopicCount(fu.getId());
pageCount = this.getPageCount(count, pageSize);
page = this.flushPage(page, pageCount);
listFt = tMgr.getUserEssenceTopic(fu.getId(), page, pageSize);
} else {
ActionErrors errors = new ActionErrors();
errors.add("urlErr", new ActionError("url.parameter.error"));
saveErrors(request, errors);
return mapping.findForward("userError");
}
hasNextPage = this.getHasNextPage(page, pageCount);
hasPreviousPage = this.getHasPreviousPage(page, pageCount);
this.setRequestAttrubute(request, listFt, page, count, pageSize, pageCount, hasNextPage, hasPreviousPage, type);
return mapping.findForward("userTopic");
}
protected Integer flushPage(Integer page, Integer pageCount) {
if(page < 1) {
page = 1;
} else if(page > pageCount) {
page = pageCount;
}
if(0 == pageCount) {
page = 0;
}
System.out.println("page:" + page);
System.out.println("pageCount:" + pageCount);
return page;
}
protected Integer getPageCount(Integer count, Integer pageSize) {
Integer pageCount = 0;
if(0 == count % pageSize) {
pageCount = count / pageSize;
} else {
pageCount = count / pageSize + 1;
}
return pageCount;
}
protected Boolean getHasNextPage(Integer page, Integer pageCount){
Boolean hasNextPage = false;
if (page < pageCount) {
hasNextPage = true;
}
return hasNextPage;
}
protected Boolean getHasPreviousPage(Integer page, Integer pageCount){
Boolean getHasPreviousPage = false;
if (page > 1) {
getHasPreviousPage = true;
}
return getHasPreviousPage;
}
protected void setRequestAttrubute(HttpServletRequest request, List<ForumTopic> listFt, Integer page, Integer count, Integer pageSize, Integer pageCount, Boolean hasNextPage,
Boolean hasPreviousPage, String type) {
this.setAttribute(request, "listFt", listFt);
this.setAttribute(request, "page", page);
this.setAttribute(request, "count", count);
this.setAttribute(request, "pageSize", pageSize);
this.setAttribute(request, "pageCount", pageCount);
this.setAttribute(request, "hasNextPage", hasNextPage);
this.setAttribute(request, "hasPreviousPage", hasPreviousPage);
this.setAttribute(request, "type", type);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -