From ba3472d4a1c5fff5a57ecb8810d9faece9cd1e2c Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Mon, 11 Nov 2024 16:12:34 +0800
Subject: [PATCH] 新增密码修改接口

---
 src/main/java/org/springblade/modules/system/controller/UserWxController.java    |   14 ++++++++++++++
 src/main/java/org/springblade/modules/system/service/IUserWxService.java         |   10 ++++++++++
 src/main/resources/application-prod.yml                                          |    3 +++
 src/main/java/org/springblade/modules/system/service/impl/UserWxServiceImpl.java |   20 ++++++++++++++++++++
 4 files changed, 47 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/system/controller/UserWxController.java b/src/main/java/org/springblade/modules/system/controller/UserWxController.java
index 7b96939..4002b53 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserWxController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserWxController.java
@@ -156,6 +156,20 @@
 	}
 
 	/**
+	 * 修改密码
+	 */
+	@PostMapping("/update-password")
+	@ApiOperationSupport(order = 9)
+	@ApiOperation(value = "修改密码", notes = "传入密码")
+	public R updatePassword(@ApiParam(value = "旧密码", required = true) @RequestParam String oldPassword,
+							@ApiParam(value = "新密码", required = true) @RequestParam String newPassword,
+							@ApiParam(value = "新密码", required = true) @RequestParam String newPassword1) {
+		boolean temp = userWxService.updatePassword(AuthUtil.getUserId(), oldPassword, newPassword, newPassword1);
+		return R.status(temp);
+	}
+
+
+	/**
 	 * 删除
 	 */
 	@PostMapping("/remove")
diff --git a/src/main/java/org/springblade/modules/system/service/IUserWxService.java b/src/main/java/org/springblade/modules/system/service/IUserWxService.java
index d541825..1251111 100644
--- a/src/main/java/org/springblade/modules/system/service/IUserWxService.java
+++ b/src/main/java/org/springblade/modules/system/service/IUserWxService.java
@@ -50,4 +50,14 @@
 	boolean removeUser(String userIds);
 
     List<UserWxExcel> exportUser(Map<String, Object> user);
+
+	/**
+	 * 修改密码
+	 * @param userId
+	 * @param newPassword
+	 * @param oldPassword
+	 * @param newPassword1
+	 * @return
+	 */
+	boolean updatePassword(Long userId, String oldPassword, String newPassword, String newPassword1);
 }
diff --git a/src/main/java/org/springblade/modules/system/service/impl/UserWxServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/UserWxServiceImpl.java
index 2f66aae..f3bb3cc 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/UserWxServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/UserWxServiceImpl.java
@@ -140,4 +140,24 @@
 		List<UserWxExcel> userList = baseMapper.exportUser(param);
 		return userList;
 	}
+
+	/**
+	 * 修改密码
+	 * @param userId
+	 * @param newPassword
+	 * @param oldPassword
+	 * @param newPassword1
+	 * @return
+	 */
+	@Override
+	public boolean updatePassword(Long userId, String oldPassword, String newPassword, String newPassword1) {
+		UserWx user = getById(userId);
+		if (!newPassword.equals(newPassword1)) {
+			throw new ServiceException("请输入正确的确认密码!");
+		}
+		if (!user.getPassword().equals(DigestUtil.hex(oldPassword))) {
+			throw new ServiceException("原密码不正确!");
+		}
+		return this.update(Wrappers.<UserWx>update().lambda().set(UserWx::getPassword, DigestUtil.hex(newPassword)).eq(UserWx::getId, userId));
+	}
 }
diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml
index 14e27fb..d5d5f9c 100644
--- a/src/main/resources/application-prod.yml
+++ b/src/main/resources/application-prod.yml
@@ -21,6 +21,9 @@
   #    port: 5672
   #    username: admin
   #    password: admin
+  servlet:
+    multipart:
+      location: /tmp/undertow
 
   datasource:
     # MySql

--
Gitblit v1.9.3