📄 forumsortcontroller.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 + -