diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDataFileController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDataFileController.java index e1d53ac3..6f78c00f 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDataFileController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDataFileController.java @@ -182,9 +182,18 @@ public class PayWorkingGroupDataFileController extends JeroController queryWrapper = QueryGenerator.initQueryWrapper(payWorkingGroupDataFile, request.getParameterMap()); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupDistributionRecordServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupDistributionRecordServiceImpl.java index 9654aef0..89d44861 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupDistributionRecordServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupDistributionRecordServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; import com.jero.common.exception.JeroBootException; +import com.jero.common.service.RolePermissionService; import com.jero.common.service.SendMessageService; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.PasswordUtil; @@ -75,6 +76,8 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl listPayWorkingGroupDistributionRecord = new ArrayList<>(); if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE1){ + PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(payWorkingGroupDistributionRecord.getProjectId()); + if(Objects.isNull(payWorkingGroup)){ + throw new JeroBootException("工作组不存在!"); + } + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if(!rolePermissionService.getRolePermission("fileMaintenance:distribute") + && !Objects.equals(payWorkingGroup.getPrincipalIdA(),sysUser.getId()) + && !Objects.equals(payWorkingGroup.getPrincipalIdB(),sysUser.getId())){ + throw new JeroBootException("资料不可操作!"); + } setRecord( payWorkingGroupDistributionRecord,s,listPayWorkingGroupDistributionRecord, byId); LambdaQueryWrapper queryPayContactsManagementTemporary = new LambdaQueryWrapper<>(); queryPayContactsManagementTemporary.in(PayContactsManagementTemporary::getId, Arrays.asList(s)); @@ -115,10 +128,6 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl queryPayContactsManagement = new LambdaQueryWrapper<>(); @@ -228,6 +237,16 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl list = new ArrayList<>(); List listPayWorkingGroupDistributionRecord = new ArrayList<>(); if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE1){ + PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(payWorkingGroupDistributionRecord.getProjectId()); + if(Objects.isNull(payWorkingGroup)){ + throw new JeroBootException("工作组不存在!"); + } + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if(!rolePermissionService.getRolePermission("fileMaintenance:distribute") + && !Objects.equals(payWorkingGroup.getPrincipalIdA(),sysUser.getId()) + && !Objects.equals(payWorkingGroup.getPrincipalIdB(),sysUser.getId())){ + throw new JeroBootException("资料不可操作!"); + } listPayWorkingGroupDataFile.forEach(p->{ OSSFile byId = iossFileService.getById(p.getFileId()); if(Objects.isNull(byId)){ @@ -245,10 +264,6 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl