📄 useraction.java
字号:
package com.shunshi.ssh.action;
import java.util.Random;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import org.apache.struts.actions.*;
import org.extremecomponents.table.core.TableConstants;
import org.extremecomponents.table.limit.Limit;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.shunshi.ssh.service.*;
import com.shunshi.ssh.entity.*;
public class UserAction extends DispatchAction {
private IUserService userService;
public IUserService getUserService() {
return userService;
}
public void setUserService(IUserService userService) {
this.userService = userService;
}
public ActionForward toRegister(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
mySaveToken(request);
String type=request.getParameter("type");
if("p".equals(type)){
return mapping.findForward("registerP");
}
return mapping.findForward("registerC");
}
public ActionForward toModify(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
mySaveToken(request);
System.out.println("toModifyToken="+request.getSession().getId()+request.getSession().getAttribute("token"));
String type=request.getParameter("type");
if("p".equals(type)){
return mapping.findForward("modifyP");
}
return mapping.findForward("modifyC");
}
private void mySaveToken(HttpServletRequest request){
HttpSession session=request.getSession();
session.removeAttribute("token");
Random ran=new Random();
int token=Math.abs(ran.nextInt())%1000+1;
session.setAttribute("token",new Integer(token));
}
private boolean validateToken(HttpServletRequest request){
HttpSession session=request.getSession();
String token=request.getParameter("token");
System.out.println("requestToken="+token);
Object tokenobj=session.getAttribute("token");
String tokenstr=null;
if(tokenobj!=null)tokenstr=tokenobj.toString();
System.out.println(request.getSession().getId()+"sessionToken="+tokenobj);
if(token.equals(tokenstr)){
session.removeAttribute("token");
return true;
}else{
return false;
}
}
//用户注册
public ActionForward register(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
boolean tokenvalidate=validateToken(request);
//会员类型
String type=request.getParameter("type");
if(tokenvalidate){
String userName=request.getParameter("userName");
String password=request.getParameter("password");
String contact=request.getParameter("contact");
String province=request.getParameter("province");
String city=request.getParameter("city");
String county=request.getParameter("county");
String location=request.getParameter("location");
String postNo=request.getParameter("postNo");
String mobilephone=request.getParameter("mobilephone");
String areaNumber=request.getParameter("areaNumber");
String phoneNumber=request.getParameter("phoneNumber");
String subPhoneNumber=request.getParameter("subPhoneNumber");
String faxNumber=request.getParameter("faxNumber");
String subFaxNumber=request.getParameter("subFaxNumber");
String email=request.getParameter("email");
//个人会员
String personId=request.getParameter("personId");
//企业会员
String companyName=request.getParameter("companyName"); //公司名称
String homePage=request.getParameter("homePage"); //公司主页
String companyType=request.getParameter("companyType"); //公司类型
String instruction=request.getParameter("instruction"); //公司简介
Address address=null;
if(province==null || city==null || county==null){
address=new Address("四川","成都","郫县");
}else{
address=new Address(province,city,county);
}
String telephone=areaNumber+"-"+phoneNumber+"-"+subPhoneNumber;
String fax=subFaxNumber+"-"+faxNumber;
if(type.equals("p")){
User pUser=new PersonalUser(userName,password,contact,location,postNo,mobilephone
,email,telephone,fax,personId);
pUser.setAddress(address);
userService.addUser(pUser);
User nowUser=userService.findByName(userName);
request.getSession().setAttribute("user", nowUser);
return mapping.findForward("toModify");
}else{
User cUser=new CompanyUser(userName,password,contact,location,postNo,mobilephone
,email,telephone,fax,companyName,homePage,companyType,instruction);
cUser.setAddress(address);
userService.addUser(cUser);
request.setAttribute("userName", userName);
User nowUser=userService.findByName(userName);
request.getSession().setAttribute("user", nowUser);
return mapping.findForward("toModify");
}
}else{
ActionMessages messages=new ActionMessages();
messages.add("errors",new ActionMessage("error.repeatSubmit"));
saveMessages(request, messages);
if(type.equals("p")){
return mapping.findForward("registerP");
}
return mapping.findForward("registerC");
}
}
//用户修改
public ActionForward modify(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
boolean tokenvalidate=validateToken(request);
//会员类型
String type=request.getParameter("type");
if(tokenvalidate){
String userName=request.getParameter("userName");
String password=request.getParameter("password");
String contact=request.getParameter("contact");
String province=request.getParameter("province");
String city=request.getParameter("city");
String county=request.getParameter("county");
String location=request.getParameter("location");
String postNo=request.getParameter("postNo");
String mobilephone=request.getParameter("mobilephone");
String telephone=request.getParameter("telephone");
String fax=request.getParameter("fax");
String email=request.getParameter("email");
//个人会员
String personId=request.getParameter("personId");
//企业会员
String companyName=request.getParameter("companyName"); //公司名称
String homePage=request.getParameter("homePage"); //公司主页
String companyType=request.getParameter("companyType"); //公司类型
String instruction=request.getParameter("instruction"); //公司简介
Address address=null;
if(province==null || "".equals(province.trim()) || city==null ||
"".equals(city.trim()) || "".equals(county.trim()) || county==null){
address=new Address("四川","成都","郫县");
}else{
System.out.println("province="+province+",city="+city+",county="+county);
address=new Address(province,city,county);
}
if(type.equals("p")){
User pUser2=userService.findByName(((PersonalUser)request.getSession().getAttribute("user")).getUserName());
User pUser=new PersonalUser(userName,password,contact,location,postNo,mobilephone
,email,telephone,fax,personId);
pUser.setId(pUser2.getId());
address.setId(pUser2.getAddress().getId());
pUser.setAddress(address);
userService.updateUser(pUser);
request.getSession().setAttribute("user", pUser);
}else{
User cUser2=userService.findByName(((CompanyUser)request.getSession().getAttribute("user")).getUserName());
User cUser=new CompanyUser(userName,password,contact,location,postNo,mobilephone
,email,telephone,fax,companyName,homePage,companyType,instruction);
cUser.setId(cUser2.getId());
address.setId(cUser2.getAddress().getId());
cUser.setAddress(address);
userService.updateUser(cUser);
request.getSession().setAttribute("user", cUser);
}
return mapping.findForward("success");
}else{
ActionMessages messages=new ActionMessages();
messages.add("errors",new ActionMessage("error.repeatSubmit"));
saveMessages(request, messages);
if(type.equals("p")){
return mapping.findForward("modifyP");
}
return mapping.findForward("modifyC");
}
}
//用户登录
public ActionForward login(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
boolean isLegal;
String userName=request.getParameter("userName");
String password=request.getParameter("password");
System.out.println("userName="+userName+",password="+password);
isLegal=userService.check(userName, password);
if(isLegal){
System.out.println("legal=======");
User nowUser=userService.findByName(userName);
request.getSession().setAttribute("user", nowUser);
return mapping.findForward("success");
}else{
System.out.println("illegal=======");
ActionMessages messages=new ActionMessages();
ActionMessage message=new ActionMessage("user.invalid");
messages.add("errors",message);
saveMessages(request, messages);
return mapping.findForward("login");
}
}
//管理员登录
public ActionForward adminLogin(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
boolean isLegal=false;
String userName=request.getParameter("userName");
String password=request.getParameter("password");
isLegal=userService.checkAdmin(userName, password);
if(isLegal){
User nowUser=userService.findByName(userName);
request.getSession().setAttribute("user", nowUser);
return mapping.findForward("adminMain");
}else{
ActionMessages messages=new ActionMessages();
messages.add("errors",new ActionMessage("admin.invalid"));
saveMessages(request, messages);
return mapping.findForward("adminLogin");
}
}
//显示会员信息
public ActionForward listUsers(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
//GoodsForm gf=(GoodsForm)form;
Limit limit = ExtremeTablePage.getLimit(request);
int totalRows = ExtremeTablePage.getTotalRowsFromRequest(request);
Page page=userService.findUsersInfoByAll(limit, totalRows);
request.setAttribute(TableConstants.TOTAL_ROWS, (int)page.getTotalCount());
request.setAttribute("usersInfo", page.getResult());
return mapping.findForward("usersList");
}
//审核会员
public ActionForward verifyUser(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
Long id=Long.parseLong(request.getParameter("id"));
userService.verifyUser(id);
return mapping.findForward("toUsersList");
}
//更改会员用户组
public ActionForward changeGroup(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
Long id=Long.parseLong(request.getParameter("id"));
userService.changeGroup(id);
return mapping.findForward("toUsersList");
}
//删除会员
public ActionForward deleteUser(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
Long id=Long.parseLong(request.getParameter("id"));
userService.deleteUser(id);
return mapping.findForward("toUsersList");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -