📄 useraction.java
字号:
package com.publish.shop.security.javabeans;import com.publish.shop.util.javabeans.*;import java.util.*;import java.util.Iterator;import javax.servlet.http.*;import org.apache.struts.action.*;import com.publish.shop.taglib.MenuManager;import org.apache.struts.util.LabelValueBean;import com.publish.shop.product.javabeans.CategoryProxy;public class UserAction extends BaseAction { UserProxy proxy = new UserProxy(); public ActionForward executeAction( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { ActionForward myforward = null; String myaction = mapping.getParameter(); Debug.println("UserAction action: " + myaction); if ("login".equalsIgnoreCase(myaction)){ myforward = performLogin(mapping, form, request, response); } else if ("logout".equalsIgnoreCase(myaction)){ myforward = performLogout(mapping, form, request, response); }else if ("search".equalsIgnoreCase(myaction)) { myforward = performSearch(mapping, form, request, response); }else if ("add".equalsIgnoreCase(myaction)) { myforward = performAdd(mapping, form, request, response); }else if ("delete".equalsIgnoreCase(myaction)) { myforward = performDelete(mapping, form, request, response); }else if ("modify".equalsIgnoreCase(myaction)) { myforward = performModify(mapping, form, request, response); }else if ("pwd".equalsIgnoreCase(myaction)) { myforward = performPwd(mapping, form, request, response); }else if ("welcome".equalsIgnoreCase(myaction)) { setMenuSession(request,"shop_index","",""); myforward = mapping.findForward("success"); } return myforward; } private ActionForward performLogin(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response) { ActionForward forward = null; UserForm form = (UserForm)actionForm; MenuManager lMenuManager = new MenuManager(); HttpSession session = request.getSession(true); session.invalidate(); session = request.getSession(); try { UserModel model = proxy.queryUserByLoginName(form.getLoginName()); if (model == null) { throw new ShopException(Utility.getMessage("Shop.Login.UserNotExists")); } if (!model.getUserStatus().trim().equalsIgnoreCase("Y")) { throw new ShopException(Utility.getMessage("Shop.Login.UserNotExists")); } if (!model.getUserPwd().trim().equalsIgnoreCase(form.getUserPwd())) { throw new ShopException(Utility.getMessage("Shop.Login.UserNotExists")); } SessionWrapper lSessionWrapper = new SessionWrapper(); lSessionWrapper.setUserId(model.getUserId()); lSessionWrapper.setUserName(model.getUserName()); lSessionWrapper.setLoginName(model.getLoginName()); lSessionWrapper.setUserTypeId(model.getUserTypeId()); lSessionWrapper.setUserPwd(model.getUserPwd()); session.setAttribute(Constants.Session_Wrapper, lSessionWrapper);// GroupProxy lpProxy = new GroupProxy();// ArrayList listMenu = lMenuManager.initMenu(lpProxy.queryMenuByUserType(model.getUserTypeId())); ArrayList listMenu = lMenuManager.initMenu(proxy.queryMenuByUserType(model.getUserTypeId())); session.setAttribute(Constants.Menu_Config_Session,listMenu); CategoryProxy cpProxy = new CategoryProxy(); ArrayList listProductCat = cpProxy.getCatLabelAddAll(); session.setAttribute("ProductCatList", listProductCat); session.setAttribute("IfLogin", "yes"); session.setAttribute("userName", model.getUserName()); setMenuSession(request,"shop_index","",""); forward = mapping.findForward("success"); } catch(Exception e) { } return forward; } private ActionForward performLogout(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response) { ActionForward forward = null; HttpSession session = request.getSession(); session.invalidate(); forward = mapping.findForward("success"); return forward; } private ActionForward performSearch(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response) { ActionForward forward = null; UserForm form = (UserForm)actionForm; try { CommonCode lCommonCode = new CommonCode(); request.setAttribute("UserTypeList", lCommonCode.getCommonCodeLabelAddAll("UserType")); if (form.getStrutsAction()==1) { form.clear(); forward = mapping.findForward("success"); } else { Pager pager = form.getPager(); ArrayList lListUser = proxy.queryUser(form.getModel(),pager); if (lListUser==null || lListUser.size()==0){ request.setAttribute(Constants.Error_Name, Utility.getMessage("label.NoData")); }else { request.setAttribute("UserList", lListUser); request.setAttribute(Constants.Pager_Session, pager); } } } catch(Exception e) { request.setAttribute(Constants.Error_Name,Utility.getMessage("Shop.User.Error.SearchUserError")); } setMenuSession(request,"admin_user","admin_user_search",""); forward = mapping.findForward("success"); return forward; } private ActionForward performDelete(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response) { ActionForward forward = null; UserForm form = (UserForm)actionForm; try{ CommonCode lCommonCode = new CommonCode(); ArrayList lListUserType = lCommonCode.getCommonCodeLabelAddAll("UserType"); request.setAttribute("UserTypeList",lListUserType); //delete selected user proxy.deleteUser(form.getDeleteUserId()); Pager pager = form.getPager(); ArrayList lListUser = proxy.queryUser(form.getModel(),pager); if(lListUser==null|| lListUser.size()==0){ request.setAttribute(Constants.Error_Name,Utility.getMessage("label.NoData")); }else{ request.setAttribute("UserList",lListUser); request.setAttribute(Constants.Pager_Session,pager); } }catch(Exception e){ request.setAttribute(Constants.Error_Name,e.getMessage()); } setMenuSession(request,"admin_user","admin_user_search",""); forward = mapping.findForward("success"); return forward; } private ActionForward performModify(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response){ ActionForward forward = null; UserForm form = (UserForm)actionForm; try{ CommonCode lCommonCode = new CommonCode(); ArrayList lListUserType = lCommonCode.getCommonCodeLabel("UserType"); request.setAttribute("UserTypeList",lListUserType); if(form.getStrutsAction()==0){ String userId = form.getUserId(); form.clear(); UserModel lModel = proxy.queryUser(userId); form.setUserId(lModel.getUserId()); form.setUserPwd(lModel.getUserPwd()); form.setLoginName(lModel.getLoginName()); form.setUserName(lModel.getUserName()); form.setUserTypeId(lModel.getUserTypeId()); form.setUserTypeName(lModel.getUserTypeName()); form.setUserAddress(lModel.getUserAddress()); form.setUserSex(lModel.getUserSex()); form.setUserPhone(lModel.getUserPhone()); form.setUserEmail(lModel.getUserEmail()); form.setUserZip(lModel.getUserZip()); form.setUserStatus(lModel.getUserStatus()); form.setUserLevel(lModel.getUserLevel()); } else{ String[] selected = StringToStringArray(form.getSelectedRole()); form.setSelectedRoles(selected); proxy.updateUser(form.getModel()); } }catch(ShopException e){ try{ request.setAttribute(Constants.Error_Name,e.getDescription()); }catch(Exception ee){ } }catch(Exception e){ e.printStackTrace(); try{ request.setAttribute(Constants.Error_Name,Utility.getMessage("Shop.User.Error.ModifyUserError")); }catch(Exception ee){ } } setMenuSession(request,"admin_user","admin_user_search",""); forward = mapping.findForward("success"); return forward; } private ActionForward performAdd(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response){ ActionForward forward = null; UserForm form = (UserForm)actionForm; try{ CommonCode lCommonCode = new CommonCode(); ArrayList lListUserType = lCommonCode.getCommonCodeLabel("UserType"); request.setAttribute("UserTypeList",lListUserType); if(form.getStrutsAction()==0){ form.clear(); } else{ //check loginName UserModel lModel01 = proxy.queryUserByLoginName(form.getLoginName()); if(lModel01!=null){ throw new ShopException(Utility.getMessage("Shop.User.Error.loginNameExists")); } proxy.insertUser(form.getModel()); form.clear(); } }catch(ShopException e){ try{ request.setAttribute(Constants.Error_Name,e.getDescription()); }catch(Exception ee){ } }catch(Exception e){ e.printStackTrace(); try{ request.setAttribute(Constants.Error_Name,Utility.getMessage("Shop.User.Error.AddUserError")); }catch(Exception ee){ } } setMenuSession(request,"admin_user","admin_user_add",""); forward = mapping.findForward("success"); return forward; } private ActionForward performPwd(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response){ ActionForward forward = null; UserForm form = (UserForm)actionForm; try{ HttpSession session = request.getSession(); SessionWrapper lSessionWrapper = (SessionWrapper)session.getAttribute(Constants.Session_Wrapper); if(form.getStrutsAction()==0){ form.clear(); form.setUserId(lSessionWrapper.getUserId()); form.setLoginName(lSessionWrapper.getLoginName()); form.setUserName(lSessionWrapper.getUserName()); forward = mapping.findForward("success"); } else{ if(!form.getUserPwd().equals(lSessionWrapper.getUserPwd().trim())) throw new ShopException(Utility.getMessage("Shop.Pwd.Error.OldNotRigth")); proxy.updatePassword(form.getUserId(),form.getNewPwd()); lSessionWrapper.setUserPwd(form.getNewPwd()); session.setAttribute(Constants.Session_Wrapper,lSessionWrapper); form.clear(); form.setUserId(lSessionWrapper.getUserId()); form.setLoginName(lSessionWrapper.getLoginName()); form.setUserName(lSessionWrapper.getUserName()); throw new ShopException(Utility.getMessage("Shop.Pwd.Errot.UpdateSuccess")); } }catch(Exception e){ request.setAttribute(Constants.Error_Name,e.getMessage()); } setMenuSession(request,"sec_password","sec_pwd_modify",""); forward = mapping.findForward("success"); return forward; } private void CalculateRoles(ArrayList oToSelectedRoles,ArrayList oSelectedRoles,String selectedRoles){ if(oToSelectedRoles!=null && oToSelectedRoles.size()>0){ LabelValueBean lModel = null; for(int i=0;i<oToSelectedRoles.size();i++){ lModel = (LabelValueBean)oToSelectedRoles.get(i); if(selectedRoles.indexOf(lModel.getValue())>=0){ oSelectedRoles.add(lModel); oToSelectedRoles.remove(i); i--; } } } } private String[] StringToStringArray(String str){ StringTokenizer ltok = new StringTokenizer(str,"|"); ArrayList cvprdtid = new ArrayList(); while(ltok.hasMoreTokens()){ String next = ltok.nextToken(); if(next!=null && !next.equals("")) cvprdtid.add(next); } String[] strA = new String[cvprdtid.size()]; for(int i=0;i<cvprdtid.size();i++){ strA[i]=(String)cvprdtid.get(i); } return strA; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -