⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 magselaction.java

📁 一个不错的bbs论坛系统.对初学者很有帮助
💻 JAVA
字号:
package com.yhbbs.article.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import com.yhbbs.article.biz.ArticleBiz;
import com.yhbbs.article.form.MagSelForm;
import com.yhbbs.article.itface.ArticleDto;
import com.yhbbs.forum.biz.ForumBiz;
import com.yhbbs.message.biz.MessageBiz;
import com.yhbbs.user.itface.bean.UserSession;
import com.yhbbs.utils.Constants;
/**
 * <p>Title:固顶移动删除帖子的Action</p>
 * <li> 在管理员执行三种固定形式选择或多种移动目标选择或删除帖子理由填写后执行此Action
 * <li> 在删除和移动帖子后,原来论坛和目标论坛相关信息都要改变
 * <li>	处理成功或失败后分别跳转到相关页面并提示相关信息和操作<br>
 * <br><b>WebSite: www.yyhweb.com</b>
 * <br><b>CopyRight: yyhweb[由由华网]</b>
 * @author stephen
 * @version YHBBS-2.0
 */
public class MagSelAction extends Action {
	public ActionForward execute(ActionMapping mapping,ActionForm form,
			  HttpServletRequest request,HttpServletResponse response){
		ActionMessages errors = new ActionMessages();
		
		UserSession bbsuser = (UserSession) request.getSession(true).getAttribute(Constants.bbsuser);
		if(bbsuser==null || bbsuser.getUsertype()<4){
			errors.add("article.manage.user.error",new ActionMessage("article.manage.user.error"));
			saveErrors(request,errors);
			return mapping.findForward("Failure");
		}
		MagSelForm magform = (MagSelForm)form;
		String action = magform.getAction();
		int artId = magform.getArtId();
		int forumId = magform.getForumId();
		int classId = magform.getClassId();
		int userId = magform.getUserId();
		int topfc = magform.getTopfc();
		int movefc = magform.getMovefc();
		String deleteres = magform.getDeleteres();	
		request.setAttribute("cId",classId);
		request.setAttribute("fId",forumId);
		
		if(action.equals("top")){
			ArticleBiz.setTop(artId,String.valueOf(topfc));
			return mapping.findForward("Success");
		}
		// 以下操作需要令牌检查
		if(isTokenValid(request)){
			resetToken(request);
		}else{
			this.saveToken(request);
			errors.add("article.manage.token",new ActionMessage("article.manage.token"));
			saveErrors(request,errors);
			return mapping.findForward("Failure");
		}
		if(action.equals("move")){
			// 判断移动论坛是否有效、是否和当前论坛是同一个
			if(movefc==0){
				this.saveToken(request);
				errors.add("article.move.select.class",new ActionMessage("article.move.select.class"));
				saveErrors(request,errors);
				return mapping.findForward("Failure");
			}
			if(forumId==movefc){
				this.saveToken(request);
				errors.add("article.move.same.forum",new ActionMessage("article.move.same.forum"));
				saveErrors(request,errors);
				return mapping.findForward("Failure");
			}
			if(movefc>0){
		    	int cId = ForumBiz.getForumClassId(movefc);
				if(ArticleBiz.moveArt(cId,movefc,artId,forumId)){
					MessageBiz.moveArticle(artId, cId, movefc,forumId,bbsuser.getUserId());
					return mapping.findForward("Success");
				}else{
					this.saveToken(request);
					errors.add("article.move.fail",new ActionMessage("article.move.fail"));
					saveErrors(request,errors);
					return mapping.findForward("Failure");
				}
			}
		}
		
		if(action.equals("delete")||action.equals("delRep")){
			// 判断删除理由是否为空
			if(deleteres==null || deleteres.length()<1){
				this.saveToken(request);
				errors.add("article.delete.noreason",new ActionMessage("article.delete.noreason"));
				saveErrors(request,errors);
				return mapping.findForward("Failure");
	      	}
			boolean flag = false;
			if(action.equals("delete"))
				flag = true;
			else
				flag = false;
			ArticleDto delArt = ArticleBiz.getArticle(artId);
			if(ArticleBiz.deleteArticle(artId,userId,forumId,flag)){
				if(flag) // 主体贴才发送短消息
				  MessageBiz.deleteArticle(delArt,bbsuser.getUserId(),deleteres);
				return mapping.findForward("Success");
			}else{
				this.saveToken(request);
				errors.add("article.delete.fail",new ActionMessage("article.delete.fail"));
				saveErrors(request,errors);
				return mapping.findForward("Failure");
			}
		}
		return null;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -