package com.jshoperx.action.frontstage.membercenter; import com.jshoperx.action.backstage.base.DataCollectionTAction; import com.jshoperx.action.backstage.staticspage.FreeMarkervariable; import com.jshoperx.action.backstage.utils.BaseTools; import com.jshoperx.action.backstage.utils.enums.BaseEnums; import com.jshoperx.action.backstage.utils.statickey.StaticKey; import com.jshoperx.entity.MemberT; import com.jshoperx.service.MemberTService; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import org.apache.commons.lang3.StringUtils; import org.apache.struts2.convention.annotation.*; import javax.annotation.Resource; @ParentPackage("jshoperx") @Namespace("") @InterceptorRefs({ @InterceptorRef("defaultStack") }) public class UserCenterMyAccount extends ActionSupport { @Resource private MemberTService memberTService; @Resource private DataCollectionTAction dataCollectionTAction; private String userid; private String username; private String question; private String answer; private String password; private String oldanswer;//原始答案 private boolean sucflag; public String getUserid() { return userid; } public void setUserid(String userid) { this.userid = userid; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getQuestion() { return question; } public void setQuestion(String question) { this.question = question; } public String getAnswer() { return answer; } public void setAnswer(String answer) { this.answer = answer; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public boolean isSucflag() { return sucflag; } public void setSucflag(boolean sucflag) { this.sucflag = sucflag; } public String getOldanswer() { return oldanswer; } public void setOldanswer(String oldanswer) { this.oldanswer = oldanswer; } /** * 清理错误 */ @Override public void validate() { this.clearErrorsAndMessages(); } /** * 设置密码保护 * @return */ @Action(value = "updateUserPasswordProtection", results = { @Result(name = "json",type="json") }) public String updateUserPasswordProtection() { MemberT memberT=(MemberT) ActionContext.getContext().getSession().get(StaticKey.MEMBER_SESSION_KEY); if(memberT!=null){ //先验证原始的密码保护问题是否正确 if(StringUtils.isNotBlank(memberT.getQuestion())){ //验证输入的原始答案 if(memberT.getAnswer().equals(this.getOldanswer().trim())){ if (StringUtils.isNotBlank(this.getQuestion())&&StringUtils.isNotBlank(this.getAnswer())) { memberT.setQuestion(this.getQuestion()); memberT.setAnswer(this.getAnswer()); this.memberTService.update(memberT); this.setSucflag(true); return "json"; } this.setSucflag(false); return "json"; } }else{ if (StringUtils.isNotBlank(this.getQuestion())&&StringUtils.isNotBlank(this.getAnswer())) { memberT.setQuestion(this.getQuestion()); memberT.setAnswer(this.getAnswer()); this.memberTService.update(memberT); this.setSucflag(true); return "json"; } this.setSucflag(false); return "json"; } } this.setSucflag(false); return "json"; } /** * 初始化用户密码保护页面 * @return */ @Action(value = "initMyAccountProtection", results = { @Result(name = "success",type="freemarker",location = "/WEB-INF/theme/default/shop/passwordprotection.ftl"), @Result(name = "input",type="redirect",location = "/html/default/shop/user/login.html") }) public String InitMyAccountProtection(){ MemberT memberT=(MemberT)ActionContext.getContext().getSession().get(StaticKey.MEMBER_SESSION_KEY); if(memberT!=null){ //路径获取 ActionContext.getContext().put(FreeMarkervariable.BASEPATH, BaseTools.getBasePath()); //获取导航数据 ActionContext.getContext().put(FreeMarkervariable.SITENAVIGATIONLIST,dataCollectionTAction.findSiteNavigation(BaseEnums.DataShowState.SHOW.getState())); //获取商城基本数据 ActionContext.getContext().put(FreeMarkervariable.JSHOPBASICINFO, dataCollectionTAction.findJshopbasicInfo(BaseEnums.DataShowState.SHOW.getState(), BaseEnums.JshopOpenState.OPEN.getOpenstate())); //获取页脚分类数据 ActionContext.getContext().put(FreeMarkervariable.FOOTCATEGORY, dataCollectionTAction.findFooterCateogyrT(BaseEnums.CategoryGrade.FIRST.getState(), BaseEnums.DataUsingState.USING.getState())); //获取页脚文章数据 ActionContext.getContext().put(FreeMarkervariable.FOOTERATRICLE, dataCollectionTAction.findFooterArticle(BaseEnums.DataShowState.SHOW.getState())); return SUCCESS; } return INPUT; } }