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

📄 miscaction.java

📁 论坛软件系统亦称电子公告板(BBS)系统
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
							return null;
						}
					}
					values = null;
				}
			}
			if (!flag) {
				message = "您未输入分值或超过每次评分范围限制,请返回修改。";
				if(inajax==null){
					request.setAttribute("errorInfo", message);
					return mapping.findForward("showMessage");
				}else{
					writeMessage(response,message,true);
					return null;
				}
			}
			String sendreasonpm = request.getParameter("sendreasonpm");
			if (sendreasonpm != null || usergroup.get("reasonpm").equals("2") || usergroup.get("reasonpm").equals("3")) {
				List<Map<String,String>> usergroupslist = dataBaseService.executeQuery("select maxpmnum from jrun_usergroups as u left join jrun_members as m on m.groupid=u.groupid where m.uid="+post.getAuthorid());
				if((usergroupslist!=null && usergroupslist.size()>0 && Integer.valueOf(usergroupslist.get(0).get("maxpmnum"))>0)||modertar){
					usergroupslist = null;
					List<Map<String,String>> forums = dataBaseService.executeQuery("select name from jrun_forums where fid="+threads.get("fid"));
					StringBuffer buffer = new StringBuffer();
					buffer.append("这是由论坛系统自动发送的通知短消息。\n\n[b]以下您所发表的帖子被 [url=");
					buffer.append(boardurl);
					buffer.append("space.jsp?uid=");
					buffer.append(jrun_uid);
					buffer.append("][i]");
					buffer.append(member.getUsername());
					buffer.append("[/i][/url] 评分。[/b]\n[quote]");
					buffer.append(post.getMessage());
					buffer.append("[/quote][b]发表时间:[/b]");
					buffer.append(Common.gmdate(dateformat+" "+timeformat, (int)(post.getDateline()+timeoffset)));
					buffer.append("\n[b]所在论坛:[/b][url=");
					buffer.append(boardurl);
					buffer.append("forumdisplay.jsp?fid=");
					buffer.append(threads.get("fid"));
					buffer.append("]");
					buffer.append(forums.get(0).get("name"));
					buffer.append("[/url]\n[b]所在主题:[/b] [url=");
					buffer.append(boardurl);
					buffer.append("viewthread.jsp?tid=");
					buffer.append(tid);
					buffer.append("]");
					buffer.append(threads.get("subject"));
					buffer.append("[/url]\n\n[b]评分分数:[/b] ");
					buffer.append(ratelogs.substring(1));
					buffer.append("\n[b]操作理由:[/b] ");
					buffer.append(reason);
					String pmsmessage = Common.cutstr(buffer.toString().replace("'", "''"), 40000, "");
					dataBaseService.runQuery("insert into jrun_pms(msgfrom,msgfromid,msgtoid,folder,new,subject,dateline,message,delstatus)values('"+member.getUsername()+"','"+member.getUid()+"','"+post.getAuthorid()+"','inbox','1','[系统消息] 您发表的帖子被评分','"+timestamp+"','"+pmsmessage+"','0')");
					dataBaseService.runQuery("update jrun_members as m set newpm='1' where m.uid="+post.getAuthorid());
				}
			}
			if(ratetime<=0){
				ratetime = 1;
			}else if(ratetime>255){
				ratetime = 255;
			}
			String updatepost = "update jrun_posts set rate = " + rate+ ",ratetimes = " + ratetime + " where pid=" + pid;
			dataBaseService.runQuery(updatepost);
			if (post.getFirst() == 1) {
				String ratedd = "0";
				if(rate>0){
					ratedd = "1";
				}else if(rate<0){
					ratedd = "-1";
				}
				String updatethread = "update jrun_threads set rate=" + ratedd+ " where tid=" + tid;
				dataBaseService.runQuery(updatethread);
			}
			if(inajax==null){
				request.setAttribute("successInfo", "感谢您的参与。");
				request.setAttribute("requestPath", "viewthread.jsp?tid="+tid+"&page="+page);
				return mapping.findForward("showMessage");
			}else{
				writeMessage(response,"感谢您的参与。",false);
				return null;
			}
		}
	}
	@SuppressWarnings("unused")
	private static int convertInt(String s) {
		int count = 0;
		try {
			count = Integer.valueOf(s);
		} catch (Exception e) {
		}
		return count;
	}

	private boolean checkNull(String ss) {
		if (ss != null && !ss.equals("")) {
			return true;
		}
		return false;
	}
	@SuppressWarnings("unchecked")
	private Map getCreditsName(String extcredits) {
		Map extcreditMap = dataParse.characterParse(extcredits, true);
		Map<String, String[]> resultMap = new HashMap<String, String[]>();
		Iterator it = extcreditMap.keySet().iterator();
		String extname[] = new String[8];
		String extunit[] = new String[8];
		while (it.hasNext()) {
			Object key = it.next();
			Map extMap = (Map) extcreditMap.get(key);
			extname[Integer.valueOf(key.toString()) - 1] = (String) extMap.get("title")+ " ";
			extunit[Integer.valueOf(key.toString()) - 1] = " "+ (String) extMap.get("unit");
		}
		resultMap.put("name", extname);
		resultMap.put("unit", extunit);
		return resultMap;
	}

	private void rateCredits(int uid, int score, int extcredits) {
		dataBaseService.runQuery("update jrun_members set extcredits"+extcredits+"=extcredits"+extcredits+"+"+score+" where uid="+uid);
	}
	private Object getValues(Object bean, String fieldName) {
		Object paraValue = null;
		try {
			String getMethod = "get" + fieldName.substring(0, 1).toUpperCase()+ fieldName.substring(1, fieldName.length());
			Method method = bean.getClass().getMethod(getMethod);
			paraValue = method.invoke(bean);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return paraValue;
	}

	public ActionForward blog(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		HttpSession session = request.getSession();
		int jsprun_uid = (Integer)(session.getAttribute("jsprun_uid")==null?0:session.getAttribute("jsprun_uid"));
		String tid = request.getParameter("tid");
		Members members = (Members)session.getAttribute("user");
		String inajax = request.getParameter("inajax");
		String message = "";
		Threads thread = threadService.findByTid(convertInt(tid));
		if(jsprun_uid==0){
			message = "您还没有登录,无法进行操作。";
			if(inajax==null){
				request.setAttribute("errorInfo", message);
				return mapping.findForward("showMessage");
			}else{
				this.showMessage(false, message, response, false);
				return null;
			}
		}
		short jsprun_groupid = (Short) session.getAttribute("jsprun_groupid");
		Usergroups usergroups = userGroupService.findUserGroupById(jsprun_groupid);
		Forums froms = forumService.findById(thread.getFid());
		if (jsprun_uid == 0 || (thread.getBlog() == 0 && (usergroups.getAllowuseblog() == 0 || froms.getAllowshare() == 0))) {
			message = "您所在的用户组(" + usergroups.getGrouptitle() + ")无法进行此操作。";
			if(inajax==null){
				request.setAttribute("errorInfo", message);
				return mapping.findForward("showMessage");
			}else{
				this.showMessage(false, message, response, false);
				return null;
			}
		}
		if (thread.getAuthorid() != jsprun_uid) {
			boolean modertar = Common.ismoderator(thread.getFid(), members);
			if (!modertar) {
				message = "对不起,您不是本主题的作者,无法进行此操作。";
				if(inajax==null){
					request.setAttribute("errorInfo", message);
					return mapping.findForward("showMessage");
				}else{
					this.showMessage(false, message, response, false);
					return null;
				}
			}
		}
		int blog = thread.getBlog() == 0 ? 1 : 0;
		String updateblog = "update jrun_threads set blog=" + blog+ " where tid=" + tid;
		dataBaseService.runQuery(updateblog);
		message = "操作成功";
		if(inajax==null){
			request.setAttribute("successInfo", message);
			request.setAttribute("requestPath", "viewthread.jsp?tid="+tid);
			return mapping.findForward("showMessage");
		}else{
			this.showMessage(true, message, response, false);
			return null;
		}
	}

	private void showMessage(boolean issucess, String message,
			HttpServletResponse response, boolean isshow) {
		response.setContentType("text/html");
		response.setHeader("Cache-Control", "no-store");
		response.setHeader("Program", "no-cache");
		response.setDateHeader("Expirse", 0);
		try {
			if (issucess) {
				if (isshow) {
					response.getWriter().write("show:" + message);
				} else {
					response.getWriter().write(message);
				}
			} else {
				response.getWriter().write("error:" + message);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public ActionForward viewthreadmod(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String tid = request.getParameter("tid");
		List<Map<String,String>> threadss = dataBaseService.executeQuery("select t.tid,t.subject,f.fid,f.name,f.type,f.fup from jrun_threads as t left join jrun_forums as f on t.fid=f.fid where t.tid="+tid);
		if(threadss==null || threadss.size()<=0){
			request.setAttribute("errorInfo", "未定义操作,请返回。");
			return mapping.findForward("showMessage");
		}
		Map<String,String> threads = threadss.get(0);threadss=null;
		String navigation = "<a href='forumdisplay.jsp?fid="+threads.get("fid")+"'>"+threads.get("name")+"</a> &raquo; <a href='viewthread.jsp?tid="+threads.get("tid")+"'>"+threads.get("subject")+"</a>";
		if(threads.get("type").equals("sub")){
			Forums parentforum = forumService.findById(Common.toDigit(threads.get("fup"),10000000L,0L).shortValue());
			navigation = "<a href='forumdisplay.jsp?fid="+parentforum.getFid()+"'>"+parentforum.getName()+"</a> &raquo; <a href='forumdisplay.jsp?fid="+threads.get("fid")+"'>"+threads.get("name")+"</a> &raquo; <a href='viewthread.jsp?tid="+threads.get("tid")+"'>"+threads.get("subject")+"</a>";
		}
		request.setAttribute("navigation", navigation);
		threads = null;
		List<Threadsmod> modlist = threadService.findByThreadsmodBytid(convertInt(tid));
		if (modlist == null) {
			showMessage(false, "主题管理记录不存在,或管理记录已经过期并删除,请返回", response, false);
		} else {
			request.setAttribute("modlist", modlist);
		}
		return mapping.findForward("tomod");
	}
	@SuppressWarnings("unchecked")
	public ActionForward viewratings(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String tid = request.getParameter("tid");
		String pid = request.getParameter("pid");
		String ratelogsql = "SELECT * FROM jrun_ratelog WHERE pid='" + pid + "' ORDER BY dateline";
		List<Map<String, String>> rateloglist = dataBaseService.executeQuery(ratelogsql);
		Posts post = postService.getPostsById(convertInt(pid));
		List<Map<String,String>> threadslist = dataBaseService.executeQuery("select t.tid,t.subject,t.price,f.fid,f.name,f.type,f.fup from jrun_threads as t left join jrun_forums as f on t.fid=f.fid where t.tid='"+tid+"'");
		if (post == null || rateloglist == null || rateloglist.size() <= 0) {
			request.setAttribute("errorInfo", "对不起,指定帖子在近一年内没有评分记录,请返回。");
			return mapping.findForward("showMessage");
		}
		if(threadslist==null || threadslist.size()<=0){
			request.setAttribute("errorInfo", "未定义操作,请返回。");
			return mapping.findForward("showMessage");
		}
		Map<String,String>threads = threadslist.get(0);threadslist=null;
		String navigation = "<a href='forumdisplay.jsp?fid="+threads.get("fid")+"'>"+threads.get("name")+"</a> &raquo; <a href='viewthread.jsp?tid="+threads.get("tid")+"'>"+threads.get("subject")+"</a>";
		if(threads.get("type").equals("sub")){
			Forums parentforum = forumService.findById(Common.toDigit(threads.get("fup"),100000000L,0L).shortValue());
			navigation = "<a href='forumdisplay.jsp?fid="+parentforum.getFid()+"'>"+parentforum.getName()+"</a> &raquo; <a href='forumdisplay.jsp?fid="+threads.get("fid")+"'>"+threads.get("name")+"</a> &raquo; <a href='viewthread.jsp?tid="+threads.get("tid")+"'>"+threads.get("subject")+"</a>";
		}
		request.setAttribute("navigation", navigation);
		Members member = memberService.findMemberById(post.getAuthorid());
		String banedsett = ((Map<String,String>)request.getSession().getServletContext().getAttribute("fsmap")).get("bannedmessages");
		String banmessage = banedsett == null ? "" : banedsett;
		if (banmessage.equals("0")|| (banmessage.equals("1") && (member.getGroupid() != 4 && member.getGroupid() != 5))) {
			@SuppressWarnings("unused")
			String message = post.getMessage();
		} else {
		}
		String extcreits = ((Map<String,String>)request.getSession().getServletContext().getAttribute("fsmap")).get("extcredits");
		Map<String, String[]> creditnameMap = getCreditsName(extcreits);
		List resultlist = new ArrayList();
		for (int i = 0; i < rateloglist.size(); i++) {
			Map<String, String> ratelogmap = rateloglist.get(i);
			RatelogVO ratevo = new RatelogVO();
			ratevo.setFirstUsername(ratelogmap.get("username"));
			String creditname = creditnameMap.get("name")[convertInt(ratelogmap.get("extcredits")) - 1];
			String creditunit = creditnameMap.get("unit")[convertInt(ratelogmap.get("extcredits")) - 1];

⌨️ 快捷键说明

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