From 3dff5299206a365ab4b61e9050aeb6b52a733433 Mon Sep 17 00:00:00 2001
From: AprilWind <2100166581@qq.com>
Date: 星期四, 27 六月 2024 17:46:17 +0800
Subject: [PATCH] !556 新增mybatis注释

---
 ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java |  159 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 146 insertions(+), 13 deletions(-)

diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java
index 3889250..a68d96f 100644
--- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java
+++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java
@@ -34,20 +34,38 @@
 
     Log log = LogFactory.getLog(BaseMapperPlus.class);
 
+    /**
+     * 鑾峰彇褰撳墠瀹炰緥瀵硅薄鍏宠仈鐨勬硾鍨嬬被鍨� V 鐨� Class 瀵硅薄
+     *
+     * @return 杩斿洖褰撳墠瀹炰緥瀵硅薄鍏宠仈鐨勬硾鍨嬬被鍨� V 鐨� Class 瀵硅薄
+     */
     default Class<V> currentVoClass() {
         return (Class<V>) GenericTypeUtils.resolveTypeArguments(this.getClass(), BaseMapperPlus.class)[1];
     }
 
+    /**
+     * 鑾峰彇褰撳墠瀹炰緥瀵硅薄鍏宠仈鐨勬硾鍨嬬被鍨� T 鐨� Class 瀵硅薄
+     *
+     * @return 杩斿洖褰撳墠瀹炰緥瀵硅薄鍏宠仈鐨勬硾鍨嬬被鍨� T 鐨� Class 瀵硅薄
+     */
     default Class<T> currentModelClass() {
         return (Class<T>) GenericTypeUtils.resolveTypeArguments(this.getClass(), BaseMapperPlus.class)[0];
     }
 
+    /**
+     * 浣跨敤榛樿鐨勬煡璇㈡潯浠舵煡璇㈠苟杩斿洖缁撴灉鍒楄〃
+     *
+     * @return 杩斿洖鏌ヨ缁撴灉鐨勫垪琛�
+     */
     default List<T> selectList() {
         return this.selectList(new QueryWrapper<>());
     }
 
     /**
-     * 鎵归噺鎻掑叆
+     * 鎵归噺鎻掑叆瀹炰綋瀵硅薄闆嗗悎
+     *
+     * @param entityList 瀹炰綋瀵硅薄闆嗗悎
+     * @return 鎻掑叆鎿嶄綔鏄惁鎴愬姛鐨勫竷灏斿��
      */
     default boolean insertBatch(Collection<T> entityList) {
         Db.saveBatch(entityList);
@@ -56,7 +74,10 @@
     }
 
     /**
-     * 鎵归噺鏇存柊
+     * 鎵归噺鏍规嵁ID鏇存柊瀹炰綋瀵硅薄闆嗗悎
+     *
+     * @param entityList 瀹炰綋瀵硅薄闆嗗悎
+     * @return 鏇存柊鎿嶄綔鏄惁鎴愬姛鐨勫竷灏斿��
      */
     default boolean updateBatchById(Collection<T> entityList) {
         Db.updateBatchById(entityList);
@@ -65,7 +86,10 @@
     }
 
     /**
-     * 鎵归噺鎻掑叆鎴栨洿鏂�
+     * 鎵归噺鎻掑叆鎴栨洿鏂板疄浣撳璞¢泦鍚�
+     *
+     * @param entityList 瀹炰綋瀵硅薄闆嗗悎
+     * @return 鎻掑叆鎴栨洿鏂版搷浣滄槸鍚︽垚鍔熺殑甯冨皵鍊�
      */
     default boolean insertOrUpdateBatch(Collection<T> entityList) {
         Db.saveOrUpdateBatch(entityList);
@@ -74,7 +98,11 @@
     }
 
     /**
-     * 鎵归噺鎻掑叆(鍖呭惈闄愬埗鏉℃暟)
+     * 鎵归噺鎻掑叆瀹炰綋瀵硅薄闆嗗悎骞舵寚瀹氭壒澶勭悊澶у皬
+     *
+     * @param entityList 瀹炰綋瀵硅薄闆嗗悎
+     * @param batchSize  鎵瑰鐞嗗ぇ灏�
+     * @return 鎻掑叆鎿嶄綔鏄惁鎴愬姛鐨勫竷灏斿��
      */
     default boolean insertBatch(Collection<T> entityList, int batchSize) {
         Db.saveBatch(entityList, batchSize);
@@ -83,7 +111,11 @@
     }
 
     /**
-     * 鎵归噺鏇存柊(鍖呭惈闄愬埗鏉℃暟)
+     * 鎵归噺鏍规嵁ID鏇存柊瀹炰綋瀵硅薄闆嗗悎骞舵寚瀹氭壒澶勭悊澶у皬
+     *
+     * @param entityList 瀹炰綋瀵硅薄闆嗗悎
+     * @param batchSize  鎵瑰鐞嗗ぇ灏�
+     * @return 鏇存柊鎿嶄綔鏄惁鎴愬姛鐨勫竷灏斿��
      */
     default boolean updateBatchById(Collection<T> entityList, int batchSize) {
         Db.updateBatchById(entityList, batchSize);
@@ -92,7 +124,11 @@
     }
 
     /**
-     * 鎵归噺鎻掑叆鎴栨洿鏂�(鍖呭惈闄愬埗鏉℃暟)
+     * 鎵归噺鎻掑叆鎴栨洿鏂板疄浣撳璞¢泦鍚堝苟鎸囧畾鎵瑰鐞嗗ぇ灏�
+     *
+     * @param entityList 瀹炰綋瀵硅薄闆嗗悎
+     * @param batchSize  鎵瑰鐞嗗ぇ灏�
+     * @return 鎻掑叆鎴栨洿鏂版搷浣滄槸鍚︽垚鍔熺殑甯冨皵鍊�
      */
     default boolean insertOrUpdateBatch(Collection<T> entityList, int batchSize) {
         Db.saveOrUpdateBatch(entityList, batchSize);
@@ -100,12 +136,23 @@
         return true;
     }
 
+    /**
+     * 鏍规嵁ID鏌ヨ鍗曚釜VO瀵硅薄
+     *
+     * @param id 涓婚敭ID
+     * @return 鏌ヨ鍒扮殑鍗曚釜VO瀵硅薄
+     */
     default V selectVoById(Serializable id) {
         return selectVoById(id, this.currentVoClass());
     }
 
     /**
-     * 鏍规嵁 ID 鏌ヨ
+     * 鏍规嵁ID鏌ヨ鍗曚釜VO瀵硅薄骞跺皢鍏惰浆鎹负鎸囧畾鐨刅O绫�
+     *
+     * @param id      涓婚敭ID
+     * @param voClass 瑕佽浆鎹㈢殑VO绫荤殑Class瀵硅薄
+     * @param <C>     VO绫荤殑绫诲瀷
+     * @return 鏌ヨ鍒扮殑鍗曚釜VO瀵硅薄锛岀粡杩囪浆鎹负鎸囧畾鐨刅O绫诲悗杩斿洖
      */
     default <C> C selectVoById(Serializable id, Class<C> voClass) {
         T obj = this.selectById(id);
@@ -115,12 +162,23 @@
         return MapstructUtils.convert(obj, voClass);
     }
 
+    /**
+     * 鏍规嵁ID闆嗗悎鎵归噺鏌ヨVO瀵硅薄鍒楄〃
+     *
+     * @param idList 涓婚敭ID闆嗗悎
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒楄〃
+     */
     default List<V> selectVoBatchIds(Collection<? extends Serializable> idList) {
         return selectVoBatchIds(idList, this.currentVoClass());
     }
 
     /**
-     * 鏌ヨ锛堟牴鎹甀D 鎵归噺鏌ヨ锛�
+     * 鏍规嵁ID闆嗗悎鎵归噺鏌ヨ瀹炰綋瀵硅薄鍒楄〃锛屽苟灏嗗叾杞崲涓烘寚瀹氱殑VO瀵硅薄鍒楄〃
+     *
+     * @param idList  涓婚敭ID闆嗗悎
+     * @param voClass 瑕佽浆鎹㈢殑VO绫荤殑Class瀵硅薄
+     * @param <C>     VO绫荤殑绫诲瀷
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒楄〃锛岀粡杩囪浆鎹负鎸囧畾鐨刅O绫诲悗杩斿洖
      */
     default <C> List<C> selectVoBatchIds(Collection<? extends Serializable> idList, Class<C> voClass) {
         List<T> list = this.selectBatchIds(idList);
@@ -130,12 +188,23 @@
         return MapstructUtils.convert(list, voClass);
     }
 
+    /**
+     * 鏍规嵁鏌ヨ鏉′欢Map鏌ヨVO瀵硅薄鍒楄〃
+     *
+     * @param map 鏌ヨ鏉′欢Map
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒楄〃
+     */
     default List<V> selectVoByMap(Map<String, Object> map) {
         return selectVoByMap(map, this.currentVoClass());
     }
 
     /**
-     * 鏌ヨ锛堟牴鎹� columnMap 鏉′欢锛�
+     * 鏍规嵁鏌ヨ鏉′欢Map鏌ヨ瀹炰綋瀵硅薄鍒楄〃锛屽苟灏嗗叾杞崲涓烘寚瀹氱殑VO瀵硅薄鍒楄〃
+     *
+     * @param map     鏌ヨ鏉′欢Map
+     * @param voClass 瑕佽浆鎹㈢殑VO绫荤殑Class瀵硅薄
+     * @param <C>     VO绫荤殑绫诲瀷
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒楄〃锛岀粡杩囪浆鎹负鎸囧畾鐨刅O绫诲悗杩斿洖
      */
     default <C> List<C> selectVoByMap(Map<String, Object> map, Class<C> voClass) {
         List<T> list = this.selectByMap(map);
@@ -145,23 +214,47 @@
         return MapstructUtils.convert(list, voClass);
     }
 
+    /**
+     * 鏍规嵁鏉′欢鏌ヨ鍗曚釜VO瀵硅薄
+     *
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @return 鏌ヨ鍒扮殑鍗曚釜VO瀵硅薄
+     */
     default V selectVoOne(Wrapper<T> wrapper) {
         return selectVoOne(wrapper, this.currentVoClass());
     }
 
+    /**
+     * 鏍规嵁鏉′欢鏌ヨ鍗曚釜VO瀵硅薄锛屽苟鏍规嵁闇�瑕佸喅瀹氭槸鍚︽姏鍑哄紓甯�
+     *
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @param throwEx 鏄惁鎶涘嚭寮傚父鐨勬爣蹇�
+     * @return 鏌ヨ鍒扮殑鍗曚釜VO瀵硅薄
+     */
     default V selectVoOne(Wrapper<T> wrapper, boolean throwEx) {
         return selectVoOne(wrapper, this.currentVoClass(), throwEx);
     }
 
     /**
-     * 鏍规嵁 entity 鏉′欢锛屾煡璇竴鏉¤褰�
+     * 鏍规嵁鏉′欢鏌ヨ鍗曚釜VO瀵硅薄锛屽苟鎸囧畾杩斿洖鐨刅O瀵硅薄鐨勭被鍨�
+     *
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @param voClass 杩斿洖鐨刅O瀵硅薄鐨凜lass瀵硅薄
+     * @param <C>     杩斿洖鐨刅O瀵硅薄鐨勭被鍨�
+     * @return 鏌ヨ鍒扮殑鍗曚釜VO瀵硅薄锛岀粡杩囩被鍨嬭浆鎹负鎸囧畾鐨刅O绫诲悗杩斿洖
      */
     default <C> C selectVoOne(Wrapper<T> wrapper, Class<C> voClass) {
         return selectVoOne(wrapper, voClass, true);
     }
 
     /**
-     * 鏍规嵁 entity 鏉′欢锛屾煡璇竴鏉¤褰�
+     * 鏍规嵁鏉′欢鏌ヨ鍗曚釜瀹炰綋瀵硅薄锛屽苟灏嗗叾杞崲涓烘寚瀹氱殑VO瀵硅薄
+     *
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @param voClass 瑕佽浆鎹㈢殑VO绫荤殑Class瀵硅薄
+     * @param throwEx 鏄惁鎶涘嚭寮傚父鐨勬爣蹇�
+     * @param <C>     VO绫荤殑绫诲瀷
+     * @return 鏌ヨ鍒扮殑鍗曚釜VO瀵硅薄锛岀粡杩囪浆鎹负鎸囧畾鐨刅O绫诲悗杩斿洖
      */
     default <C> C selectVoOne(Wrapper<T> wrapper, Class<C> voClass, boolean throwEx) {
         T obj = this.selectOne(wrapper, throwEx);
@@ -171,16 +264,32 @@
         return MapstructUtils.convert(obj, voClass);
     }
 
+    /**
+     * 鏌ヨ鎵�鏈塚O瀵硅薄鍒楄〃
+     *
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒楄〃
+     */
     default List<V> selectVoList() {
         return selectVoList(new QueryWrapper<>(), this.currentVoClass());
     }
 
+    /**
+     * 鏍规嵁鏉′欢鏌ヨVO瀵硅薄鍒楄〃
+     *
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒楄〃
+     */
     default List<V> selectVoList(Wrapper<T> wrapper) {
         return selectVoList(wrapper, this.currentVoClass());
     }
 
     /**
-     * 鏍规嵁 entity 鏉′欢锛屾煡璇㈠叏閮ㄨ褰�
+     * 鏍规嵁鏉′欢鏌ヨ瀹炰綋瀵硅薄鍒楄〃锛屽苟灏嗗叾杞崲涓烘寚瀹氱殑VO瀵硅薄鍒楄〃
+     *
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @param voClass 瑕佽浆鎹㈢殑VO绫荤殑Class瀵硅薄
+     * @param <C>     VO绫荤殑绫诲瀷
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒楄〃锛岀粡杩囪浆鎹负鎸囧畾鐨刅O绫诲悗杩斿洖
      */
     default <C> List<C> selectVoList(Wrapper<T> wrapper, Class<C> voClass) {
         List<T> list = this.selectList(wrapper);
@@ -190,15 +299,31 @@
         return MapstructUtils.convert(list, voClass);
     }
 
+    /**
+     * 鏍规嵁鏉′欢鍒嗛〉鏌ヨVO瀵硅薄鍒楄〃
+     *
+     * @param page    鍒嗛〉淇℃伅
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒嗛〉鍒楄〃
+     */
     default <P extends IPage<V>> P selectVoPage(IPage<T> page, Wrapper<T> wrapper) {
         return selectVoPage(page, wrapper, this.currentVoClass());
     }
 
     /**
-     * 鍒嗛〉鏌ヨVO
+     * 鏍规嵁鏉′欢鍒嗛〉鏌ヨ瀹炰綋瀵硅薄鍒楄〃锛屽苟灏嗗叾杞崲涓烘寚瀹氱殑VO瀵硅薄鍒嗛〉鍒楄〃
+     *
+     * @param page    鍒嗛〉淇℃伅
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @param voClass 瑕佽浆鎹㈢殑VO绫荤殑Class瀵硅薄
+     * @param <C>     VO绫荤殑绫诲瀷
+     * @param <P>     VO瀵硅薄鍒嗛〉鍒楄〃鐨勭被鍨�
+     * @return 鏌ヨ鍒扮殑VO瀵硅薄鍒嗛〉鍒楄〃锛岀粡杩囪浆鎹负鎸囧畾鐨刅O绫诲悗杩斿洖
      */
     default <C, P extends IPage<C>> P selectVoPage(IPage<T> page, Wrapper<T> wrapper, Class<C> voClass) {
+        // 鏍规嵁鏉′欢鍒嗛〉鏌ヨ瀹炰綋瀵硅薄鍒楄〃
         List<T> list = this.selectList(page, wrapper);
+        // 鍒涘缓涓�涓柊鐨刅O瀵硅薄鍒嗛〉鍒楄〃锛屽苟璁剧疆鍒嗛〉淇℃伅
         IPage<C> voPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal());
         if (CollUtil.isEmpty(list)) {
             return (P) voPage;
@@ -207,6 +332,14 @@
         return (P) voPage;
     }
 
+    /**
+     * 鏍规嵁鏉′欢鏌ヨ绗﹀悎鏉′欢鐨勫璞★紝骞跺皢鍏惰浆鎹负鎸囧畾绫诲瀷鐨勫璞″垪琛�
+     *
+     * @param wrapper 鏌ヨ鏉′欢Wrapper
+     * @param mapper  杞崲鍑芥暟锛岀敤浜庡皢鏌ヨ鍒扮殑瀵硅薄杞崲涓烘寚瀹氱被鍨嬬殑瀵硅薄
+     * @param <C>     瑕佽浆鎹㈢殑瀵硅薄鐨勭被鍨�
+     * @return 鏌ヨ鍒扮殑绗﹀悎鏉′欢鐨勫璞″垪琛紝缁忚繃杞崲涓烘寚瀹氱被鍨嬬殑瀵硅薄鍚庤繑鍥�
+     */
     default <C> List<C> selectObjs(Wrapper<T> wrapper, Function<? super Object, C> mapper) {
         return this.selectObjs(wrapper).stream().filter(Objects::nonNull).map(mapper).collect(Collectors.toList());
     }

--
Gitblit v1.9.3