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

📄 forummanage.java

📁 java论坛
💻 JAVA
字号:
package com.laoer.bbscs.web.action;

import javax.servlet.http.*;
import java.util.*;

import org.apache.struts.action.*;
import com.laoer.bbscs.service.*;
import com.laoer.bbscs.web.form.*;
import com.laoer.bbscs.comm.Constant;
import com.laoer.bbscs.bean.Board;
import com.laoer.bbscs.service.web.Pages;
import com.laoer.bbscs.web.servlet.UserSession;
import com.laoer.bbscs.comm.BBSCSUtil;
import com.laoer.bbscs.service.web.PageList;
import com.laoer.bbscs.bean.Forum;
import com.laoer.bbscs.exception.*;

public class ForumManage
    extends BaseAction {

  private ForumService forumService;

  private BoardService boardService;

  public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
                               HttpServletResponse response) {

    ForumManageForm forumManageForm = (ForumManageForm) form;

    long bid = forumManageForm.getBid();

    UserSession us = this.getUserSession(request);

    Board board = (Board) request.getAttribute(Constant.BOARD_REQUEST_KEY);
    if (board == null) {
      board = this.getBoardService().getBoardByID(bid);
    }

    if (forumManageForm.getAction().equalsIgnoreCase("m")) {
      Pages pages = new Pages();
      pages.setPage(forumManageForm.getPage());
      pages.setPerPageNum(40);
      pages.setFileName(BBSCSUtil.getActionMappingURL("/forumManage?action=" + forumManageForm.getAction() +
          "&bid=" + bid, request));
      if (forumManageForm.getTotal() > 0) {
        pages.setTotalNum(forumManageForm.getTotal());
      }
      PageList pl = this.getForumService().findForumsAllManage(bid, pages);
      request.setAttribute("pl", pl);
      request.setAttribute("board", board);
      return mapping.findForward("forumManage");
    }

    if (forumManageForm.getAction().equalsIgnoreCase("w")) {
      Pages pages = new Pages();
      pages.setPage(forumManageForm.getPage());
      pages.setPerPageNum(40);
      pages.setFileName(BBSCSUtil.getActionMappingURL("/forumManage?action=" + forumManageForm.getAction() +
          "&bid=" + bid, request));
      if (forumManageForm.getTotal() > 0) {
        pages.setTotalNum(forumManageForm.getTotal());
      }
      PageList pl = this.getForumService().findForumsDel(bid, pages);
      request.setAttribute("pl", pl);
      request.setAttribute("board", board);
      return mapping.findForward("forumWaste");
    }

    if (forumManageForm.getAction().equalsIgnoreCase("a")) {
      Pages pages = new Pages();
      pages.setPage(forumManageForm.getPage());
      pages.setPerPageNum(40);
      pages.setFileName(BBSCSUtil.getActionMappingURL("/forumManage?action=" + forumManageForm.getAction() +
          "&bid=" + bid, request));
      if (forumManageForm.getTotal() > 0) {
        pages.setTotalNum(forumManageForm.getTotal());
      }
      PageList pl = this.getForumService().findForumsAuditing(bid, pages);
      request.setAttribute("pl", pl);
      request.setAttribute("board", board);
      return mapping.findForward("forumAuditing");
    }

    if (forumManageForm.getAction().equalsIgnoreCase("aa")) {
      Pages pages = new Pages();
      pages.setPage(forumManageForm.getPage());
      pages.setPerPageNum(40);
      pages.setFileName(BBSCSUtil.getActionMappingURL("/forumManage?action=" + forumManageForm.getAction() +
          "&bid=" + bid, request));
      if (forumManageForm.getTotal() > 0) {
        pages.setTotalNum(forumManageForm.getTotal());
      }
      PageList pl = this.getForumService().findForumsAuditingAttachFile(bid, pages);
      request.setAttribute("pl", pl);
      request.setAttribute("board", board);
      return mapping.findForward("forumAuditing");
    }

    if (forumManageForm.getAction().equalsIgnoreCase("dels")) {
      ActionMessages messages = new ActionMessages();
      if (forumManageForm.getIds() == null || forumManageForm.getIds().length <= 0) {
        messages.add("error.select", new ActionMessage("error.select"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);
      }
      List l = this.getForumService().findForumsInIds(bid, BBSCSUtil.array2List(forumManageForm.getIds()));
      List fl = new ArrayList();
      for (int i = 0; i < l.size(); i++) {
        Forum f = (Forum) l.get(i);
        f.setDelIP(request.getRemoteAddr());
        f.setDelSign(1);
        f.setDelTime(System.currentTimeMillis());
        f.setDelUserID(us.getId());
        f.setDelUserName(us.getUserName());
        //if (f.getAuditing() == 1) {

        //}
        if (f.getIndexStatus() == Constant.INDEX_STATUS_NO_INDEX) {
          f.setIndexStatus(Constant.INDEX_STATUS_NO_INDEX_TO_DEL);
        }
        else {
          f.setIndexStatus(Constant.INDEX_STATUS_NEED_DEL);
        }


        fl.add(f);
      }
      try {
        this.getForumService().delPosts(fl, board);
        return new ActionForward(BBSCSUtil.getActionMappingURL("/forumManage?action=m&bid=" + bid + "&page=" +
            forumManageForm.getPage()), true);
      }
      catch (BbscsException ex) {
        messages.add("error.forummanage.dels", new ActionMessage("error.forummanage.dels"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);
      }
    }

    if (forumManageForm.getAction().equalsIgnoreCase("delw")) {
      ActionMessages messages = new ActionMessages();
      if (forumManageForm.getIds() == null || forumManageForm.getIds().length <= 0) {
        messages.add("error.select", new ActionMessage("error.select"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);
      }
      try {
        this.getForumService().delPostsReal(BBSCSUtil.array2List(forumManageForm.getIds()));
        return new ActionForward(BBSCSUtil.getActionMappingURL("/forumManage?action=w&bid=" + bid + "&page=" +
            forumManageForm.getPage()), true);
      }
      catch (BbscsException ex1) {
        messages.add("error.forummanage.dels", new ActionMessage("error.forummanage.dels"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);
      }
    }

    if (forumManageForm.getAction().equalsIgnoreCase("delallw")) {
      ActionMessages messages = new ActionMessages();
      try {
        this.getForumService().delWastePost(bid);
        return new ActionForward(BBSCSUtil.getActionMappingURL("/forumManage?action=w&bid=" + bid + "&page=1"), true);
      }
      catch (BbscsException ex2) {
        messages.add("error.forummanage.dels", new ActionMessage("error.forummanage.dels"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);
      }
    }

    if (forumManageForm.getAction().equalsIgnoreCase("resume")) {
      ActionMessages messages = new ActionMessages();
      try {
        this.getForumService().saveForumsResume(BBSCSUtil.array2List(forumManageForm.getIds()), board);
        return new ActionForward(BBSCSUtil.getActionMappingURL("/forumManage?action=w&bid=" + bid + "&page=" +
            forumManageForm.getPage()), true);
      }
      catch (BbscsException ex3) {
        messages.add("error.forummanage.resume", new ActionMessage("error.forummanage.resume"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);

      }
    }

    if (forumManageForm.getAction().equalsIgnoreCase("auditing")) {
      ActionMessages messages = new ActionMessages();
      try {
        this.getForumService().saveForumsAuditing(BBSCSUtil.array2List(forumManageForm.getIds()), board);
        return new ActionForward(BBSCSUtil.getActionMappingURL("/forumManage?action=a&bid=" + bid + "&page=" +
            forumManageForm.getPage()), true);
      }
      catch (BbscsException ex4) {
        messages.add("error.forummanage.auditing", new ActionMessage("error.forummanage.auditing"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);
      }
    }

    if (forumManageForm.getAction().equalsIgnoreCase("auditingAttach")) {
      ActionMessages messages = new ActionMessages();
      try {
        this.getForumService().saveForumsAuditingAttachFile(BBSCSUtil.array2List(forumManageForm.getIds()));
        return new ActionForward(BBSCSUtil.getActionMappingURL("/forumManage?action=aa&bid=" + bid + "&page=" +
            forumManageForm.getPage()), true);
      }
      catch (BbscsException ex4) {
        messages.add("error.forummanage.auditing", new ActionMessage("error.forummanage.auditing"));
        this.saveErrors(request, messages);
        return mapping.findForward(this.FORWARD_ERROR);
      }
    }

    return mapping.findForward(this.FORWARD_ERROR);
  }

  public BoardService getBoardService() {
    return boardService;
  }

  public ForumService getForumService() {
    return forumService;
  }

  public void setBoardService(BoardService boardService) {
    this.boardService = boardService;
  }

  public void setForumService(ForumService forumService) {
    this.forumService = forumService;
  }
}

⌨️ 快捷键说明

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