|
|
@@ -341,14 +341,17 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
|
|
|
//此处循环所有执行检查的机构
|
|
|
for (SysOrg org : execOrgs) {
|
|
|
- List<SysOrg> checkOrgs = null;
|
|
|
+ List<SysOrg> checkOrgs = new ArrayList<>();
|
|
|
if (ObjectUtil.isEmpty(checkOrg)) {
|
|
|
//如果没有选择具体受检的机构,则根据受检机构类型查询
|
|
|
- if (checkOrgTypes.contains(execOrgType) && checkOrgTypes.size() == 1) {
|
|
|
- //如果检查机构类型与被检机构类型一致,则表示查自己
|
|
|
- checkOrgs = Arrays.asList(org);
|
|
|
- } else {
|
|
|
- checkOrgs = orgService.findByOrgTypesAndParent(new FindOrgTypes(checkOrgTypes, org.getPath()), SecurityConstants.INNER);
|
|
|
+ if (checkOrgTypes.contains(execOrgType)) {
|
|
|
+ checkOrgs.add(org);
|
|
|
+ }
|
|
|
+
|
|
|
+ List<Integer> orgTypes = checkOrgTypes.stream().filter(t -> ObjectUtil.notEqual(t,execOrgType)).collect(Collectors.toList());
|
|
|
+ if(CollectionUtil.isNotEmpty(orgTypes)){
|
|
|
+ List<SysOrg> checkOrgsTmp = orgService.findByOrgTypesAndParent(new FindOrgTypes(orgTypes, org.getPath()), SecurityConstants.INNER);
|
|
|
+ checkOrgs.addAll(checkOrgsTmp);
|
|
|
}
|
|
|
} else {
|
|
|
//选择了具体的受检机构
|