Przeglądaj źródła

获取下载展示路径的修改

dongxin 1 rok temu
rodzic
commit
917ea36d50

+ 6 - 6
platform/src/main/java/com/jzg/controller/FileUploadController.java

@@ -7,6 +7,7 @@ import com.jzg.commons.entity.po.SysUploadFiles;
 import com.jzg.commons.util.FileUtils;
 import com.jzg.commons.util.idgen.IdGenerate;
 import com.jzg.mapper.SysUploadFilesMapper;
+import com.jzg.util.MinioUtils;
 import io.minio.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -31,16 +32,15 @@ public class FileUploadController extends BaseController {
     @Autowired
     private MinioClient minioClient;
 
+    @Autowired
+    private MinioUtils minioUtils;
+
     @Autowired
     private SysUploadFilesMapper sysUploadFilesMapper;
 
     @Value("${minio.bucket-name}")
     private String bucketName;
 
-    @Value("${minio.download-url}")
-    private String downloadUrl;
-
-
 
     @PostMapping("/upload")
     public HttpResult uploadFile(@RequestParam("file") MultipartFile file) {
@@ -108,7 +108,7 @@ public class FileUploadController extends BaseController {
             sysUploadFiles.setCreateBy(getUserName());
             sysUploadFilesMapper.insert(sysUploadFiles);
         }
-        sysUploadFiles.setDownloadUrl(downloadUrl + fileName);
+        sysUploadFiles.setDownloadUrl(minioUtils.getPresignedObjectUrl(bucketName,fileName));
         return sysUploadFiles;
     }
 
@@ -129,7 +129,7 @@ public class FileUploadController extends BaseController {
         sysUploadFiles.setBucketName(bucketName);
         sysUploadFiles.setEtag(objectWriteResponse.etag());
         sysUploadFiles.setCreateTime(LocalDateTime.now());
-        sysUploadFiles.setDownloadUrl(downloadUrl + objectName);
+        sysUploadFiles.setDownloadUrl(minioUtils.getPresignedObjectUrl(bucketName,objectName));
         sysUploadFilesMapper.insert(sysUploadFiles);
         return sysUploadFiles;
     }

+ 1 - 1
platform/src/main/java/com/jzg/controller/SysSystemController.java

@@ -116,7 +116,7 @@ public class SysSystemController {
      */
     @Log(title = "租户", businessType = BusinessType.DELETE)
     @Operation(summary = "租户删除")
-    @PostMapping("/sysDelete")
+    @DeleteMapping("/sysDelete")
     public HttpResult sysDelete(@RequestBody SysSystemVo sysSystemVo){
         return sysSystemService.sysDelete(sysSystemVo) ? HttpResult.ok("删除租户成功") : HttpResult.error("删除租户失败");
     }

+ 4 - 3
platform/src/main/java/com/jzg/controller/SysUserController.java

@@ -98,12 +98,13 @@ public class SysUserController extends BaseController {
      */
     @Log(title = "平台用户管理", businessType = BusinessType.DELETE)
     @Operation(summary = "批量删除平台用户")
-    @DeleteMapping("/{ids}")
+    @DeleteMapping("/userDelete/{ids}")
     public HttpResult remove(@NotEmpty(message = "主键不能为空")
                              @PathVariable String[] ids) {
         // 校验用户是不是管理员
-
-        return HttpResult.ok(sysUserService.deleteWithValidByIds(List.of(ids)));
+        Boolean userValid = sysUserService.userDeleteValid(List.of(ids));
+        AssertionUtils.isFail(userValid,"管理员不可操作离职!");
+        return HttpResult.ok(sysUserService.deleteByIds(List.of(ids)));
     }
 
     /**

+ 2 - 0
platform/src/main/java/com/jzg/mapper/SysUserJzgInfoMapper.java

@@ -2,6 +2,7 @@ package com.jzg.mapper;
 
 import com.jzg.commons.entity.po.SysUserJzgInfo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
 * @author dongxin
@@ -9,6 +10,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 * @createDate 2025-01-16 14:58:32
 * @Entity generator.domain.SysUserJzgInfo
 */
+@Mapper
 public interface SysUserJzgInfoMapper extends BaseMapper<SysUserJzgInfo> {
 
 }

+ 9 - 1
platform/src/main/java/com/jzg/service/SysUserService.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.jzg.commons.entity.po.SysUser;
 import com.jzg.commons.entity.vo.SysUserVo;
 import com.jzg.commons.entity.vo.UpAndDownVo;
+import jakarta.validation.constraints.NotEmpty;
 
 import java.util.List;
 
@@ -55,7 +56,7 @@ public interface SysUserService extends IService<SysUser> {
      * @param ids
      * @return
      */
-    boolean deleteWithValidByIds(List<String> ids);
+    boolean deleteByIds(List<String> ids);
 
     /**
      * 禁用平台用户
@@ -74,4 +75,11 @@ public interface SysUserService extends IService<SysUser> {
      * @param upAndDownVo
      */
     void upAndDown(UpAndDownVo upAndDownVo);
+
+    /**
+     * 判断用户是否是管理员
+     * @param ids
+     * @return
+     */
+    Boolean userDeleteValid(List<String> ids);
 }

+ 4 - 4
platform/src/main/java/com/jzg/service/impl/SysSystemServiceImpl.java

@@ -50,12 +50,10 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
     private SysDeptMapper sysDeptMapper;
     @Autowired
     private SysUserJzgInfoMapper sysUserJzgInfoMapper;
-    @Value("${minio.bucket-name}")
-    private String bucketName;
     @Autowired
     private MinioUtils minioUtils;
-    @Value("${minio.download-url}")
-    private String downloadUrl;
+    @Value("${minio.bucket-name}")
+    private String bucketName;
 
     @Override
     public boolean updatePerms(SysSystemPermsVo sysSystemPermsVo) {
@@ -207,6 +205,7 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void upAndDown(UpAndDownVo upAndDownVo) {
         if(YesNoEnum.YES.equals(upAndDownVo.getOpType())) {
             upAndDownVo.getIds().forEach(id->{
@@ -236,6 +235,7 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public boolean sysDelete(SysSystemVo sysSystemVo) {
         if(baseMapper.deleteById(sysSystemVo.getId()) > 0){
             return true;

+ 22 - 1
platform/src/main/java/com/jzg/service/impl/SysUserServiceImpl.java

@@ -1,5 +1,6 @@
 package com.jzg.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.convert.Convert;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@@ -17,6 +18,7 @@ import com.jzg.mapper.SysUserMapper;
 import com.jzg.mapper.SysUserRoleMapper;
 import com.jzg.service.SysUserService;
 import com.jzg.commons.util.PasswordUtils;
+import jakarta.validation.constraints.NotEmpty;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -107,6 +109,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void userEdit(SysUserVo sysUserVo) {
         SysUser user = new SysUser();
         BeanUtils.copyProperties(sysUserVo, user);
@@ -133,7 +136,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
     }
 
     @Override
-    public boolean deleteWithValidByIds(List<String> ids) {
+    @Transactional(rollbackFor = Exception.class)
+    public boolean deleteByIds(List<String> ids) {
         // 删除当前用户与角色的关联信息
         LambdaUpdateWrapper<SysUserRole> updateWrapper = new LambdaUpdateWrapper<>();
         updateWrapper.in(SysUserRole::getUserId, ids);
@@ -158,6 +162,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void upAndDown(UpAndDownVo upAndDownVo) {
         if(YesNoEnum.YES.equals(upAndDownVo.getOpType())) {
             upAndDownVo.getIds().forEach(id->{
@@ -169,6 +174,22 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
             });
         }
     }
+
+    @Override
+    public Boolean userDeleteValid(List<String> ids) {
+        if (CollUtil.isNotEmpty(ids)){
+            List<SysUserRole> userRoles = sysUserRoleMapper.selectList(new LambdaQueryWrapper<SysUserRole>()
+                    .in(SysUserRole::getUserId, ids));
+            if(CollUtil.isNotEmpty(userRoles)){
+                for (SysUserRole userRole : userRoles) {
+                    if ("".equals(userRole.getRoleId())){  // 平台管理员id
+                        return false;
+                    }
+                }
+            }
+        }
+        return true;
+    }
 }
 
 

+ 0 - 1
platform/src/main/resources/application.yml

@@ -43,4 +43,3 @@ minio:
   access-key: v7Zb8XhyLcYNcSHlxvyK
   secret-key: 58YibMwpxGKtXcekPL065OM4GonC1hf2tFMjI9EN
   bucket-name: jzg
-  download-url: http://192.168.5.250:9091/api/v1/buckets/jzg/objects/download?prefix=