个人中心代码优化

This commit is contained in:
thinkgem
2025-02-26 14:21:31 +08:00
parent ee6715de0a
commit 14d772cf6d
2 changed files with 62 additions and 38 deletions

View File

@@ -4,18 +4,6 @@
*/
package com.jeesite.modules.sys.web.user;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.alibaba.fastjson.JSONValidator;
import com.jeesite.common.codec.DesUtils;
import com.jeesite.common.codec.EncodeUtils;
@@ -28,9 +16,20 @@ import com.jeesite.modules.sys.entity.User;
import com.jeesite.modules.sys.service.UserService;
import com.jeesite.modules.sys.utils.PwdUtils;
import com.jeesite.modules.sys.utils.UserUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* 用户Controller
* @author ThinkGem
@@ -78,12 +77,18 @@ public class UserController extends BaseController {
*/
@RequiresPermissions("user")
@RequestMapping(value = "info")
public String info(User user, String op, Model model) {
public String info(String op, Model model) {
if (StringUtils.isBlank(op)){
op = "base";
}
User u = UserUtils.getUser();
model.addAttribute("op", op);
model.addAttribute("user", UserUtils.getUser());
model.addAttribute("user", u);
if (StringUtils.equals(op, "pqa")){
model.addAttribute("pwdQuestion", u.getPwdQuestion());
model.addAttribute("pwdQuestion2", u.getPwdQuestion2());
model.addAttribute("pwdQuestion3", u.getPwdQuestion3());
}
return "modules/sys/user/userInfo";
}
@@ -93,7 +98,7 @@ public class UserController extends BaseController {
@RequiresPermissions("user")
@PostMapping(value = "infoSaveBase")
@ResponseBody
public String infoSaveBase(User user, HttpServletRequest request) {
public String infoSaveBase(User user) {
if (StringUtils.isBlank(user.getUserName())){
return renderResult(Global.FALSE, text("sys.user.userNameNotBlank"));
}
@@ -116,8 +121,7 @@ public class UserController extends BaseController {
@RequiresPermissions("user")
@PostMapping(value = "infoSavePwd")
@ResponseBody
public String infoSavePwd(User user, String oldPassword, String newPassword,
String confirmNewPassword) {
public String infoSavePwd(String oldPassword, String newPassword, String confirmNewPassword) {
User currentUser = UserUtils.getUser();
// 登录密码解密(解决密码明文传输安全问题)
String secretKey = Global.getProperty("shiro.loginSubmit.secretKey");

View File

@@ -157,8 +157,8 @@
</div>
</div>
<div class="box-footer">
<div class="row">
<div class="col-sm-offset-3 col-sm-10">
<div class="row mr20 pr20">
<div class="text-center mr20 pr20">
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-check"></i> ${text('保 存')}</button>&nbsp;
<button type="button" class="btn btn-sm btn-default" onclick="js.closeCurrentTabPage()"><i class="fa fa-reply-all"></i> ${text('关 闭')}</button>
</div>
@@ -177,8 +177,8 @@
<div class="row">
<div class="col-xs-12">
<div class="form-group">
<label class="control-label col-sm-3">${text('登录密码')}</label>
<div class="col-sm-8">
<label class="control-label col-sm-2">${text('登录密码')}</label>
<div class="col-sm-10">
<input id="validPassword" name="validPassword" type="password" autocomplete="new-password" value="" maxlength="50" minlength="3" class="form-control required"/>
</div>
</div>
@@ -187,39 +187,49 @@
<% }else{ %>
<div class="form-unit">${text('旧的密保问题及答案')}</div>
<div class="row">
<div class="col-xs-12">
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('旧密保问题')}1</label>
<label class="control-label col-sm-4">${text('旧密保问题')}1</label>
<div class="col-sm-8">
<input id="oldPwdQuestion" name="oldPwdQuestion" type="text" value="${user.pwdQuestion}" maxlength="50" minlength="3" readonly="readonly" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('旧密保问题答案')}1</label>
<label class="control-label col-sm-4">${text('旧密保问题答案')}1</label>
<div class="col-sm-8">
<input id="oldPwdQuestionAnswer" name="oldPwdQuestionAnswer" type="text" value="" maxlength="50" minlength="1" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('旧密保问题')}2</label>
<label class="control-label col-sm-4">${text('旧密保问题')}2</label>
<div class="col-sm-8">
<input id="oldPwdQuestion2" name="oldPwdQuestion2" type="text" value="${user.pwdQuestion2}" maxlength="50" minlength="3" readonly="readonly" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('旧密保问题答案')}2</label>
<label class="control-label col-sm-4">${text('旧密保问题答案')}2</label>
<div class="col-sm-8">
<input id="oldPwdQuestionAnswer2" name="oldPwdQuestionAnswer2" type="text" value="" maxlength="50" minlength="1" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('旧密保问题')}3</label>
<label class="control-label col-sm-4">${text('旧密保问题')}3</label>
<div class="col-sm-8">
<input id="oldPwdQuestion3" name="oldPwdQuestion3" type="text" value="${user.pwdQuestion3}" maxlength="50" minlength="3" readonly="readonly" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('旧密保问题答案')}3</label>
<label class="control-label col-sm-4">${text('旧密保问题答案')}3</label>
<div class="col-sm-8">
<input id="oldPwdQuestionAnswer3" name="oldPwdQuestionAnswer3" type="text" value="" maxlength="50" minlength="1" class="form-control required"/>
</div>
@@ -229,39 +239,49 @@
<% } %>
<div class="form-unit">${text('新的密保问题及答案')}</div>
<div class="row">
<div class="col-xs-12">
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('新密保问题')}1</label>
<label class="control-label col-sm-4">${text('新密保问题')}1</label>
<div class="col-sm-8">
<input id="pwdQuestion" name="pwdQuestion" type="text" value="${user.pwdQuestion}" maxlength="50" minlength="3" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('新密保问题答案')}1</label>
<label class="control-label col-sm-4">${text('新密保问题答案')}1</label>
<div class="col-sm-8">
<input id="pwdQuestionAnswer" name="pwdQuestionAnswer" type="text" value="" maxlength="50" minlength="1" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('新密保问题')}2</label>
<label class="control-label col-sm-4">${text('新密保问题')}2</label>
<div class="col-sm-8">
<input id="pwdQuestion2" name="pwdQuestion2" type="text" value="${user.pwdQuestion2}" maxlength="50" minlength="3" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('新密保问题答案')}2</label>
<label class="control-label col-sm-4">${text('新密保问题答案')}2</label>
<div class="col-sm-8">
<input id="pwdQuestionAnswer2" name="pwdQuestionAnswer2" type="text" value="" maxlength="50" minlength="1" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('新密保问题')}3</label>
<label class="control-label col-sm-4">${text('新密保问题')}3</label>
<div class="col-sm-8">
<input id="pwdQuestion3" name="pwdQuestion3" type="text" value="${user.pwdQuestion3}" maxlength="50" minlength="3" class="form-control required"/>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label class="control-label col-sm-3">${text('新密保问题答案')}3</label>
<label class="control-label col-sm-4">${text('新密保问题答案')}3</label>
<div class="col-sm-8">
<input id="pwdQuestionAnswer3" name="pwdQuestionAnswer3" type="text" value="" maxlength="50" minlength="1" class="form-control required"/>
</div>
@@ -270,8 +290,8 @@
</div>
</div>
<div class="box-footer">
<div class="row">
<div class="col-sm-offset-3 col-sm-10">
<div class="row mr20 pr20">
<div class="text-center mr20 pr20">
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-check"></i> ${text('保 存')}</button>&nbsp;
<button type="button" class="btn btn-sm btn-default" onclick="js.closeCurrentTabPage()"><i class="fa fa-reply-all"></i> ${text('关 闭')}</button>
</div>