📄 useraction.java
字号:
/*
* Created on 2007-2-5
* Last modified on 2007-8-23
* Powered by YeQiangWei.com
*/
package com.yeqiangwei.club.controller.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import com.yeqiangwei.club.dao.model.Email;
import com.yeqiangwei.club.dao.model.Register;
import com.yeqiangwei.club.exception.ClubException;
import com.yeqiangwei.club.service.ServiceLocator;
import com.yeqiangwei.club.service.ServiceWrapper;
import com.yeqiangwei.club.service.user.RegisterService;
import com.yeqiangwei.club.service.user.UserService;
import com.yeqiangwei.club.service.user.UserSettingsService;
import com.yeqiangwei.club.service.mail.MailInfo;
import com.yeqiangwei.club.service.mail.MailSend;
import com.yeqiangwei.club.service.model.UserModel;
import com.yeqiangwei.club.service.model.UserSettingsModel;
import com.yeqiangwei.club.service.user.UserLogin;
import com.yeqiangwei.club.service.util.EmailService;
import com.yeqiangwei.club.util.BeanUtils;
import com.yeqiangwei.club.util.MessageUtils;
import com.yeqiangwei.util.Validator;
import com.yeqiangwei.club.controller.form.AProfileForm;
import com.yeqiangwei.club.controller.form.EmailForm;
import com.yeqiangwei.club.controller.form.PasswordForm;
import com.yeqiangwei.club.controller.form.ProfileForm;
import com.yeqiangwei.club.controller.form.RegisterForm;
import com.yeqiangwei.club.controller.form.UserGroupForm;
import com.yeqiangwei.club.controller.form.UserLoginForm;
import com.yeqiangwei.club.controller.form.UserRegisterForm;
import com.yeqiangwei.club.controller.form.UserSettingsForm;
import com.yeqiangwei.club.controller.form.build.AProfileBuild;
import com.yeqiangwei.club.controller.form.build.EmailBuild;
import com.yeqiangwei.club.controller.form.build.PasswordBuild;
import com.yeqiangwei.club.controller.form.build.ProfileBuild;
import com.yeqiangwei.club.controller.form.build.RegisterBuild;
import com.yeqiangwei.club.controller.form.build.UserGroupBuild;
import com.yeqiangwei.club.controller.form.build.UserLoginBuild;
import com.yeqiangwei.club.controller.form.build.UserRegisterBuild;
import com.yeqiangwei.club.controller.form.build.UserSettingsBuild;
import com.yeqiangwei.util.HttpServletUtils;
import com.yeqiangwei.util.ParamUtils;
import com.yeqiangwei.util.StringHelper;
public class UserAction{
private static final Logger logger = Logger.getLogger(UserAction.class);
private MailSend mailSend;
public UserAction()
{
}
public void sendMail(HttpServletRequest request,HttpServletResponse response){
EmailForm emailForm = new EmailBuild(request).build();
MailInfo info = new MailInfo();
BeanUtils.copyProperties(info,emailForm);
boolean issent = this.getMailSend().send(info);
request.setAttribute("message",this.getMailSend().getMessage());
request.setAttribute("EmailForm",emailForm);
request.setAttribute("issent",issent);
HttpServletUtils.forward(request,response,"/club/email.jsp?userId="+emailForm.getTakerUserId());
}
public UserRegisterForm findByEmailAddress(HttpServletRequest request)
{
String emailAddress = ParamUtils.getStringParameter(request,"emailAddress");
UserModel model = this.getUserService().findByEmailAddress(emailAddress);
UserRegisterForm userRegisterForm = new UserRegisterForm();
if(Validator.isEmpty(model)){
userRegisterForm = null;
}else{
BeanUtils.copyProperties(userRegisterForm,model);
}
return userRegisterForm;
}
public UserRegisterForm findByUserName(HttpServletRequest request)
{
String userName = ParamUtils.getStringParameter(request,"userName");
UserModel model = this.getUserService().findByUserName(userName);
UserRegisterForm f = new UserRegisterForm();
if(Validator.isEmpty(model)){
f = null;
}else{
BeanUtils.copyProperties(f,model);
}
return f;
}
public void loginInit(HttpServletRequest request,HttpServletResponse response){
UserLogin.loginInit(request, this.getUserService());
}
/**
* 管理员强制更新资料
* @param request
* @return
*/
public AProfileForm aprofile(HttpServletRequest request,HttpServletResponse response){
AProfileForm aProfileForm = new AProfileBuild(request).building();
try {
this.getUserService().update(aProfileForm);
request.setAttribute("message",MessageUtils.getMessage("success"));
} catch (ClubException e) {
request.setAttribute("message",e.getMessage());
}
request.setAttribute("AProfileForm",aProfileForm);
//request.setAttribute("message",this.getUserService().getMessage());
HttpServletUtils.forward(request,response,"profile.jsp");
return aProfileForm;
}
public ProfileForm profileInit(HttpServletRequest request){
UserModel userModel = UserLogin.getUserModel(request);
ProfileForm profileForm = new ProfileForm();
if(!Validator.isEmpty(userModel)){
BeanUtils.copyProperties(profileForm,userModel);
}
return profileForm;
}
public void login(HttpServletRequest request,HttpServletResponse response){
UserLoginForm userLoginForm = new UserLoginBuild(request).building();
UserModel userModel = UserLogin.login(request,response,this.getUserService(), userLoginForm);
request.setAttribute("loginPosts",userLoginForm.getPosts());
request.setAttribute("UserLoginForm",userLoginForm);
if(userLoginForm.getBeforeURL().endsWith("login.jsp")){
request.setAttribute("beforeURL","/club/myInfo.jsp");
}else{
request.setAttribute("beforeURL",userLoginForm.getBeforeURL());
}
byte loginForward = 0;
String forwardUrl = "/club/login.jsp";
if(!Validator.isEmpty(userModel)){
request.setAttribute("message",MessageUtils.getMessage("success_login"));
loginForward = this.getUserSettingsService().getUserSettingsModel(userModel.getUserId()).getLoginForward();
request.setAttribute("hint","success");
switch(loginForward){
case 1:
forwardUrl = "/club/main.jsp";
break;
case 2:
forwardUrl = "/club/myInfo.jsp";
break;
case 3:
forwardUrl = userLoginForm.getBeforeURL();
if(forwardUrl.indexOf("http://")!=-1){
forwardUrl = forwardUrl.replace("http://","");
forwardUrl = StringHelper.substring(forwardUrl,forwardUrl.indexOf("/"),forwardUrl.length(),"/club/main.jsp");
logger.debug("forwardUrl: "+forwardUrl);
}
break;
case 4:
forwardUrl = "/club/favoriteTopic.jsp";
break;
default:
//forwardUrl = "/club/main.jsp";
}
if(forwardUrl.endsWith("login.jsp")){
HttpServletUtils.forward(request,response,forwardUrl);
}else{
HttpServletUtils.redirect(response,forwardUrl);
}
}else{
request.setAttribute("message",MessageUtils.getMessage("error_login"));
request.setAttribute("hint","error");
request.setAttribute("wrongPassword",userLoginForm.getPassword());
HttpServletUtils.forward(request,response,forwardUrl);
}
}
public void logout(HttpServletRequest request,HttpServletResponse response){
UserLogin.logout(request,response);
HttpServletUtils.redirect(response,"main.jsp");
}
public void create(HttpServletRequest request,HttpServletResponse response){
UserRegisterForm userRegisterForm = new UserRegisterBuild(request).building();
UserModel userModel = new UserModel();
BeanUtils.copyProperties(userModel,userRegisterForm);
String noAllowed = this.noAllowed(userModel);
if(noAllowed!=null){
request.setAttribute("message",noAllowed);
request.setAttribute("UserRegisterForm",userRegisterForm);
request.setAttribute("registerNumber",userRegisterForm.getRegisterNumber());
HttpServletUtils.forward(request,response,"/club/register.jsp");
}else{
try {
this.getUserService().create(userModel);
UserLogin.setCookies(request,response,userModel,1);
request.setAttribute("message",MessageUtils.getMessage("success_reg"));
HttpServletUtils.redirect(response,"/club/registered.jsp");
} catch (ClubException e) {
request.setAttribute("message",e.getMessage());
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -