diff --git a/src/main/java/com/tanpu/fund/service/impl/ProductPrivateServiceImpl.java b/src/main/java/com/tanpu/fund/service/impl/ProductPrivateServiceImpl.java index d21fcf8569d1f5a434f0116fa8381e253d116f57..6aa02930586794dabd2a6592c299e598f7224bed 100644 --- a/src/main/java/com/tanpu/fund/service/impl/ProductPrivateServiceImpl.java +++ b/src/main/java/com/tanpu/fund/service/impl/ProductPrivateServiceImpl.java @@ -371,7 +371,7 @@ public class ProductPrivateServiceImpl implements ProductPrivateService, Constan } // å…¶ä»–åŸºé‡‘ä¿¡æ¯ - otherFundInfo(vo, id, page); + otherFundInfo(vo, id, ifaId, page); if (StringUtils.isEmpty(ifaId)) { vo.setIsCheck(0); @@ -394,7 +394,7 @@ public class ProductPrivateServiceImpl implements ProductPrivateService, Constan return personnelInfos.stream().collect(Collectors.toMap(PersonnelInfo::getId, s -> s)); } - private void otherFundInfo(FundCompanyVO vo, String id, Pageable page) { + private void otherFundInfo(FundCompanyVO vo, String id, String ifaId, Pageable page) { FundInfoExample example1 = new FundInfoExample(); example1.createCriteria().andTrustIdEqualTo(id).andDeleteTagEqualTo(ZERO_NUM); @@ -414,6 +414,15 @@ public class ProductPrivateServiceImpl implements ProductPrivateService, Constan List<FundCount> fundCounts = this.fundCountMapper.selectByExample(example2); if (CollectionUtils.isNotEmpty(fundCounts)) { + + Set<String> isCheckSet; + + if (StringUtils.isEmpty(ifaId)) { + isCheckSet = new HashSet<>(0); + } else { + isCheckSet = Sets.newHashSet(diagnose.getFundCollectInfo(ExternalReq.builder().ids(list).ifaId(ifaId).build()).getAttributes()); + } + fundCounts.sort(Comparator.comparing(FundCount::getRetIncep).reversed()); FundCount fundCount = fundCounts.get(0); @@ -437,6 +446,7 @@ public class ProductPrivateServiceImpl implements ProductPrivateService, Constan FundInfoVO vo1 = new FundInfoVO(); String fundId = f.getFundId(); vo1.setFundId(fundId); + vo1.setIsCheck(isCheckSet.contains(fundId) ? 1 : 0); vo1.setBonusTypeName(ProTypeEnums.getName(mapFundInfo.get(fundId).getFundType())); vo1.setBonusType(mapFundInfo.get(fundId).getFundType()); vo1.setRetIncep(multiply100(f.getRetIncep()));