diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java index d7fad187..ffec3f41 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java @@ -197,8 +197,6 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl list) { List originStandardNoList = list.stream().map(ProcessEsAnnualReport::getOriginEnStandardNo).collect(Collectors.toList()); diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/EnterpriseStandardAuthUserService.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/EnterpriseStandardAuthUserService.java index 25b0d3d7..246ea22a 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/EnterpriseStandardAuthUserService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/EnterpriseStandardAuthUserService.java @@ -17,4 +17,6 @@ public interface EnterpriseStandardAuthUserService extends IService> records); + + boolean detailPermissionByUser(String standardNumber, String userId, String user); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java index 4d47dd34..b382635e 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.modules.laws.common.constant.FieldCommon; +import com.jero.modules.laws.common.constant.ResultCommon; import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept; import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthUser; import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthDeptService; @@ -20,6 +21,7 @@ import com.jero.modules.sys.utils.UserUtils; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -132,6 +134,55 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(LawsEnterpriseStandard::getStandardNumber, standardNumber); + LawsEnterpriseStandard es = enterpriseStandardService.getOne(lambdaQueryWrapper); + standardId = es.getId(); + } + // 判断企标是不是公开的 + LawsEnterpriseStandard es = enterpriseStandardService.getById(standardId); + String gradeClassification = es.getGradeClassification(); + if (gradeClassification.equals("1")) { + return true; + } else { + // 企标级别授权的部门 + List standardLevelList = standardLevelService.list(); + List levelDeptIds = standardLevelList.stream().map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList()); + if (levelDeptIds.contains(deptId)) { + return true; + } + } + + // 查询临时授权人员 + Date date = new Date(); + LambdaQueryWrapper authUserWrapper = new LambdaQueryWrapper<>(); + authUserWrapper.eq(EnterpriseStandardAuthUser::getStandardId, standardId); + authUserWrapper.eq(EnterpriseStandardAuthUser::getAuthUser, userId); + authUserWrapper.ge(EnterpriseStandardAuthUser::getAuthExpireDate, date); + List authUserList = list(authUserWrapper); + if (authUserList.size() > 0) { + return true; + } + // 查询授权部门-和临时授权部门 + LambdaQueryWrapper authDeptWrapper = new LambdaQueryWrapper<>(); + authDeptWrapper.eq(EnterpriseStandardAuthDept::getStandardId, standardId); + authDeptWrapper.eq(EnterpriseStandardAuthDept::getAuthDept, deptId); + authDeptWrapper.ge(EnterpriseStandardAuthDept::getAuthExpireDate, date); + List authDeptList = authDeptService.list(authDeptWrapper); + if (authDeptList.size() > 0) { + return true; + } + return false; + } } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsEnterpriseController.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsEnterpriseController.java index 24ef3ee0..254731c4 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsEnterpriseController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsEnterpriseController.java @@ -20,6 +20,7 @@ import com.jero.modules.laws.standard.service.ILawsNodeRelationService; import com.jero.modules.laws.standard.service.ILawsUpdateRecordService; import com.jero.modules.personal.service.ILawsStandardCollectionService; import com.jero.modules.personal.service.ILawsStandardSharingService; +import com.jero.modules.sys.utils.UserUtils; import com.jero.modules.tag.entity.LawsTag; import com.jero.modules.tag.enums.TableNameEnum; import io.swagger.annotations.Api; @@ -258,4 +259,17 @@ public class LawsEnterpriseController { Map> resultMap = esReviewMeetingService.evaluateDetailForESInfo(standardId); return Result.OK(resultMap); } + + /** + * 企标详情-获取是否有查看详情权限 + * + * @return + */ + @AutoLog(value = "企业法规标准-获取是否有查看详情权限") + @ApiOperation(value = "企业法规标准-获取是否有查看详情权限", notes = "企业法规标准-获取是否有查看详情权限") + @GetMapping(value = "/detailPermission") + public Result detailPermission(@RequestParam(name="id", required = false) String id, + @RequestParam(name="standardNumber", required = false) String standardNumber) { + return Result.OK(esAuthUserService.detailPermissionByUser(id, standardNumber, UserUtils.getUserId())); + } }