diff --git a/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysSupplierUserController.java b/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysSupplierUserController.java index 1520d52..5a8a91d 100644 --- a/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysSupplierUserController.java +++ b/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysSupplierUserController.java @@ -112,4 +112,24 @@ public class SysSupplierUserController { public BaseResponse checkUsername(@ApiParam(value = "用户名", required = true) @RequestParam String username) { return BaseResponse.success(sysSupplierUserService.checkUsernameUnique(username)); } + + /** + * 重置供应商用户密码 + * @param username 用户名 + * @return 重置结果 + */ + @ApiOperation("重置供应商用户密码") + @PostMapping("/resetPassword") + public BaseResponse resetPassword(@ApiParam(value = "用户名", required = true) @RequestParam String username) { + try { + Boolean result = sysSupplierUserService.resetPassword(username); + if (result) { + log.info("密码重置成功,用户:{}", username); + } + return BaseResponse.success(result); + } catch (Exception e) { + log.error("密码重置异常,用户:{}", username, e); + return BaseResponse.success(false); + } + } } \ No newline at end of file diff --git a/src/main/java/com/coscoshipping/ebtp/system/user/service/SysSupplierUserService.java b/src/main/java/com/coscoshipping/ebtp/system/user/service/SysSupplierUserService.java index 9877744..e14877d 100644 --- a/src/main/java/com/coscoshipping/ebtp/system/user/service/SysSupplierUserService.java +++ b/src/main/java/com/coscoshipping/ebtp/system/user/service/SysSupplierUserService.java @@ -61,4 +61,11 @@ public interface SysSupplierUserService extends IBaseService { * @return 是否唯一 */ Boolean checkUsernameUnique(String username); + + /** + * 重置供应商用户密码为统一重置密码,并设置首次登录标识 + * @param username 用户名 + * @return 是否重置成功 + */ + Boolean resetPassword(String username); } diff --git a/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysSupplierUserServiceImpl.java b/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysSupplierUserServiceImpl.java index 6c4457a..5a84323 100644 --- a/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysSupplierUserServiceImpl.java +++ b/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysSupplierUserServiceImpl.java @@ -162,4 +162,22 @@ public class SysSupplierUserServiceImpl extends BaseServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(SysSupplierUser::getUsername, username); + SysSupplierUser user = baseMapper.selectOne(queryWrapper); + if (user == null) { + return false; + } + + // 使用配置中的重置密码 + String tempPassword = resetPassword; + user.setPassword(Md5Util.encode(tempPassword)); + user.setFirstLogin(1); // 设置首次登录标识 + user.setUpdateDate(LocalDateTime.now()); + + return baseMapper.updateById(user) > 0; + } }