package com.gaowj.system.back; import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.commons.lang3.StringUtils; import com.gaowj.business.SystemOpeBusiness; import com.gaowj.business.action.BasicAction; import com.gaowj.business.comp.BusinessManager; import com.gaowj.business.util.Encipher; public class modifyPassAction extends BasicAction { /** * */ private static final long serialVersionUID = 1L; private String oldpass; private String newpass; private String renew; private String gwjURL; @Override public String execute() throws Exception { @SuppressWarnings("unchecked") Map<String,Object> u = (Map<String, Object>) request.getSession().getAttribute("userInfo"); String ls_code=(String) u.get("CODE"); String newPass = getpass(newpass); SystemOpeBusiness systemOpeBusiness = BusinessManager.getBusiness(SystemOpeBusiness.class); Map<String,Object> entity = new HashMap<String,Object>(); entity.put("CODE",ls_code); entity.put("EMPASS",newPass); systemOpeBusiness.modifyPass(entity); gwjURL="system/pages/frame/modiPass.jsp"; this.clearMessages(); this.addActionMessage("密码修改成功!"); return SUCCESS; } public void validate(){ gwjURL="system/pages/frame/modiPass.jsp"; if(oldpass==null || oldpass.trim().length()==0){ addFieldError("oldpass","密码不能为空!"); }else if(!ckOldpass()){ addFieldError("oldpass","原密码错误!"); } if(newpass==null || newpass.trim().length()==0){ addFieldError("newpass","密码不能为空!"); } if(renew==null || renew.trim().length()==0){ addFieldError("renew","密码不能为空!"); }else if(!(renew.trim().equals(newpass))){ addFieldError("renew","新密码核对错误!"); } } public boolean ckOldpass(){ @SuppressWarnings("unchecked") Map<String,Object> u = (Map<String, Object>) request.getSession().getAttribute("userInfo"); String ls_code=(String) u.get("CODE"); boolean tf=false; SystemOpeBusiness systemOpeBusiness = BusinessManager.getBusiness(SystemOpeBusiness.class); Map<String,Object> query = new HashMap<String,Object>(); query.put("CODE",ls_code); //query.put("EMPASS",getpass(oldpass)); List<Map<String,Object>> oldUser = systemOpeBusiness.listLoginUserInfo(query); if(oldUser.size()>0){ if(oldUser.get(0).get("EMPASS")!=null){ String dataoldpass = Encipher.DecodePasswd((String)oldUser.get(0).get("EMPASS")); if(StringUtils.equals(dataoldpass, oldpass)){ tf=true; } } } return tf; } public String getpass(String nopass){ String mypass=""; try { mypass=Encipher.EncodePasswd(nopass); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return mypass; } public String getOldpass() { return oldpass; } public void setOldpass(String oldpass) { this.oldpass = oldpass; } public String getNewpass() { return newpass; } public void setNewpass(String newpass) { this.newpass = newpass; } public String getRenew() { return renew; } public void setRenew(String renew) { this.renew = renew; } public String getGwjURL() { return gwjURL; } public void setGwjURL(String gwjURL) { this.gwjURL = gwjURL; } }