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

📄 reg.java

📁 交易撮合系统是一套买卖信息沟通的平台
💻 JAVA
字号:
package com.laoer.bbscs.web.action;

import com.laoer.bbscs.service.*;
import com.laoer.bbscs.service.config.*;
import com.laoer.bbscs.comm.*;
import com.laoer.bbscs.exception.BbscsException;
import com.laoer.bbscs.web.interceptor.*;
import com.laoer.bbscs.web.servlet.UserCookie;
import com.laoer.bbscs.bean.*;
import com.laoer.bbscs.service.mail.*;
import java.util.*;
import org.apache.commons.lang.*;

public class Reg extends BaseAction implements RemoteAddrAware, UserCookieAware {

	/**
	 *
	 */
	private static final long serialVersionUID = -8383329678871879794L;

	// private String action;

	private String answer;

	private String email;

	private String nickName;

	private String passwd;

	private String question;

	private String rePasswd;

	private String userName;

	private String validateCode;

	private String authCode;

	private boolean useAuthCode = true;

	private UserService userService;

	private SysConfig sysConfig;

	private IPSeeker ipSeeker;

	private String userRemoteAddr = "";

	private TemplateMail templateMail;

	private SysStatService sysStatService;

	public IPSeeker getIpSeeker() {
		return ipSeeker;
	}

	public void setIpSeeker(IPSeeker ipSeeker) {
		this.ipSeeker = ipSeeker;
	}

	public SysConfig getSysConfig() {
		return sysConfig;
	}

	public void setSysConfig(SysConfig sysConfig) {
		this.sysConfig = sysConfig;
	}

	public UserService getUserService() {
		return userService;
	}

	public void setUserService(UserService userService) {
		this.userService = userService;
	}

	public TemplateMail getTemplateMail() {
		return templateMail;
	}

	public void setTemplateMail(TemplateMail templateMail) {
		this.templateMail = templateMail;
	}

	/*
	 * public String getAction() { return action; }
	 *
	 * public void setAction(String action) { this.action = action; }
	 */

	public String getAnswer() {
		return answer;
	}

	public void setAnswer(String answer) {
		this.answer = answer;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getNickName() {
		return nickName;
	}

	public void setNickName(String nickName) {
		this.nickName = nickName;
	}

	public String getPasswd() {
		return passwd;
	}

	public void setPasswd(String passwd) {
		this.passwd = passwd;
	}

	public String getQuestion() {
		return question;
	}

	public void setQuestion(String question) {
		this.question = question;
	}

	public String getRePasswd() {
		return rePasswd;
	}

	public void setRePasswd(String rePasswd) {
		this.rePasswd = rePasswd;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getValidateCode() {
		return validateCode;
	}

	public void setValidateCode(String validateCode) {
		this.validateCode = validateCode;
	}

	public String getAuthCode() {
		return authCode;
	}

	public void setAuthCode(String authCode) {
		this.authCode = authCode;
	}

	public boolean isUseAuthCode() {
		return useAuthCode;
	}

	public void setUseAuthCode(boolean useAuthCode) {
		this.useAuthCode = useAuthCode;
	}

	public void setRemoteAddr(String remoteAddr) {
		this.userRemoteAddr = remoteAddr;
	}

	public String getUserRemoteAddr() {
		return userRemoteAddr;
	}

	public void setUserRemoteAddr(String userRemoteAddr) {
		this.userRemoteAddr = userRemoteAddr;
	}

	public SysStatService getSysStatService() {
		return sysStatService;
	}

	public void setSysStatService(SysStatService sysStatService) {
		this.sysStatService = sysStatService;
	}

	private UserCookie userCookie;

	public UserCookie getUserCookie() {
		return userCookie;
	}

	public void setUserCookie(UserCookie userCookie) {
		this.userCookie = userCookie;
	}

	public String input() throws Exception {
		if (this.getSysConfig().getUsePass() == 1) {
			return "passreg";
		}

		if (this.getSysConfig().getOpenUserReg() == 0) { // 关闭注册
			addActionError(this.getText("error.reg.notallowreg"));
			return ERROR;
		}
		this.setUseAuthCode(this.getSysConfig().isUseRegAuthCode());
		this.setAction("add");
		return INPUT;
	}

	public String add() {
		if (this.getSysConfig().getUsePass() == 1) {
			return "passreg";
		}
		this.setUseAuthCode(this.getSysConfig().isUseRegAuthCode());
		if (this.getSysConfig().getOpenUserReg() == 0) { // 关闭注册
			addActionError(this.getText("error.reg.notallowreg"));
			return ERROR;
		}
		if (this.getSysConfig().isCanNotRegUserName(this.getUserName())) { // 不能注册的用户名
			addFieldError("userName", this.getText("error.reg.badusername", new String[] { this.getUserName() }));
		}
		if (this.getSysConfig().getUseForbid() == 1) {
			if (this.getSysConfig().isForbidIP(this.getUserRemoteAddr())) {
				this.addFieldError("userName", this.getText("error.reg.ipforbid", new String[] { this
						.getUserRemoteAddr() }));
			}
			if (this.getSysConfig().isForbidEmail(this.getEmail())) {
				this.addFieldError("email", this.getText("error.reg.emailforbid", new String[] { this.getEmail() }));
			}
		}
		if (this.getSysConfig().isUseRegAuthCode()) {
			if (!this.getUserCookie().getAuthCode().equals(this.getAuthCode())) {
				this.addFieldError("authCode", this.getText("error.reg.authcode.same"));
			}
		}

		if (this.hasFieldErrors()) {
			return INPUT;
		}

		UserInfo ui = this.getUserService().findUserInfoByUserName(this.getUserName());

		if (ui != null) {
			this.addFieldError("userName", this.getText("error.reg.name1"));
			return INPUT;
		}

		ui = this.getUserService().findUserInfoByEmail(this.getEmail());
		if (ui != null) {
			this.addFieldError("email", this.getText("error.reg.emailerror"));
			return INPUT;
		}

		ui = new UserInfo();

		ui.setAcceptFriend(1);
		ui.setAnswer(this.getAnswer());
		ui.setArticleEliteNum(0);
		ui.setArticleNum(0);
		ui.setBirthDay(1);
		ui.setBirthMonth(1);
		ui.setBirthYear(1980);
		ui.setEmail(this.getEmail());
		ui.setExperience(0);
		ui.setForumPerNum(0);
		ui.setForumViewMode(0);
		ui.setHavePic(0);
		ui.setLastLoginIP("0.0.0.0");
		ui.setLastLoginTime(new Date());
		ui.setLifeForce(0);
		ui.setLiterary(0);
		ui.setLoginIP("0.0.0.0");
		ui.setLoginTime(new Date());
		ui.setLoginTimes(0);
		ui.setNickName(this.getSysConfig().bestrowScreenNickName(this.getNickName())); // 屏蔽敏感字
		ui.setPasswd(this.getPasswd());
		ui.setPicFileName("");
		ui.setPostPerNum(0);
		ui.setQuestion(this.getQuestion());
		ui.setReceiveNote(1);
		ui.setRegTime(new Date());
		ui.setRePasswd(Util.hash(this.getPasswd()));
		ui.setSignDetail0(this.getText("bbscs.userdefaultsign"));
		ui.setSignDetail1(this.getText("bbscs.userdefaultsign"));
		ui.setSignDetail2(this.getText("bbscs.userdefaultsign"));
		ui.setSignName0("A");
		ui.setSignName1("B");
		ui.setSignName2("C");
		ui.setStayTime(0);
		ui.setTimeZone("GMT+08:00");
		ui.setUserFrom(this.getIpSeeker().getCountry(this.getUserRemoteAddr()));
		ui.setUserKnow(0);
		ui.setUserName(this.getUserName());
		ui.setUserTitle(0);
		if (this.getSysConfig().isCheckRegUser() || this.getSysConfig().isCheckRegUserEmail()) {
			ui.setValidated(0);
			ui.setGroupID(Constant.USER_GROUP_UNVUSER);
		} else {
			ui.setValidated(1);
			ui.setGroupID(Constant.USER_GROUP_REGUSER);
		}
		ui.setEditType(-1);
		ui.setUserLocale(this.getLocale().toString());
		ui.setValidateCode(RandomStringUtils.randomAlphanumeric(10));
		ui.setCoin(100);

		UserDetail ud = new UserDetail();
		ud.setBrief("");
		ud.setDreamJob("");
		ud.setDreamLover("");
		ud.setFavourArt("");
		ud.setFavourBook("");
		ud.setFavourChat("");
		ud.setFavourMovie("");
		ud.setFavourMusic("");
		ud.setFavourPeople("");
		ud.setFavourTeam("");
		ud.setGraduate("");
		ud.setHeight("");
		ud.setHomePage("");
		ud.setIcqNo("");
		ud.setInterest("");
		ud.setMsn("");
		ud.setOicqNo("");
		ud.setSex((short) 0);
		ud.setWeight("");
		ud.setYahoo("");

		ui.setUserDetail(ud);
		ud.setUserInfo(ui);

		try {
			ui = this.getUserService().saveUserInfo(ui);
			this.getSysStatService().saveAllUserNum(this.getUserService().getAllUserNum(), this.getUserName());
			if (this.getSysConfig().isCheckRegUserEmail()) {
				String subject = this.getText("reg.validate.email.title", new String[] { this.getSysConfig()
						.getForumName() });
				Map<String, String> root = new HashMap<String, String>();
				root.put("website", this.getSysConfig().getForumName());
				root.put("forumurl", this.getSysConfig().getForumUrl());
				root.put("userName", ui.getUserName());
				root.put("validateCode", ui.getValidateCode());
				this.getTemplateMail().sendMailFromTemplate(ui.getEmail(), subject, "regValidate.ftl", root,
						this.getLocale());
			}
			return SUCCESS;
		} catch (BbscsException e) {
			this.addActionError(this.getText("error.reg.createrror"));
			return ERROR;
		}
	}

	public String validateuser() {
		UserInfo ui = this.getUserService().findUserInfoByUserName(this.getUserName());
		if (ui == null) {
			this.addActionError(this.getText("error.user.notexist"));
			return ERROR;
		}
		if (!ui.getValidateCode().equals(this.getValidateCode())) {
			this.addActionError(this.getText("error.reg.validatecode"));
			return ERROR;
		}
		ui.setGroupID(Constant.USER_GROUP_REGUSER);
		ui.setValidated(1);
		try {
			this.getUserService().saveUserInfo(ui);
		} catch (BbscsException e) {
			this.addActionError(this.getText("error.reg.validateerror"));
			return ERROR;
		}
		return SUCCESS;
	}

}

⌨️ 快捷键说明

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