From f0f00e9ba8a755e4317e029d73b69a92ad9f9df1 Mon Sep 17 00:00:00 2001 From: kongzy <kongzy> Date: 星期六, 14 九月 2024 17:02:41 +0800 Subject: [PATCH] update --- exam-system/src/main/java/com/gkhy/exam/system/service/impl/ExResourceServiceImpl.java | 26 ++++++++++++++++++++++++-- 1 files changed, 24 insertions(+), 2 deletions(-) diff --git a/exam-system/src/main/java/com/gkhy/exam/system/service/impl/ExResourceServiceImpl.java b/exam-system/src/main/java/com/gkhy/exam/system/service/impl/ExResourceServiceImpl.java index 452ec96..200e266 100644 --- a/exam-system/src/main/java/com/gkhy/exam/system/service/impl/ExResourceServiceImpl.java +++ b/exam-system/src/main/java/com/gkhy/exam/system/service/impl/ExResourceServiceImpl.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gkhy.exam.common.api.CommonPage; +import com.gkhy.exam.common.config.MinioConfig; import com.gkhy.exam.common.constant.UserConstant; import com.gkhy.exam.common.domain.entity.SysUser; import com.gkhy.exam.common.enums.PrivatizeEnum; @@ -32,6 +33,12 @@ public class ExResourceServiceImpl extends ServiceImpl<ExResourceMapper, ExResource> implements ExResourceService { @Autowired private SysCommonService commonService; + + @Autowired + private MinioConfig minioConfig; + + + @Override public CommonPage selectResourseList(ExResource resource) { SysUser currentUser = SecurityUtils.getLoginUser().getUser(); @@ -40,6 +47,9 @@ } PageUtils.startPage(); List<ExResource> resourceList=baseMapper.selectResourceList(resource); + resourceList.forEach(item -> { + item.setResourcePath(minioConfig.getEndpoint()+minioConfig.getBucketName()+"/"+item.getResourcePath()); + }); return CommonPage.restPage(resourceList); } @@ -49,6 +59,7 @@ if(resource==null){ return resource; } + resource.setResourcePath(minioConfig.getEndpoint()+minioConfig.getBucketName()+"/"+resource.getResourcePath()); if(resource.getPrivatize().equals(PrivatizeEnum.PUBLIC.getCode())){ return resource; } @@ -59,6 +70,7 @@ if(!resource.getCompanyId().equals(currentUser.getCompanyId())){ throw new ApiException("无权限查看其它企业资源"); } + return resource; } @@ -68,6 +80,7 @@ if(resource==null){ return resource; } + resource.setResourcePath(minioConfig.getEndpoint()+minioConfig.getBucketName()+"/"+resource.getResourcePath()); if(resource.getPrivatize().equals(PrivatizeEnum.PUBLIC.getCode())){ return resource; } @@ -126,6 +139,11 @@ if(!checkNameUnique(resource)){ throw new ApiException("资源名称已存在"); } + String resourcePath=resource.getResourcePath(); + if(resourcePath.startsWith(minioConfig.getEndpoint()+minioConfig.getBucketName()+"/")) { + resourcePath = resourcePath.replace(minioConfig.getEndpoint()+minioConfig.getBucketName() + "/", ""); + resource.setResourcePath(resourcePath); + } int row=baseMapper.updateById(resource); if(row<1){ throw new ApiException("更新资源失败"); @@ -141,7 +159,7 @@ if(currentUser.getUserType().equals(UserTypeEnum.STUDENT.getCode())){ throw new ApiException("没有权限操作"); } - if(!currentUser.getCompanyId().equals(resource.getCompanyId())){ + if(resource.getCompanyId()!=null&&!currentUser.getCompanyId().equals(resource.getCompanyId())){ throw new ApiException("没有权限操作其他企业资源"); } } @@ -149,8 +167,12 @@ @Override @Transactional(rollbackFor = RuntimeException.class) public int deleteResourceById(Long resourceId) { - //校验资源是否绑定 checkUserAllowed(baseMapper.selectById(resourceId)); + //校验资源是否绑定 + int count= baseMapper.checkResourceAssign(resourceId); + if(count>0){ + throw new ApiException("资源已跟课时关联,不能删除"); + } ExResource resource=getById(resourceId); int row=baseMapper.deleteById(resourceId); if(row<1){ -- Gitblit v1.9.2