From 05b4b18f4a5e14804297336d94f683bbf8486e40 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期四, 22 八月 2024 09:01:16 +0800
Subject: [PATCH] 优化用户分页查询接口

---
 pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java |  207 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 160 insertions(+), 47 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..dba3c5e 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
@@ -9,10 +9,12 @@
 import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.common.webUtil.QueryResultVo;
 import com.dy.common.webUtil.ResultCodeMsg;
+import com.dy.pipIrrBase.result.SystemResultCode;
 import com.dy.pipIrrGlobal.pojoBa.BaUser;
+import com.dy.pipIrrGlobal.util.Constant;
+import com.dy.pipIrrGlobal.voBa.VoUserInfo;
 import com.mysql.cj.util.StringUtils;
 import io.swagger.v3.oas.annotations.Operation;
-import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
@@ -38,12 +40,38 @@
 
     private UserSv sv;
 
-    @Value("${user.defaultPassword:ABC123}")
+    @Value("${user.defaultTrueRandomFalsePassword:true}")
+    private Boolean defaultTrueRandomFalsePassword;
+
+    @Value("${user.defaultPassword:abc_123}")
     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")
+    public BaseResponse<String> defaultPassword(){
+        if(defaultTrueRandomFalsePassword){
+            return BaseResponseUtils.buildSuccess(defaultPassword) ;
+        }else{
+            String password = this.sv.getStringRandom(6) ;
+            return BaseResponseUtils.buildSuccess(password) ;
+        }
     }
 
     /**
@@ -60,12 +88,19 @@
                             schema = @Schema(implementation = BaUser.class))}
             )
     })
-    @PostMapping(path = "some", consumes = MediaType.APPLICATION_JSON_VALUE)
-    @SsoAop("-1")
-    public BaseResponse<QueryResultVo<List<BaUser>>> some(@RequestBody @Parameter(description = "鏌ヨform琛ㄥ崟json鏁版嵁", required = true) @Valid QueryVo vo) {
+    @GetMapping(path = "some")
+    //@PostMapping(path = "some", consumes = MediaType.APPLICATION_JSON_VALUE)
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoUserInfo>>> some(QueryVo vo) {
         try {
-            QueryResultVo<List<BaUser>> res = this.sv.selectSome(vo);
-            return BaseResponseUtils.buildSuccess(res);
+            QueryResultVo<List<VoUserInfo>> res = this.sv.selectSome(vo);
+//            if(res.itemTotal == 0) {
+//                return BaseResponseUtils.buildSuccess(SystemResultCode.THE_USER_NOT_EXIST.getMessage());
+//            }else {
+                return BaseResponseUtils.buildSuccess(res);
+//            }
+
+
         } catch (Exception e) {
             log.error("鏌ヨ鐢ㄦ埛寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage());
@@ -86,9 +121,10 @@
                             schema = @Schema(implementation = BaUser.class))}
             )
     })
-    @GetMapping(path = "one", consumes = MediaType.TEXT_PLAIN_VALUE)
-    @SsoAop("-1")
-    public BaseResponse<BaUser> one(@Parameter(description = "瀹炰綋id", required = true) String id) {
+    //@GetMapping(path = "one", consumes = MediaType.TEXT_PLAIN_VALUE)
+    @GetMapping(path = "one")
+    @SsoAop()
+    public BaseResponse<BaUser> one(String id) {
         return BaseResponseUtils.buildSuccess(this.sv.selectById(Long.parseLong(id)));
     }
 
@@ -108,15 +144,15 @@
             )
     })
     @PostMapping(path = "save", consumes = MediaType.APPLICATION_JSON_VALUE)
-    @SsoAop("-1")//@SsoAop(power = "-1")
-    public BaseResponse<Boolean> save(@RequestBody @Parameter(description = "form琛ㄥ崟json鏁版嵁", required = true) @Valid BaUser po, @Parameter(hidden = true) BindingResult bindingResult) {
+    @SsoAop()
+    public BaseResponse<Boolean> save(@RequestBody @Valid BaUser po, BindingResult bindingResult) {
         if (bindingResult != null && bindingResult.hasErrors()) {
             return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
         }
         po.id = null;
-        int count;
-        int count1;
+        Long userId;
         try {
+            po.supperAdmin = Constant.no.byteValue() ;
             po.disabled = Disabled.NO;//榛樿涓嶇鐢�
             po.deleted = Deleted.NO;//榛樿涓嶅垹闄�
             po.orgTag = DataSourceContext.get();//鏈烘瀯鏍囩
@@ -129,13 +165,13 @@
             } else {
                 po.password = MD5.encrypt(defaultPassword);
             }
-            count = this.sv.save(po);
-            count1 = this.sv.setRoles(String.valueOf(po.id), po.roleIds);
+            userId = this.sv.save(po);
+            this.sv.setRoles(userId, po.roleIds);
         } catch (Exception e) {
             log.error("淇濆瓨鐢ㄦ埛寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage());
         }
-        if (count <= 0 || count1 <= 0) {
+        if (userId <= 0) {
             return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�");
         } else {
             return BaseResponseUtils.buildSuccess(true);
@@ -158,8 +194,8 @@
             )
     })
     @PostMapping(path = "update", consumes = MediaType.APPLICATION_JSON_VALUE)
-    @SsoAop("-1")//@SsoAop(power = "-1")
-    public BaseResponse<Boolean> update(@RequestBody @Parameter(description = "form琛ㄥ崟json鏁版嵁", required = true) @Valid BaUser po, @Parameter(hidden = true) BindingResult bindingResult) {
+    @SsoAop()
+    public BaseResponse<Boolean> update(@RequestBody @Valid BaUser po, BindingResult bindingResult) {
         if (bindingResult != null && bindingResult.hasErrors()) {
             return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
         }
@@ -168,9 +204,13 @@
         }
         int count;
         try {
+            po.supperAdmin = null;//璁剧疆涓簄ull锛屼笉鍋氭洿鏂�
             po.deleted = null;//璁剧疆涓簄ull锛屼笉鍋氭洿鏂�
             po.orgTag = null;//璁剧疆涓簄ull锛屼笉鍋氭洿鏂�
+//            淇敼鐢ㄦ埛淇℃伅涓嶈繘琛屽瘑鐮佷慨鏀�
+//            po.password =  MD5.encrypt(po.password);//杩涜鍔犲瘑
             count = this.sv.update(po);
+            this.sv.setRoles(po.id, po.roleIds);
         } catch (Exception e) {
             log.error("淇濆瓨鐢ㄦ埛寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage());
@@ -198,11 +238,10 @@
                             schema = @Schema(implementation = Boolean.class))}
             )
     })
-    @GetMapping(path = "changePassword", consumes = MediaType.TEXT_PLAIN_VALUE)
-    @SsoAop("-1")//@SsoAop(power = "-1")
-    public BaseResponse<Boolean> changePassword(@Parameter(description = "瀹炰綋id", required = true) String id,
-                                                @Parameter(description = "鏃у瘑鐮�", required = true) String oldPassword,
-                                                @Parameter(description = "鏂板瘑鐮�", required = true) String newPassword) throws Exception {
+    //@GetMapping(path = "changePassword", consumes = MediaType.TEXT_PLAIN_VALUE)
+    @GetMapping(path = "changePassword")
+    @SsoAop()
+    public BaseResponse<Boolean> changePassword(String id, String oldPassword, String newPassword) throws Exception {
         if (id == null) {
             return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖");
         }
@@ -245,12 +284,11 @@
     }
 
     /**
-     * 閲嶇疆瀵嗙爜涓洪粯璁ゅ��
-     *
-     * @param id 鐢ㄦ埛ID
+     * 閲嶇疆瀵嗙爜
+     * @param
      * @return 鏄惁鎴愬姛
      */
-    @Operation(summary = "閲嶇疆瀵嗙爜", description = "鎻愪氦鐢ㄦ埛ID")
+    @Operation(summary = "閲嶇疆瀵嗙爜", description = "鎻愪氦鏁版嵁锛坒orm琛ㄥ崟json鏁版嵁锛夛紝杩涜瀵嗙爜閲嶇疆")
     @ApiResponses(value = {
             @ApiResponse(
                     responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
@@ -259,9 +297,51 @@
                             schema = @Schema(implementation = Boolean.class))}
             )
     })
-    @GetMapping(path = "resetPassword", consumes = MediaType.TEXT_PLAIN_VALUE)
-    @SsoAop("-1")//@SsoAop(power = "-1")
-    public BaseResponse<Boolean> resetPassword(@Parameter(description = "瀹炰綋id", required = true) String id) throws Exception {
+    @PostMapping(path = "resetPassword", consumes = MediaType.APPLICATION_JSON_VALUE)
+    @SsoAop()
+    public BaseResponse<Boolean> resetPassword(@RequestBody ResetPasswordVo vo) throws Exception {
+        if (vo.id == null || vo.id == "") {
+            return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖");
+        }
+        Long idLg = Long.parseLong(vo.id);
+        int count;
+        try {
+            BaUser po = this.sv.selectById(idLg);
+            if (Objects.isNull(po)) {
+                return BaseResponseUtils.buildFail("鏈緱鍒扮敤鎴凤紝璇锋眰澶辫触");
+            }else {
+                String defaultPassword1 = MD5.encrypt(defaultPassword);//杩涜鍔犲瘑鐮�
+                count = this.sv.changePassword(idLg, defaultPassword1);
+            }
+        } 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()
+    public BaseResponse<Boolean> resetPasswordByDefault(String id) throws Exception {
         if (id == null) {
             return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖");
         }
@@ -285,14 +365,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 +382,9 @@
                             schema = @Schema(implementation = Boolean.class))}
             )
     })
-    @GetMapping(path = "resetPassword1", consumes = MediaType.TEXT_PLAIN_VALUE)
-    @SsoAop("-1")//@SsoAop(power = "-1")
-    public BaseResponse<String> resetPassword1(@Parameter(description = "瀹炰綋id", required = true) String id) throws Exception {
+    @GetMapping(path = "resetPasswordByRandom", consumes = MediaType.TEXT_PLAIN_VALUE)
+    @SsoAop()
+    public BaseResponse<String> resetPasswordByRandom(String id) throws Exception {
         if (id == null) {
             return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖");
         }
@@ -328,14 +409,15 @@
             return BaseResponseUtils.buildSuccess(randomPassword);
         }
     }
+    */
 
-
-    /**
+    /*
+     * 2023-12-05 鍦� save鍜寀pdate鏂规硶涓繘琛屼簡瑙掕壊璁剧疆鍏宠仈锛屾湰鏂规硶搴熷純
      * 璁剧疆鐢ㄦ埛瑙掕壊
      *
      * @param id 鐢ㄦ埛ID
      * @return 鏄惁鎴愬姛
-     */
+
     @Operation(summary = "璁剧疆鐢ㄦ埛瑙掕壊", description = "鎻愪氦鐢ㄦ埛ID锛屽強鎵�閫夋嫨鐨勮鑹睮D闆嗗悎锛堟暟缁勶級")
     @ApiResponses(value = {
             @ApiResponse(
@@ -346,8 +428,8 @@
             )
     })
     @GetMapping(path = "setRoles", consumes = MediaType.TEXT_PLAIN_VALUE)
-    @SsoAop("-1")//@SsoAop(power = "-1")
-    public BaseResponse<Boolean> setRoles(@Parameter(description = "瀹炰綋id", required = true) String id,
+    @SsoAop()
+    public BaseResponse<Boolean> setRoles(String id,
                                           @Parameter(description = "瑙掕壊id鏁扮粍") String[] roleIds) {
         Long[] roleId_lg = null;
         if (roleIds != null && roleIds.length > 0) {
@@ -365,7 +447,7 @@
         }
         return BaseResponseUtils.buildSuccess(true);
     }
-
+     */
 
     /**
      * 鍒犻櫎鐢ㄦ埛
@@ -382,9 +464,10 @@
                             schema = @Schema(implementation = Boolean.class))}
             )
     })
-    @GetMapping(path = "delete", consumes = MediaType.TEXT_PLAIN_VALUE)
-    @SsoAop("-1")//@SsoAop(power = "-1")
-    public BaseResponse<Boolean> delete(@Parameter(description = "瀹炰綋id", required = true) String id) {
+    //@GetMapping(path = "delete", consumes = MediaType.TEXT_PLAIN_VALUE)
+    @GetMapping(path = "delete")
+    @SsoAop()
+    public BaseResponse<Boolean> delete(String id) {
         if (id == null) {
             return BaseResponseUtils.buildFail("id涓嶈兘涓虹┖");
         }
@@ -396,9 +479,39 @@
             return BaseResponseUtils.buildException(e.getMessage());
         }
         if (count <= 0) {
-            return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�");
+            return BaseResponseUtils.buildFail(SystemResultCode.USER_NOT_EXIST.getMessage());
         } else {
             return BaseResponseUtils.buildSuccess(true);
         }
     }
+
+    /**
+     * 鏍规嵁鐢ㄦ埛缂栧彿鑾峰彇鐢ㄦ埛淇℃伅
+     * @param userId 鐢ㄦ埛缂栧彿
+     * @return 鐢ㄦ埛淇℃伅鍒楄〃
+     */
+    @Operation(summary = "鑾峰緱鍏ㄩ儴鐢ㄦ埛淇℃伅", description = "杩斿洖鍏ㄩ儴鐢ㄦ埛淇℃伅鏁版嵁")
+    @ApiResponses(value = {
+            @ApiResponse(
+                    responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+                    description = "杩斿洖鍏ㄩ儴鐢ㄦ埛鏁版嵁锛圔aseResponse.content:QueryResultVo[{}]锛�",
+                    content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+                            schema = @Schema(implementation = BaUser.class))}
+            )
+    })
+    @GetMapping("/getUserInfos/{userId}")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<VoUserInfo>> getUserInfos(@PathVariable("userId") Long userId) {
+        try {
+            VoUserInfo res = this.sv.getUserInfos(userId);
+            if(res == null) {
+                return BaseResponseUtils.buildException(SystemResultCode.THE_USER_NOT_EXIST.getMessage());
+            }
+            System.out.println("   :" + res);
+            return BaseResponseUtils.buildSuccess(res);
+        } catch (Exception e) {
+            log.error("鏌ヨ鐢ㄦ埛淇℃伅寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage());
+        }
+    }
 }

--
Gitblit v1.8.0