wanggaokun преди 11 месеца
родител
ревизия
cd819da283

+ 5 - 1
eco-modules/generator/src/main/resources/vm/java/controller.java.vm

@@ -2,6 +2,7 @@ package ${packageName}.controller;
 
 import lombok.RequiredArgsConstructor;
 import jakarta.servlet.http.HttpServletResponse;
+import cn.hutool.core.collection.CollUtil;
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
@@ -63,9 +64,12 @@ public class ${ClassName}Controller extends BaseController {
     @SaCheckPermission("${permissionPrefix}:export")
     @Log(title = "${functionName}", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
-    public CommonResult<Void> export(HttpServletResponse response, ${ClassName}Bo ${className}Bo) {
+    public CommonResult<Void> export(${ClassName}Bo ${className}Bo) {
         LoginUser loginUser = LoginHelper.getLoginUser();
         List<${ClassName}Vo> list = ${className}Service.selectList(${className}Bo);
+        if (CollUtil.isEmpty(list)) {
+            return CommonResult.fail("导出列表为空");
+        }
             ${className}Service.asyncExport(list, "${functionName}", loginUser);
         return CommonResult.success();
     }

+ 2 - 13
eco-modules/generator/src/main/resources/vm/java/serviceImpl.java.vm

@@ -263,8 +263,7 @@ public class ${ClassName}ServiceImpl extends BaseServiceImpl<${ClassName}Mapper,
         } catch (IOException e) {
             throw new RuntimeException(e);
         }
-        ImportExportBo bo = getImportExportBo(result, loginUser, "0");
-        boolean flag = importExportService.insert(bo);
+        boolean flag = importExportService.saveInfo(result, loginUser, "0");
         if (flag) {
             log.info("异步导入日志写入成功");
         }
@@ -273,22 +272,12 @@ public class ${ClassName}ServiceImpl extends BaseServiceImpl<${ClassName}Mapper,
     @Override
     public void asyncExport(List<${ClassName}Vo> listVo, String sheetName, LoginUser loginUser) {
         ExcelResultRes result = excelService.exportExcel(listVo, sheetName, ${ClassName}Vo.class);
-        ImportExportBo bo = getImportExportBo(result, loginUser, "1");
-        boolean flag = importExportService.insert(bo);
+        boolean flag = importExportService.saveInfo(result, loginUser, "1");
         if (flag) {
             log.info("异步导出日志写入成功");
         }
     }
 
-    private static ImportExportBo getImportExportBo(ExcelResultRes result, LoginUser loginUser, String type) {
-        ImportExportBo bo = new ImportExportBo();
-        BeanUtils.copyProperties(result, bo);
-        bo.setUpdateBy(loginUser.getUserId());
-        bo.setCreateBy(loginUser.getUserId());
-        bo.setType(type);
-        return bo;
-    }
-
     /**
      * 批量删除${functionName}
      *

+ 3 - 2
eco-modules/system/src/main/java/org/eco/system/service/IImportExportService.java

@@ -1,5 +1,6 @@
 package org.eco.system.service;
 
+import org.eco.common.core.core.domain.model.LoginUser;
 import org.eco.common.core.core.page.PageResult;
 import org.eco.common.excel.entity.ExcelResultRes;
 import org.eco.common.orm.core.service.IBaseService;
@@ -51,10 +52,10 @@ public interface IImportExportService extends IBaseService<ImportExport> {
     /**
      * 新增导入导出日志
      *
-     * @param resultRes 导入导出日志
+     * @param result 导入导出日志
      * @param type      导入导出类型
      * @return 结果:true 操作成功,false 操作失败
      */
-    boolean saveInfo(ExcelResultRes resultRes, String type);
+    boolean saveInfo(ExcelResultRes result, LoginUser loginUser, String type);
 
 }

+ 9 - 11
eco-modules/system/src/main/java/org/eco/system/service/impl/ImportExportServiceImpl.java

@@ -2,8 +2,10 @@ package org.eco.system.service.impl;
 
 import com.mybatisflex.core.paginate.Page;
 import com.mybatisflex.core.query.QueryWrapper;
+import org.eco.common.core.core.domain.model.LoginUser;
 import org.eco.common.core.core.page.PageResult;
 import org.eco.common.core.utils.MapstructUtils;
+import org.eco.common.core.utils.bean.BeanUtils;
 import org.eco.common.excel.entity.ExcelResultRes;
 import org.eco.common.orm.core.page.PageQuery;
 import org.eco.common.orm.core.service.impl.BaseServiceImpl;
@@ -13,7 +15,6 @@ import org.eco.system.domain.vo.ImportExportVo;
 import org.eco.system.mapper.ImportExportMapper;
 import org.eco.system.service.IImportExportService;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -93,16 +94,13 @@ public class ImportExportServiceImpl extends BaseServiceImpl<ImportExportMapper,
     }
 
     @Override
-    @Transactional
-    public boolean saveInfo(ExcelResultRes resultRes, String type) {
-        ImportExportBo importExportBo = new ImportExportBo();
-        importExportBo.setOssId(resultRes.getOssId());
-        importExportBo.setUrl(resultRes.getUrl());
-        importExportBo.setType(type); // 导入
-        importExportBo.setStatus(resultRes.getStatus());
-        importExportBo.setName(resultRes.getName());
-        importExportBo.setLogInfo(resultRes.getLogInfo());
-        ImportExport importExport = MapstructUtils.convert(importExportBo, ImportExport.class);
+    public boolean saveInfo(ExcelResultRes result, LoginUser loginUser, String type) {
+        ImportExportBo bo = new ImportExportBo();
+        BeanUtils.copyProperties(result, bo);
+        bo.setUpdateBy(loginUser.getUserId());
+        bo.setCreateBy(loginUser.getUserId());
+        bo.setType(type);
+        ImportExport importExport = MapstructUtils.convert(bo, ImportExport.class);
         return this.save(importExport);//使用全局配置的雪花算法主键生成器生成ID值
     }
 

+ 8 - 19
eco-modules/system/src/main/java/org/eco/system/service/impl/SysUserServiceImpl.java

@@ -17,7 +17,6 @@ import org.eco.common.core.service.UserService;
 import org.eco.common.core.utils.MapstructUtils;
 import org.eco.common.core.utils.SpringUtils;
 import org.eco.common.core.utils.StringUtils;
-import org.eco.common.core.utils.bean.BeanUtils;
 import org.eco.common.excel.entity.ExcelResultRes;
 import org.eco.common.excel.service.IExcelService;
 import org.eco.common.orm.core.page.PageQuery;
@@ -26,7 +25,6 @@ import org.eco.common.security.utils.LoginHelper;
 import org.eco.common.tenant.helper.TenantHelper;
 import org.eco.system.domain.SysUser;
 import org.eco.system.domain.SysUserPost;
-import org.eco.system.domain.bo.ImportExportBo;
 import org.eco.system.domain.bo.SysUserBo;
 import org.eco.system.domain.vo.SysPostVo;
 import org.eco.system.domain.vo.SysRoleVo;
@@ -345,11 +343,11 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
      */
     @Override
     public boolean checkUserNameUnique(SysUserBo userBo) {
-        Long userId = ObjectUtil.isNull(userBo.getUserId()) ? -1L : userBo.getUserId();
+        long userId = ObjectUtil.isNull(userBo.getUserId()) ? -1L : userBo.getUserId();
         QueryWrapper queryWrapper = query().where(SYS_USER.USER_NAME.eq(userBo.getUserName()))
             .and(SYS_USER.DEL_FLAG.eq(0));
         SysUser info = this.getOne(queryWrapper);
-        if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue()) {
+        if (StringUtils.isNotNull(info) && info.getUserId() != userId) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
@@ -363,11 +361,11 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
      */
     @Override
     public boolean checkPhoneUnique(SysUserBo user) {
-        Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
+        long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
         QueryWrapper queryWrapper = query().where(SYS_USER.PHONENUMBER.eq(user.getPhonenumber()))
             .and(SYS_USER.DEL_FLAG.eq(0));
         SysUser info = this.getOne(queryWrapper);
-        if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue()) {
+        if (StringUtils.isNotNull(info) && info.getUserId() != userId) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
@@ -454,6 +452,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
     public boolean insertUser(SysUserBo userBo) {
         SysUser user = MapstructUtils.convert(userBo, SysUser.class);
         boolean saved;
+        assert user != null;
         if (ObjectUtil.isNotNull(user.getTenantId())) {
             // 不会覆盖租户
             saved = TenantHelper.ignore(() -> this.save(user));
@@ -650,7 +649,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
 
     @Override
     public String selectNicknameById(Long userId) {
-        SysUserVo sysUser = userMapper.selectOneWithRelationsByQueryAs(query().where(SYS_USER.NICK_NAME.eq(userId)),SysUserVo.class);
+        SysUserVo sysUser = userMapper.selectOneWithRelationsByQueryAs(query().where(SYS_USER.NICK_NAME.eq(userId)), SysUserVo.class);
         return ObjectUtil.isNull(sysUser) ? null : sysUser.getNickName();
     }
 
@@ -687,12 +686,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
         } catch (IOException e) {
             throw new RuntimeException(e);
         }
-        ImportExportBo bo = new ImportExportBo();
-        BeanUtils.copyProperties(result, bo);
-        bo.setUpdateBy(loginUser.getUserId());
-        bo.setCreateBy(loginUser.getUserId());
-        bo.setType("0");
-        boolean flag = importExportService.insert(bo);
+        boolean flag = importExportService.saveInfo(result, loginUser, "0");
         if (flag) {
             log.info("异步导入日志写入成功");
         }
@@ -701,12 +695,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
     @Override
     public void asyncExport(List<SysUserExportVo> listVo, String sheetName, LoginUser loginUser) {
         ExcelResultRes result = excelService.exportExcel(listVo, sheetName, SysUserExportVo.class);
-        ImportExportBo bo = new ImportExportBo();
-        BeanUtils.copyProperties(result, bo);
-        bo.setUpdateBy(loginUser.getUserId());
-        bo.setCreateBy(loginUser.getUserId());
-        bo.setType("1");
-        boolean flag = importExportService.insert(bo);
+        boolean flag = importExportService.saveInfo(result, loginUser, "1");
         if (flag) {
             log.info("异步导出日志写入成功");
         }