Pārlūkot izejas kodu

fix 修复 !pr292 相关问题 并优化写法

疯狂的狮子li 2 gadi atpakaļ
vecāks
revīzija
2f558094d1

+ 2 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/SysLoginController.java

@@ -7,6 +7,7 @@ import com.ruoyi.common.core.domain.model.LoginBody;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.core.domain.model.SmsLoginBody;
 import com.ruoyi.common.core.utils.MapstructUtils;
+import com.ruoyi.common.core.utils.StreamUtils;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.satoken.utils.LoginHelper;
 import com.ruoyi.common.tenant.helper.TenantHelper;
@@ -123,7 +124,7 @@ public class SysLoginController {
         // 获取域名
         String host = new URL(request.getRequestURL().toString()).getHost();
         // 根据域名进行筛选
-        List<TenantListVo> list = voList.stream().filter(vo -> StringUtils.equals(vo.getDomain(), host)).toList();
+        List<TenantListVo> list = StreamUtils.filter(voList, vo -> StringUtils.equals(vo.getDomain(), host));
         return R.ok(CollUtil.isNotEmpty(list) ? list : voList);
     }
 

+ 2 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/service/SysLoginService.java

@@ -3,6 +3,7 @@ package com.ruoyi.web.service;
 import cn.dev33.satoken.exception.NotLoginException;
 import cn.dev33.satoken.secure.BCrypt;
 import cn.dev33.satoken.stp.StpUtil;
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.common.core.constant.Constants;
@@ -266,7 +267,7 @@ public class SysLoginService {
         loginUser.setMenuPermission(permissionService.getMenuPermission(user.getUserId()));
         loginUser.setRolePermission(permissionService.getRolePermission(user.getUserId()));
         loginUser.setDeptName(ObjectUtil.isNull(user.getDept()) ? "" : user.getDept().getDeptName());
-        List<RoleDTO> roles = MapstructUtils.convert(user.getRoles(), RoleDTO.class);
+        List<RoleDTO> roles = BeanUtil.copyToList(user.getRoles(), RoleDTO.class);
         loginUser.setRoles(roles);
         return loginUser;
     }

+ 1 - 1
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MapstructUtils.java

@@ -69,7 +69,7 @@ public class MapstructUtils {
         if (CollUtil.isEmpty(sourceList)) {
             return CollUtil.newArrayList();
         }
-        return StreamUtils.toList(sourceList, source -> CONVERTER.convert(source, desc));
+        return CONVERTER.convert(sourceList, desc);
     }
 
     /**

+ 1 - 2
ruoyi-modules/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java

@@ -75,8 +75,7 @@ public class TestDemoController extends BaseController {
     @PostMapping(value = "/importData", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
     public R<Void> importData(@RequestPart("file") MultipartFile file) throws Exception {
         ExcelResult<TestDemoImportVo> excelResult = ExcelUtil.importExcel(file.getInputStream(), TestDemoImportVo.class, true);
-        List<TestDemoImportVo> volist = excelResult.getList();
-        List<TestDemo> list = MapstructUtils.convert(volist, TestDemo.class);
+        List<TestDemo> list = MapstructUtils.convert(excelResult.getList(), TestDemo.class);
         testDemoService.saveBatch(list);
         return R.ok(excelResult.getAnalysis());
     }

+ 1 - 1
ruoyi-modules/ruoyi-demo/src/main/java/com/ruoyi/demo/domain/bo/TestDemoBo.java

@@ -20,7 +20,7 @@ import jakarta.validation.constraints.NotNull;
 
 @Data
 @EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = TestDemo.class)
+@AutoMapper(target = TestDemo.class, reverseConvertGenerate = false)
 public class TestDemoBo extends BaseEntity {
 
     /**

+ 1 - 1
ruoyi-modules/ruoyi-demo/src/main/java/com/ruoyi/demo/domain/bo/TestTreeBo.java

@@ -19,7 +19,7 @@ import lombok.EqualsAndHashCode;
 
 @Data
 @EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = TestTree.class)
+@AutoMapper(target = TestTree.class, reverseConvertGenerate = false)
 public class TestTreeBo extends BaseEntity {
 
     /**

+ 2 - 1
ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/bo.java.vm

@@ -1,11 +1,12 @@
 package ${packageName}.domain.bo;
 
+import ${packageName}.domain.${ClassName};
 import com.ruoyi.common.mybatis.core.domain.BaseEntity;
 import com.ruoyi.common.core.validate.AddGroup;
 import com.ruoyi.common.core.validate.EditGroup;
+import io.github.linpeilie.annotations.AutoMapper;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
-import io.github.linpeilie.annotations.AutoMapper;
 import jakarta.validation.constraints.*;
 #foreach ($import in $importList)
 import ${import};

+ 2 - 1
ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm

@@ -3,12 +3,13 @@ package ${packageName}.domain.vo;
 #foreach ($import in $importList)
 import ${import};
 #end
+import ${packageName}.domain.${ClassName};
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.ruoyi.common.excel.annotation.ExcelDictFormat;
 import com.ruoyi.common.excel.convert.ExcelDictConvert;
-import lombok.Data;
 import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
 
 import java.io.Serial;
 import java.io.Serializable;

+ 2 - 2
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/monitor/SysUserOnlineController.java

@@ -3,11 +3,11 @@ package com.ruoyi.system.controller.monitor;
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import cn.dev33.satoken.exception.NotLoginException;
 import cn.dev33.satoken.stp.StpUtil;
+import cn.hutool.core.bean.BeanUtil;
 import com.ruoyi.common.core.constant.CacheConstants;
 import com.ruoyi.common.core.constant.GlobalConstants;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.domain.dto.UserOnlineDTO;
-import com.ruoyi.common.core.utils.MapstructUtils;
 import com.ruoyi.common.core.utils.StreamUtils;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.log.annotation.Log;
@@ -69,7 +69,7 @@ public class SysUserOnlineController extends BaseController {
         }
         Collections.reverse(userOnlineDTOList);
         userOnlineDTOList.removeAll(Collections.singleton(null));
-        List<SysUserOnline> userOnlineList = MapstructUtils.convert(userOnlineDTOList, SysUserOnline.class);
+        List<SysUserOnline> userOnlineList = BeanUtil.copyToList(userOnlineDTOList, SysUserOnline.class);
         return TableDataInfo.build(userOnlineList);
     }
 

+ 1 - 6
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysRoleVo.java

@@ -3,12 +3,10 @@ package com.ruoyi.system.domain.vo;
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.ruoyi.common.core.constant.UserConstants;
-import com.ruoyi.common.core.domain.dto.RoleDTO;
 import com.ruoyi.common.excel.annotation.ExcelDictFormat;
 import com.ruoyi.common.excel.convert.ExcelDictConvert;
 import com.ruoyi.system.domain.SysRole;
 import io.github.linpeilie.annotations.AutoMapper;
-import io.github.linpeilie.annotations.AutoMappers;
 import lombok.Data;
 
 import java.io.Serial;
@@ -22,10 +20,7 @@ import java.util.Date;
  */
 @Data
 @ExcelIgnoreUnannotated
-@AutoMappers({
-    @AutoMapper(target = SysRole.class),
-    @AutoMapper(target = RoleDTO.class)
-})
+@AutoMapper(target = SysRole.class)
 public class SysRoleVo implements Serializable {
 
     @Serial