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

📄 useraction.java

📁 论坛软件系统亦称电子公告板(BBS)系统
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
			e.printStackTrace();
		}
		String fieldsubmit = request.getParameter("fieldsubmit");
		if(fieldsubmit!=null){
			request.setAttribute("successInfo", "用户资料栏目成功更新。");
			request.setAttribute("requestPath", "admincp.jsp?action=profilefields");
			return mapping.findForward("success");
		}
		List<Profilefields> profileList = memberServer.findAllProfilefields();
		request.setAttribute("profileList", profileList);
		return mapping.findForward("profileFields");
	}

	@SuppressWarnings("unchecked")
	public ActionForward creditSubmit(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		UserForm userForm = (UserForm) form;
		HttpSession session  = request.getSession();
		int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
		if ("yes".equals(request.getAttribute("submit"))) {
			return mapping.findForward("creditSubmit");
		} else if ("yes".equals(request.getParameter("search"))) {
			List<Map<String, String>> allgroups = dataBaseService.executeQuery("select groupid,grouptitle from jrun_usergroups order by radminid desc,groupid desc");
			request.setAttribute("allGroups", allgroups);
			String sql = memberServer.returnsearsql(userForm, true,timeoffset);
			List<Map<String, String>> count = dataBaseService.executeQuery("select count(*) as count " + sql);
			String size = "0";
			if (count.size() > 0) {
				size = count.get(0).get("count");
			}
			String extcredits = ((Map<String, String>) request.getSession().getServletContext().getAttribute("fsmap")).get("extcredits");
			String creditsnotify = userGroupServer.findSettingByVariable("creditsnotify").getValue();
			Map creditsnotifyMap = dataParse.characterParse(creditsnotify,false);
			request.setAttribute("creditsnotifyMap", creditsnotifyMap);
			Map extcreditMap = dataParse.characterParse(extcredits, true);
			Iterator it = extcreditMap.keySet().iterator();
			String array = "";
			while (it.hasNext()) {
				Object key = it.next();
				Map map = (Map) extcreditMap.get(key);
				if ("1".equals(map.get("available"))) {
					array += key + ",";
				}
			}
			if (!array.equals("")) {
				array = array.substring(0, array.length() - 1);
			}
			request.setAttribute("array", array);
			session.setAttribute("cresql", sql);
			request.setAttribute("size", size);
			request.setAttribute("result", "yes");
			request.setAttribute("extcreditMap", extcreditMap);
			count = null;
			return mapping.findForward("creditSubmit");
		} else {
			List<Map<String, String>> allgroups = dataBaseService.executeQuery("select groupid,grouptitle from jrun_usergroups order by radminid desc,groupid desc");
			String extcredits = ((Map<String, String>) request.getSession().getServletContext().getAttribute("fsmap")).get("extcredits");
			Map extcreditMap = dataParse.characterParse(extcredits, true);
			Iterator it = extcreditMap.keySet().iterator();
			String array = "";
			while (it.hasNext()) {
				Object key = it.next();
				Map map = (Map) extcreditMap.get(key);
				if ("1".equals(map.get("available"))) {
					array += key + ",";
				}
			}
			if (!array.equals("")) {
				array = array.substring(0, array.length() - 1);
			}
			request.setAttribute("array", array);
			String creditsnotify = userGroupServer.findSettingByVariable("creditsnotify").getValue();
			Map creditsnotifyMap = dataParse.characterParse(creditsnotify, false);
			request.setAttribute("creditsnotifyMap", creditsnotifyMap);
			request.setAttribute("allGroups", allgroups);
			request.setAttribute("extcreditMap", extcreditMap);
			return mapping.findForward("creditSubmit");
		}
	}
	@SuppressWarnings("unchecked")
	public ActionForward editCredit(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String updatecreditsubmit = request.getParameter("updatecreditsubmit");
		if(updatecreditsubmit==null){
			Common.requestforward(response, "admincp.jsp?action=members&submitname=creditsubmit");
			return null;
		}
		HttpSession session = request.getSession();
		String credql = (String) session.getAttribute("cresql");
		if(credql==null){
			Common.requestforward(response, "admincp.jsp?action=members&submitname=creditsubmit");
			return null;
		}
		String sendvia = request.getParameter("sendvia");
		if(sendvia.equals("email")&&request.getParameter("end")!=null){
			session.removeAttribute("cresql");
			String msg = "用户积分奖惩成功执行,并已通知相关用户。";
			request.setAttribute("resultInfo", msg);
			return mapping.findForward("result");
		}
		List<Map<String, String>> memberlist = null;
		Members members = (Members) session.getAttribute("members");
		String updatecredittype = request.getParameter("updatecredittype");
		String sendcreditsletter = request.getParameter("sendcreditsletter");
		String creditsformula = ((Map<String, String>) request.getSession().getServletContext().getAttribute("fsmap")).get("creditsformula");
		String subject = request.getParameter("subject");
		String message = request.getParameter("message");
		String pertask = request.getParameter("pertask");
		int perta = Common.toDigit(pertask);
		if (sendcreditsletter != null && sendcreditsletter.equals("1")) {
			if (subject == null || subject.equals("") || message == null|| message.equals("")) {
				request.setAttribute("errorInfo", "您没有输入消息的标题或内容,请返回修改。");
				return mapping.findForward("error");
			}
		}
		int updatecredit[] = new int[8];
		String extadd = "";
		if(!updatecredittype.equals("2")){
			 memberlist = dataBaseService.executeQuery("select uid "+ credql);
		}
		if (updatecredittype.equals("0")) {
			boolean flag = false;
			for (int i = 0; i < updatecredit.length; i++) {
				int exts = i + 1;
				String credits = request.getParameter("addextcredits[" + exts+ "]");
				if (credits != null) {
					if (!credits.equals("0")) {
						flag = true;
					}
				}
				credits = credits == null ? "0" : credits;
				extadd += "extcredits" + exts + "=extcredits" + exts + "+"+ credits + ",";
			}
			if (flag) {
				if (!extadd.equals("")) {
					StringBuffer uids = new StringBuffer("0");
					for (Map<String, String> member : memberlist) {
						uids.append(",");
						uids.append(member.get("uid"));
					}
					extadd = extadd.substring(0, extadd.length() - 1);
					dataBaseService.runQuery("update jrun_members set "+ extadd + ",credits=" + creditsformula+ " where uid in (" + uids.toString() + ")", true);
				}
			} else {
				request.setAttribute("errorInfo", "您没有对用户积分进行奖惩,请返回修改。");
				return mapping.findForward("error");
			}
		} else if (updatecredittype.equals("1")) {
			boolean flag = false;
			for (int i = 0; i < updatecredit.length; i++) {
				int exts = i + 1;
				String resetextcredits = request.getParameter("resetextcredits[" + exts + "]");
				if (resetextcredits != null) {
					extadd += "extcredits" + exts + "=0,";
					flag = true;
				}
			}
			if (flag) {
				if (!extadd.equals("")) {
					StringBuffer uids = new StringBuffer("0");
					for (Map<String, String> member : memberlist) {
						uids.append(",");
						uids.append(member.get("uid"));
					}
					extadd = extadd.substring(0, extadd.length() - 1);
					dataBaseService.runQuery("update jrun_members set "+ extadd + ",credits=" + creditsformula+ " where uid in (" + uids.toString() + ")", true);
				}
			} else {
				request.setAttribute("errorInfo", "您没有对用户积分进行奖惩,请返回修改。");
				return mapping.findForward("error");
			}
		}
		if (sendcreditsletter != null && sendcreditsletter.equals("1")) {
			if (subject.equals("secends") && message.equals("secends")) {
				String creditsnotify = userGroupServer.findSettingByVariable("creditsnotify").getValue();
				Map creditsnotifyMap = dataParse.characterParse(creditsnotify,	false);
				if (creditsnotifyMap != null&& creditsnotifyMap.get("subject") != null) {
					subject = (String) creditsnotifyMap.get("subject");
					message = (String) creditsnotifyMap.get("message");
				}
			} else {
				Map creditsnotifyMap = new HashMap();
				creditsnotifyMap.put("subject", subject);
				creditsnotifyMap.put("message", message);
				String value = dataParse.combinationChar(creditsnotifyMap);
				dataBaseService.runQuery("REPLACE INTO jrun_settings (variable, value) VALUES('creditsnotify','"+ value + "')", true);
			}
			if (sendvia.equals("email")) {
				memberlist = dataBaseService.executeQuery("select username,newsletter,email "+ credql);
				StringBuffer tomails=new StringBuffer();
				for (Map<String, String> member : memberlist) {
					if(member.get("newsletter").equals("1")){
						tomails.append(","+member.get("username")+" <"+member.get("email")+">");
					}
				}
				if(tomails.length()>0){
					Map<String,String> settings=ForumInit.settings;
					Map<String,String> mails=dataParse.characterParse(settings.get("mail"), false);
					mails.put("jsprun_root",servlet.getServletContext().getRealPath("/"));
					Mail mail = new Mail(mails);
					mail.sendMessage(mails.get("from"), tomails.substring(1), subject, message, null);
				}
				if (perta > 1) {
					String msg = "发送论坛通知: 正在处理 从 0 到 " + perta;
					request.setAttribute("successInfo", msg);
					request.setAttribute("requestPath",request.getContextPath()+ "/user.do?useraction=editCredit&updatecredittype=2&sendcreditsletter="+ sendcreditsletter+ "&subject=secends&message=secends&sendvia=email&updatecreditsubmit=yes&end=yes");
					memberlist = null;
					return mapping.findForward("success");
				} else {
					session.removeAttribute("cresql");
					memberlist = null;
					String msg = "用户积分奖惩成功执行,并已通知相关用户。";
					request.setAttribute("resultInfo", msg);
					return mapping.findForward("result");
				}
			} else {
				String username = members.getUsername();
				String uid = members.getUid() + "";
				int timestamp = (Integer)(request.getAttribute("timestamp"));
				String sql = "insert into jrun_pms (msgfrom,msgfromid,msgtoid,folder,new,subject,dateline,message,delstatus) values ";
				String begin = request.getParameter("begin");
				int beint = 0;
				if (begin != null) {
					beint = Integer.valueOf(begin);
				}
				memberlist = dataBaseService.executeQuery("select uid,newsletter,g.maxpmnum as maxpmnum "+ credql+" limit "+beint+","+perta);
				int pers = perta + beint;
				if (perta > 0) {
					int num = 0;
					String uids = "0";
					int size = Common.toDigit(dataBaseService.executeQuery("select count(*) as count "+credql).get(0).get("count"));
					for (Map<String, String> member:memberlist) {
						if (member.get("newsletter").equals("1")&& member.get("maxpmnum") != null&& !member.get("maxpmnum").equals("0")) {
							uids = uids + "," + member.get("uid");
							num++;
							sql += "('" + username + "','" + uid + "','"+ member.get("uid") + "','inbox','1','"+ subject + "','" + timestamp + "','"+ message + "','0'),";
						}
					}
					if (num > 0) {
						sql = sql.substring(0, sql.length() - 1);
					}
					dataBaseService.runQuery("update jrun_members set newpm = 1 where uid in ("+ uids + ")", true);
					if(num>0){
						dataBaseService.runQuery(sql, true);
					}

⌨️ 快捷键说明

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