📄 forumserviceimp.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi
// Source File Name: ForumServiceImp.java
package com.laoer.bbscs.business.service;
import com.laoer.bbscs.bean.*;
import com.laoer.bbscs.business.IForumService;
import com.laoer.bbscs.business.IUserInfoService;
import com.laoer.bbscs.dao.IForumDAO;
import com.laoer.bbscs.sys.*;
import com.laoer.bbscs.web.servlet.UserCheck;
import com.laoer.comm.util.FileIO;
import com.laoer.comm.util.Util;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.upload.FormFile;
public class ForumServiceImp
implements IForumService
{
private IForumDAO forumDAO;
private IUserInfoService userInfoService;
public ForumServiceImp()
{
}
public IForumDAO getForumDAO()
{
return forumDAO;
}
public void setForumDAO(IForumDAO forumDAO)
{
this.forumDAO = forumDAO;
}
public IUserInfoService getUserInfoService()
{
return userInfoService;
}
public void setUserInfoService(IUserInfoService userInfoService)
{
this.userInfoService = userInfoService;
}
public Forum saveForum(Forum forum)
{
return getForumDAO().saveForum(forum);
}
public Forum getForum(long id, long bid)
{
return getForumDAO().getForum(id, bid);
}
public PageList getForumMainList(long bid, Pages pages)
{
PageList pl = new PageList();
if(pages.getTotals() == -1L)
pages.setTotals(getForumMainNum(bid));
pages.doPageBreak();
List l = getForumDAO().getForumMainList(bid, pages.getSpage(), pages.getPerPageNum());
pl.setObjectList(l);
pl.setPageShowString(pages.getListPageBreak());
pl.setPages(pages);
return pl;
}
public PageList getForumAllList(long bid, short delSign, short auditing, Pages pages)
{
PageList pl = new PageList();
if(pages.getTotals() == -1L)
pages.setTotals(getForumAllNum(bid, delSign, auditing));
pages.doPageBreak();
List l = getForumDAO().getForumAllList(bid, delSign, auditing, pages.getSpage(), pages.getPerPageNum());
pl.setObjectList(l);
pl.setPageShowString(pages.getListPageBreak());
pl.setPages(pages);
return pl;
}
public PageList getForumTopicList(long bid, long ID2, Pages pages)
{
PageList pl = new PageList();
if(pages.getTotals() == -1L)
pages.setTotals(getForumDAO().getForumTopicNum(bid, ID2));
pages.doPageBreak();
List l = getForumDAO().getForumTopicList(bid, ID2, pages.getSpage(), pages.getPerPageNum());
pl.setObjectList(l);
pl.setPageShowString(pages.getListPageBreak());
pl.setPages(pages);
return pl;
}
public List getForumTopicList(long bid, long ID2, short delSign, short auditing)
{
return getForumDAO().getForumTopicList(bid, ID2, delSign, auditing);
}
public List findForumInList(long bid, List values)
{
return getForumDAO().findForumInList(bid, values);
}
public List findForumDelAll(long bid)
{
return getForumDAO().findForumDelAll(bid);
}
public Result createForum(String key, Forum forum, UserCheck uc, FormFile upfile)
{
String detail = forum.getDetail();
if(forum.getIsVote() == 0)
{
if(key.equals("new"))
{
forum.setDetail("");
forum = saveForum(forum);
if(forum != null)
{
String filename = "post_" + forum.getId().longValue() + "_" + forum.getBoardID() + "_" + forum.getId().longValue() + "_" + forum.getPostTime() + ".html";
StringBuffer sb = new StringBuffer();
sb.append("<html><head><title>");
sb.append(forum.getTitle());
sb.append("</title><body>");
sb.append(detail);
sb.append("</body></html>");
FileIO.writeFile(sb.toString(), SysUtil.getForumPath(forum.getBoardID(), forum.getPostTime()) + filename, Constant.CHARSET);
forum.setDetail(filename);
if(uc.getBs().getAttrib9() == 1 && upfile != null && !Util.nullOrBlank(upfile.getFileName()) && upfile.getFileSize() > 0)
{
String upFileName = "file_" + forum.getId().longValue() + "_" + forum.getPostTime() + SysUtil.getFileExt(upfile.getFileName());
SysUtil.saveUpFile(SysUtil.getUpFilePath(forum.getBoardID(), forum.getPostTime()) + upFileName, upfile);
forum.setHavePic((short)1);
forum.setPicName(upFileName);
}
forum.setId2(forum.getId().longValue());
forum = saveForum(forum);
if(uc.getBs().getAttrib8() == 0 && uc.getBs().getAttrib4() == 0)
NewPost.intoNewPost(forum);
if(forum == null)
return new Result(false, "error.posterror", null);
else
return new Result(true, "", forum);
} else
{
return new Result(false, "error.posterror", null);
}
}
Forum mainForum = getForum(forum.getId2(), forum.getBoardID());
if(mainForum == null)
return new Result(false, "error.post.getpost", null);
if(mainForum.getIsLock() == 1)
return new Result(false, "error.post.islock", null);
if(uc.getBs().getAttrib8() == 0)
{
mainForum.setLastPostNickName(forum.getNickName());
mainForum.setLastPostTitle(forum.getTitle());
mainForum.setLastPostUserName(forum.getUserName());
mainForum.setLastTime(forum.getPostTime());
mainForum.setReNum(mainForum.getReNum() + 1);
if(forum.getId1() == forum.getId2() && mainForum.getCanNotRe() != 1)
mainForum.setCanNotRe((short)1);
saveForum(mainForum);
} else
if(forum.getId1() == forum.getId2() && mainForum.getCanNotRe() != 1)
{
mainForum.setCanNotRe((short)1);
saveForum(mainForum);
}
Forum reForum = mainForum;
if(forum.getId1() != forum.getId2())
{
reForum = getForum(forum.getId1(), forum.getBoardID());
if(reForum != null && reForum.getCanNotRe() != 1)
{
reForum.setCanNotRe((short)1);
saveForum(reForum);
}
}
if(forum.getTitle().equals(Constant.RE) && reForum != null)
if(reForum.getTitle().startsWith(Constant.RE))
forum.setTitle(reForum.getTitle());
else
if(SysUtil.getStrLength(Constant.RE + reForum.getTitle(), Constant.CHARSET) > 90)
forum.setTitle(reForum.getTitle());
else
forum.setTitle(Constant.RE + reForum.getTitle());
mainForum = null;
reForum = null;
forum.setDetail("");
forum = saveForum(forum);
if(forum != null)
{
String filename = "post_" + forum.getId2() + "_" + forum.getBoardID() + "_" + forum.getId().longValue() + "_" + forum.getPostTime() + ".html";
StringBuffer sb = new StringBuffer();
sb.append("<html><head><title>");
sb.append(forum.getTitle());
sb.append("</title><body>");
sb.append(detail);
sb.append("</body></html>");
FileIO.writeFile(sb.toString(), SysUtil.getForumPath(forum.getBoardID(), forum.getPostTime()) + filename, Constant.CHARSET);
forum.setDetail(filename);
if(uc.getBs().getAttrib9() == 1 && upfile != null && !Util.nullOrBlank(upfile.getFileName()) && upfile.getFileSize() > 0)
{
String upFileName = "file_" + forum.getId().longValue() + "_" + forum.getPostTime() + SysUtil.getFileExt(upfile.getFileName());
SysUtil.saveUpFile(SysUtil.getUpFilePath(forum.getBoardID(), forum.getPostTime()) + upFileName, upfile);
forum.setHavePic((short)1);
forum.setPicName(upFileName);
}
forum = saveForum(forum);
if(forum == null)
return new Result(false, "error.posterror", null);
else
return new Result(true, "", forum);
} else
{
return new Result(false, "error.posterror", null);
}
}
forum.setDetail("");
forum = saveForum(forum);
if(forum != null)
{
String filename = "post_" + forum.getId().longValue() + "_" + forum.getBoardID() + "_" + forum.getId().longValue() + "_" + forum.getPostTime() + ".html";
StringBuffer sb = new StringBuffer();
sb.append("<html><head><title>");
sb.append(forum.getTitle());
sb.append("</title><body>");
sb.append("<form name=\"voteDoForm\" method=\"post\" action=\"voteDo");
sb.append(Constant.FILEPREFIX);
sb.append("\"><input name=\"action\" type=\"hidden\" value='");
sb.append("vote");
sb.append("'>\n");
sb.append("<input name=\"postid\" type=\"hidden\" value='");
sb.append(forum.getId().longValue());
sb.append("'>\n");
sb.append("<input name=\"bid\" type=\"hidden\" id=\"bid\" value='");
sb.append(forum.getBoardID());
sb.append("'>\n");
sb.append(detail);
sb.append("<br><input type=\"submit\" name=\"Submit\" class='BUTTN-FIX1' value=\"Submit\"></form>");
sb.append("</body></html>");
FileIO.writeFile(sb.toString(), SysUtil.getForumPath(forum.getBoardID(), forum.getPostTime()) + filename, Constant.CHARSET);
forum.setDetail(filename);
forum.setId2(forum.getId().longValue());
forum = saveForum(forum);
NewPost.intoNewPost(forum);
if(forum == null)
return new Result(false, "error.posterror", null);
else
return new Result(true, "", forum);
} else
{
return new Result(false, "error.posterror", null);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -