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

📄 forumsortcontroller.java

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

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

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

import org.springframework.validation.BindException;
import org.springframework.validation.Errors;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;

import com.yhbbs.admin.web.forum.form.ForumSortForm;
import com.yhbbs.forum.bean.ForumDtoIm;
import com.yhbbs.forum.biz.ForumBiz;
import com.yhbbs.forum.itface.ForumDto;
import com.yhbbs.utils.ReqUtils;
import com.yhbbs.yhclass.bean.BbsClassIm;
import com.yhbbs.yhclass.biz.ClassBiz;
import com.yhbbs.yhclass.itface.BbsClass;
/**
 * <p>Title:论坛移动和排序Controller</p>
 * <li>	论坛移动和排序
 * <li>	论坛增加和修改
 * <br><b>WebSite: www.yyhweb.com</b>
 * <br><b>CopyRight: yyhweb[由由华网]</b>
 * @author stephen
 * @version YHBBS-2.0
 */
public class ForumSortController extends SimpleFormController{
	// 构造函数设置其属性
	public ForumSortController(){
		this.setSessionForm(true);
		this.setValidateOnBinding(false);
		this.setCommandName("sortForm");
		this.setFormView("forumsort");
	}
	// 初始化数据
	protected Map referenceData(HttpServletRequest request, Object obj, Errors error) throws Exception {
		Map<String, Object> model = new HashMap<String, Object>();
		String action = ReqUtils.getString(request, "action");
		if("sort".equals(action)){
			int classId = ReqUtils.getInt(request, "cId");
			if(classId>0){
				List forumList = ClassBiz.getOneClassFm(classId);
				model.put("cfsort", 1);
				model.put("forumlist", forumList);
			}else{
				List classList = ClassBiz.getAllClass();
				model.put("cfsort", 0);
				model.put("classlist", classList);
			}
		}else if("move".equals(action)){
			int forumId = ReqUtils.getInt(request, "fId");
			List classList = ClassBiz.getAllClass();
			model.put("classlist", classList);
			model.put("forumid", forumId);
		}
		model.put("action", action);
		return model;
	}
	// 取得表单
	protected Object formBackingObject(HttpServletRequest request) throws Exception {
		String action = ReqUtils.getString(request, "action");
		ForumSortForm sortForm = null;
		if("sort".equals(action)){
			List forumList = null;
			sortForm = new ForumSortForm(forumList);
		}else if("move".equals(action)){
			sortForm = new ForumSortForm();
		}
		return sortForm;
	}
	//	数据邦定和表单验证
	protected void onBindAndValidate(HttpServletRequest request,Object command,BindException errors){
		String action = ReqUtils.getString(request, "action");
		if("sort".equals(action)){
			String[] sorts = request.getParameterValues("sort");
			String[] ids = request.getParameterValues("id");
			boolean flag = true;
			for(int i=0;i<sorts.length;i++){
				if((sorts[i]==null) || ("".equals(sorts[i])) || (sorts[i].length()<1))
					flag = false;
				try{
					if(Integer.parseInt(sorts[i])<0)
						flag = false;
				}catch(Exception e){
					System.out.println("bbs throw an exception:"+e.toString());
					flag = false;
				}
			}
			if(!flag){
				errors.setNestedPath("");
				errors.reject("forumsort", "提交数据有错!请保证论坛顺序是有效数字并且没有重复");
			}
		}
	}
	// 表单提交
	protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command,BindException errors){
		Map<String, String> model = new HashMap<String, String>();
		boolean flag = true;
		String action = ReqUtils.getString(request, "action");
		if("sort".equals(action)){
			int cfsort = ReqUtils.getInt(request, "cfsort");
			String[] sorts = request.getParameterValues("sort");
			String[] ids = request.getParameterValues("id");
			if(0==cfsort){
				for(int i=0;i<ids.length;i++){
					if(!ClassBiz.classSort(Integer.parseInt(ids[i]),Integer.parseInt(sorts[i]))){
						flag = false;
						break;
					}
				}
			}else if(1==cfsort){
				for(int i=0;i<ids.length;i++){
					if(!ForumBiz.forumSort(Integer.parseInt(ids[i]),Integer.parseInt(sorts[i]))){
						flag = false;
						break;
					}
				}
			}
			
		}else if("move".equals(action)){
			int classId = ReqUtils.getInt(request, "classId");
			int forumId = ReqUtils.getInt(request, "forumId");
			flag = ForumBiz.moveForum(forumId, classId);
		}
		if(flag){
			if("sort".equals(action))
				model.put("okinfo", "论坛排序");
			else
				model.put("okinfo", "移动论坛");
			model.put("forward", "<a href='../admin/ForumMag.do'>论坛管理</a>");
			return new ModelAndView("success",model);
		}else{
			if("sort".equals(action))
				model.put("errinfo", "论坛排序");
			else
				model.put("errinfo", "移动论坛");
			model.put("forward", "<a href='../admin/ForumMag.do'>论坛管理</a>");
			return new ModelAndView("failure",model);
		}
	}
}

⌨️ 快捷键说明

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