diff --git a/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java b/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java index 3e1ade70..f6c5a476 100644 --- a/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java +++ b/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java @@ -27,6 +27,7 @@ public class GroupDto { private String ktGroupName; private Byte planStatus; private Byte developStatus; + private List idList; } @Data diff --git a/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java b/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java index de2c95ca..f41a81c0 100644 --- a/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java +++ b/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java @@ -99,12 +99,14 @@ public class KtsGroupServiceImpl implements KtsGroupService { if (CollUtil.isNotEmpty(results)) { for (GroupVO.Result result : results) { List childrenList = result.getChildrenList(); - result.setPlanTotal(childrenList.stream().mapToInt(GroupVO.Result::getPlanTotal).sum()); - result.setPlanIng(childrenList.stream().mapToLong(GroupVO.Result::getPlanIng).sum()); - int i = 1; - for (GroupVO.Result result1 : childrenList) { - result1.setSort(i); - i++; + if (CollUtil.isNotEmpty(childrenList)) { + result.setPlanTotal(childrenList.stream().mapToInt(GroupVO.Result::getPlanTotal).sum()); + result.setPlanIng(childrenList.stream().mapToLong(GroupVO.Result::getPlanIng).sum()); + int i = 1; + for (GroupVO.Result result1 : childrenList) { + result1.setSort(i); + i++; + } } } } @@ -394,10 +396,9 @@ public class KtsGroupServiceImpl implements KtsGroupService { List ktsKtGroupMembers = ktsKtGroupMemberMapper.selectByExample(ktsKtGroupMemberExample); if (CollUtil.isNotEmpty(ktsKtGroupMembers)) { List collect = ktsKtGroupMembers.stream().map(KtsKtGroupMember::getKtGroupId).collect(Collectors.toList()); - KtsKtGroupExample ktsKtGroupExample = new KtsKtGroupExample(); - ktsKtGroupExample.createCriteria().andIdIn(collect).andDelFlagEqualTo((byte) 0); - List ktsKtGroups = ktsKtGroupMapper.selectByExample(ktsKtGroupExample); - return BeanUtil.copyToList(ktsKtGroups, GroupVO.Result.class); + GroupDto.Query query = new GroupDto.Query(); + query.setIdList(collect); + return ktsGroupDao.queryGroupList(query); } return null; diff --git a/research-system/src/main/java/com/research/system/service/impl/OutcomeServiceImpl.java b/research-system/src/main/java/com/research/system/service/impl/OutcomeServiceImpl.java index 4463c48b..06b33c4a 100644 --- a/research-system/src/main/java/com/research/system/service/impl/OutcomeServiceImpl.java +++ b/research-system/src/main/java/com/research/system/service/impl/OutcomeServiceImpl.java @@ -61,6 +61,7 @@ public class OutcomeServiceImpl implements OutcomeService { achAchievement.setId(IdUtil.getSnowflakeNextId()); achAchievement.setCreateBy(SecurityUtils.getUsername()); achAchievement.setCreateTime(new Date()); + achAchievement.setProjOrgId(SecurityUtils.getTenantId()); achAchievement.setDelFlag((byte) 0); achAchievementMapper.insertSelective(achAchievement); }else { diff --git a/research-system/src/main/resources/mapper/dao/KtsGroupDao.xml b/research-system/src/main/resources/mapper/dao/KtsGroupDao.xml index 14781611..9d5ba3df 100644 --- a/research-system/src/main/resources/mapper/dao/KtsGroupDao.xml +++ b/research-system/src/main/resources/mapper/dao/KtsGroupDao.xml @@ -29,6 +29,12 @@ kts_kt_group pg on g.parent_kt_id = pg.id where 1=1 and g.del_flag = 0 + + and g.id in + + #{item} + + and g.proj_org_id = #{dto.projOrgId} diff --git a/research-system/src/main/resources/mapper/dao/OutcomeDao.xml b/research-system/src/main/resources/mapper/dao/OutcomeDao.xml index bb5cf899..cf8dd558 100644 --- a/research-system/src/main/resources/mapper/dao/OutcomeDao.xml +++ b/research-system/src/main/resources/mapper/dao/OutcomeDao.xml @@ -122,6 +122,20 @@ select o.id as orgId, o.org_name as orgName, COUNT(a.id) as num + + , + SUM(CASE WHEN a.category_id_2 = '42' THEN 1 ELSE 0 END) AS num1, + SUM(CASE WHEN a.category_id_2 = '43' THEN 1 ELSE 0 END) AS num2, + SUM(CASE WHEN a.category_id_2 = '44' THEN 1 ELSE 0 END) AS num3, + SUM(CASE WHEN a.category_id_2 = '45' THEN 1 ELSE 0 END) AS num4 + + + , + SUM(CASE WHEN a.category_id_2 = '52' THEN 1 ELSE 0 END) AS num1, + SUM(CASE WHEN a.category_id_2 = '53' THEN 1 ELSE 0 END) AS num2, + SUM(CASE WHEN a.category_id_2 = '54' THEN 1 ELSE 0 END) AS num3, + SUM(CASE WHEN a.category_id_2 = '55' THEN 1 ELSE 0 END) AS num4 + from prj_proj_org o left join ach_achievement a on a.proj_org_id = o.id and a.del_flag = 0 and category_id_1 = #{categoryId}