From 922f0882c659de97731f9d00519f03d8cb07c604 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期四, 07 十二月 2023 21:06:45 +0800 Subject: [PATCH] 实现重置用户密码功能 --- pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java | 109 +++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 91 insertions(+), 18 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java index 3bfc625..2c75af8 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java @@ -10,6 +10,7 @@ import com.dy.common.webUtil.QueryResultVo; import com.dy.common.webUtil.ResultCodeMsg; import com.dy.pipIrrGlobal.pojoBa.BaUser; +import com.dy.pipIrrGlobal.util.Constant; import com.mysql.cj.util.StringUtils; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; @@ -38,12 +39,39 @@ private UserSv sv; + @Value("${user.defaultTrueRandomFalsePassword:true}") + private Boolean defaultTrueRandomFalsePassword; + @Value("${user.defaultPassword:ABC123}") private String defaultPassword; @Autowired private void setSv(UserSv sv) { this.sv = sv; + } + + + /** + * 瀹㈡埛绔姹傚緱鍒伴粯璁ゅ瘑鐮� + * @return 榛樿瀵嗙爜 + */ + @Operation(summary = "鑾峰緱榛樿瀵嗙爜", description = "鑾峰緱榛樿瀵嗙爜") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "杩斿洖榛樿瀵嗙爜锛圔aseResponse.content:password锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = String.class))} + ) + }) + @GetMapping(path = "defaultPassword", consumes = MediaType.TEXT_PLAIN_VALUE) + public BaseResponse<String> defaultPassword(){ + if(defaultTrueRandomFalsePassword){ + return BaseResponseUtils.buildSuccess(defaultPassword) ; + }else{ + String password = this.sv.getStringRandom(6) ; + return BaseResponseUtils.buildSuccess(password) ; + } } /** @@ -115,8 +143,8 @@ } po.id = null; int count; - int count1; try { + po.supperAdmin = Constant.no.byteValue() ; po.disabled = Disabled.NO;//榛樿涓嶇鐢� po.deleted = Deleted.NO;//榛樿涓嶅垹闄� po.orgTag = DataSourceContext.get();//鏈烘瀯鏍囩 @@ -130,12 +158,12 @@ po.password = MD5.encrypt(defaultPassword); } count = this.sv.save(po); - count1 = this.sv.setRoles(String.valueOf(po.id), po.roleIds); + this.sv.setRoles(po.id, po.roleIds); } catch (Exception e) { log.error("淇濆瓨鐢ㄦ埛寮傚父", e); return BaseResponseUtils.buildException(e.getMessage()); } - if (count <= 0 || count1 <= 0) { + if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); } else { return BaseResponseUtils.buildSuccess(true); @@ -168,9 +196,11 @@ } int count; try { + po.supperAdmin = null;//璁剧疆涓簄ull锛屼笉鍋氭洿鏂� po.deleted = null;//璁剧疆涓簄ull锛屼笉鍋氭洿鏂� po.orgTag = null;//璁剧疆涓簄ull锛屼笉鍋氭洿鏂� count = this.sv.update(po); + this.sv.setRoles(po.id, po.roleIds); } catch (Exception e) { log.error("淇濆瓨鐢ㄦ埛寮傚父", e); return BaseResponseUtils.buildException(e.getMessage()); @@ -245,12 +275,11 @@ } /** - * 閲嶇疆瀵嗙爜涓洪粯璁ゅ�� - * - * @param id 鐢ㄦ埛ID + * 閲嶇疆瀵嗙爜 + * @param vo form琛ㄥ崟瀵硅薄 * @return 鏄惁鎴愬姛 */ - @Operation(summary = "閲嶇疆瀵嗙爜", description = "鎻愪氦鐢ㄦ埛ID") + @Operation(summary = "閲嶇疆瀵嗙爜", description = "鎻愪氦鏁版嵁锛坒orm琛ㄥ崟json鏁版嵁锛夛紝杩涜瀵嗙爜閲嶇疆") @ApiResponses(value = { @ApiResponse( responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, @@ -259,9 +288,51 @@ schema = @Schema(implementation = Boolean.class))} ) }) - @GetMapping(path = "resetPassword", consumes = MediaType.TEXT_PLAIN_VALUE) + @PostMapping(path = "resetPassword", consumes = MediaType.APPLICATION_JSON_VALUE) @SsoAop("-1")//@SsoAop(power = "-1") - public BaseResponse<Boolean> resetPassword(@Parameter(description = "瀹炰綋id", required = true) String id) throws Exception { + public BaseResponse<Boolean> resetPassword(@RequestBody @Parameter(description = "form琛ㄥ崟json鏁版嵁", required = true) ResetPasswordVo vo) throws Exception { + if (vo.id == null) { + return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖"); + } + String password = MD5.encrypt(vo.password);//杩涜鍔犲瘑鐮� + Long idLg = Long.parseLong(vo.id); + int count; + try { + BaUser po = this.sv.selectById(idLg); + if (Objects.isNull(po)) { + return BaseResponseUtils.buildFail("鏈緱鍒扮敤鎴凤紝璇锋眰澶辫触"); + } else { + count = this.sv.changePassword(idLg, password); + } + } catch (Exception e) { + log.error("淇濆瓨鐢ㄦ埛寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + if (count <= 0) { + return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); + } else { + return BaseResponseUtils.buildSuccess(true); + } + } + + /* + * 閲嶇疆瀵嗙爜涓洪粯璁ゅ�� + * + * @param id 鐢ㄦ埛ID + * @return 鏄惁鎴愬姛 + + @Operation(summary = "閲嶇疆瀵嗙爜涓洪粯璁ゅ瘑鐮�", description = "鎻愪氦鐢ㄦ埛ID") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = Boolean.class))} + ) + }) + @GetMapping(path = "resetPasswordByDefault", consumes = MediaType.TEXT_PLAIN_VALUE) + @SsoAop("-1")//@SsoAop(power = "-1") + public BaseResponse<Boolean> resetPasswordByDefault(@Parameter(description = "瀹炰綋id", required = true) String id) throws Exception { if (id == null) { return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖"); } @@ -285,14 +356,15 @@ return BaseResponseUtils.buildSuccess(true); } } + */ - /** + /* * 閲嶇疆瀵嗙爜涓洪殢鏈烘暟瀛楀姞瀛楁瘝 * * @param id 鐢ㄦ埛ID * @return 鏄惁鎴愬姛 - */ - @Operation(summary = "閲嶇疆瀵嗙爜", description = "鎻愪氦鐢ㄦ埛ID") + + @Operation(summary = "閲嶇疆瀵嗙爜涓洪殢鏈烘暟瀛楀姞瀛楁瘝", description = "鎻愪氦鐢ㄦ埛ID") @ApiResponses(value = { @ApiResponse( responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, @@ -301,9 +373,9 @@ schema = @Schema(implementation = Boolean.class))} ) }) - @GetMapping(path = "resetPassword1", consumes = MediaType.TEXT_PLAIN_VALUE) + @GetMapping(path = "resetPasswordByRandom", consumes = MediaType.TEXT_PLAIN_VALUE) @SsoAop("-1")//@SsoAop(power = "-1") - public BaseResponse<String> resetPassword1(@Parameter(description = "瀹炰綋id", required = true) String id) throws Exception { + public BaseResponse<String> resetPasswordByRandom(@Parameter(description = "瀹炰綋id", required = true) String id) throws Exception { if (id == null) { return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖"); } @@ -328,14 +400,15 @@ return BaseResponseUtils.buildSuccess(randomPassword); } } + */ - - /** + /* + * 2023-12-05 鍦� save鍜寀pdate鏂规硶涓繘琛屼簡瑙掕壊璁剧疆鍏宠仈锛屾湰鏂规硶搴熷純 * 璁剧疆鐢ㄦ埛瑙掕壊 * * @param id 鐢ㄦ埛ID * @return 鏄惁鎴愬姛 - */ + @Operation(summary = "璁剧疆鐢ㄦ埛瑙掕壊", description = "鎻愪氦鐢ㄦ埛ID锛屽強鎵�閫夋嫨鐨勮鑹睮D闆嗗悎锛堟暟缁勶級") @ApiResponses(value = { @ApiResponse( @@ -365,7 +438,7 @@ } return BaseResponseUtils.buildSuccess(true); } - + */ /** * 鍒犻櫎鐢ㄦ埛 -- Gitblit v1.8.0